ELF>@ @8 @(7(7@@@!!pppq q (R (R (R 8588i 8i 8i PP $$Std Ptd$$$VVQtdRtd(R (R (R GNUGNU1ܒ-ahv- I@ @PB48&Hi aФɽRpRCHP a,@a!t` !06@&@,tB%0ElTP# LaD@MFA 4p@2lHhG؁;uL( D( D m\% i0FPP@hT$<14QNa FpP WũL$BVd@H+ a(0 &2B6BD@8"C+UP= x >@0HȨ FĂD@!$" $ ';6ĹmOFdC  $@Y #`<} !`I} C@ b@"@ D@BHPdDvH 21:V`,,P[ X`ZJ!D-P IcJ@d IJKNOPQRTUXZ^_`dfghiklmoqrsuwy{}  !#&)*,-./234679:;<=>@ADFGIJKMPRTVWZ_acehijlmosuvwxyz}~  !%'(*-.0245679:=>ACFJKLMNPRWXZ\]abfhijkmpqsvx{}~    "#%(*+,./1}Ll%Iod1%/ic wS~qOޣZ2("(apDA{ ں9FEoNTN{ӞMAҏʏ{8%+%T%a3F"3vq} L]=ø2JRcY<@=JX|"pG%¬la1ƌVig@>]?H>:,w׃ϐ66k p8TX7ra}q7$z{#ɚN ^t;F[X3{Ct p$Ӫf p=KȮf\#x hCC+ MB aA{ G]w~Sn >߽@Frcch0œEi%`*Ҁ5Y 4 5sn0=`T5nqL|Q$SӪMW]TO|E~ՙu"():#f,Mp8hTGE/;54]gҦߡ¤4ғybmۮ1[MN~C7y4Jq73N/KXƲ|ԟlXNK$NQa9``FM0ZKld΍M1zgxdDgQhcwT_  H\MJSlt2_ϭػ9mzK*H' ]lvhGjMf zr Wyn3{< ȫ*ۥN]0&1\J҄47h'o 1ȸ5b>Lev!`,b*Tvy2HF7_TMEvW?pazkFh;8Fd^[~%5a F;?5F4y0q~8ȍi3lT+uCRϺQ.O𹟮\ OdʽD=~P`RN%s8Nٌ8-}9zs"t?^c;aK^%sD m& RVe{E.Cvs&T3j+دZ>,dl[zaܛܡ.8DަJÿr&Tn95EeU4-x EݕX@#kqH֫}s{?)ҿ!B̄QTrb*S#X^$D8 ~e*6H;lZ8NбwJ y˧>R ;잪oL'ci) L`0v$h}+\Q,0u wq45k Bۉ v@ @H$\57I-KN{tJL5ɦqG,,:݂4dx",IC#r#,b+S >I,g}8ݝPl^195"0PF.:.T 6wRrs!!RcIYi/@Cu@ ũP<>Ґ_LS)0&mLϳeK%>u+=څ飠`ujW]H^r|QGt_=p3QnΚl>7wRFt4yF+ꕱnKeQy]s# e1glNu GVu#h`39[\hak4t!F,,i; ]qgzvIP-HFJK;ԗVA4)6Ciqbssc 1q!8d axmGv)`Lc):.Fcj7c'C4=$d:5KCC/5Y$U41jbu?}0;,:#"jX6MW<`LI^:&Ia kr# r{yv=uC6z#_:3b{32aK\nVcku3vEocSr)5F-sl;XKF 7v]_tm5c`VK+6iBwlzlbv,MheEE5jC!8h[HHz]gL)x]wgNvOI7Edv^F*hi4*^UT|\J{I?J2NgiJ1{kR)-QHzM_9OFG6 [ N ZwY,%VM{C9vyW\E84RevH~Mq0}s4MrϊnCS"ͫYCvZ*e|>_C )ӚrIM|MM|l;k@lJXh%dT"v5Ô:/2fM  NQL-C-+\3?|EJ `#L8#&4 5zuVS" 5ret29wz}Hg&|PwhAq;CQˤ"w$+V], DGwrls^P9(]`[I t'V%21%M xΞ0G5er #HgPF FU]KKu4qc,~F"`2@S3P.a"1${J@j@jgCkc#Grb1^JE2'+vM!?;7E0{4CC]XOfx=Np)jlJ'5`bI,!|Wzc(kZLeˋ%3-jM.I`rS#hDJCCSkЃ 3Zu2ui#PN2W:. | bH)7yl3hJ1#d]4v$=^r7Dur-X~qppAu,h(@K&YF 0 p&J<9  x1u0jR=:DnW\B,i*`h)ި qTA*_07)q@4 U " $mx@9]4'= (h P8 R@: Ц,s L`$OrR<|r> imPA 4ٴ) 0spL"`6`$}ЕD0Ww@0Rtp&%@r % m}qi0,<@%hM+ Gh A0"(c *Db*0fAu0v`pD? ۻ //9c` jVLVi@8 lН%tX 8P5-mUN/UY6p%Lp+ owп[:o(f 8I 0G0h !kYP iF1hP :)1S=+܀ ( `1ZGX@ 7.pxw>b'N3 fT?y` 0 w.mr @re aJx79KJ ` D&N3ChEfXs~~|`a X . n `%@,JP  DM0-& lP j#@%!p)WAvP%lPA`(-VNTmEQRY ȘЉ XS=+wp-?0[KK*3 kw (>}ol*f[]V`_WZ`U0f pVP 7&sY2Psc0V,izAP 0XC+Px;e0@ kp 0A eL@h pI6@'8 P b;td߅Y/`9 /@i 0Hͷ@u 0 %p%PtC,0l X `x? pF P>О kN\0]RMp, к%[P20nХ"448 gpoB@+` v@ lTA*8@/NP4kbY  ^ EpPx?PUhn=f@7 p-ki ? `%lpxw G 7:0K h+h'^n0MT[P"@;pe 0`a K@%~  q0`2%իg\vxptH BL!.;f 72~{n0I   %HP8U@JFO06c &u"~0%0MO6 O 6<N`.hI@  > Ei bwO+h)pYx8Uʏg , i*@xI i wm" =*J` lrVNa4)$oO*-X pQBR:HpAc` - eH`tlg@? =5L*ф@+PXxJf- PP+O06F{mGа8;< P0s _n @ rp1Phh   up gs0PH`?tO bZ`A|N 6Peo 0_l-@l{}k1/@$lP v T ?2M+rp|I`fP8t@Ж `zK kS>M=DзMp ^m'h ,L-dy0I"ϲ1(?fi03 g ]P.To@P| vϜ duPH C8!8 8bjqdmM  %p~. kp;I@ I 8qp ^YsvhKC`@`I#v(* Pe(  +0=*S?0SxA:p Bv0lPr@![= @H ?UCu @Q  CyF|[.r ` 0Hoвl0_  y@BP ~L0lPx=p8 S@=[~o0Q*=T`?y 0mP   :FR@c80 Dh ! Y ,aO6)УZQ9 t~mPG +uP&`>8} pH  0M+ ` q`NH Q8.t$-w 0age 8i1Elbn{P 'Q9N@4 Ь  $@ 0#KP@@ZVj8pH!8 %MPh B`MCp}prT~p|`e9*0}-txp>,z G nCEM+ pmPR<|( @U@K_~\(`@8v ktN22& Т3 mo|F p#PVj0 pmP`1K2'@c9 @| &{uilPh D`Iq@'rol0,N..L ]Х<^%_PuN5Nq~}S /P%=rGPxi0(H1pK^Np+nQ8 =\n `\`T!mp' 8-Z6 ,P7  0+K\`1%f@V"` 0L0#,X  D 0,h($M+ `V *ypHNP Վ`f L`*#{( dw - t8TnR=:uPH aIP O7 Apv gCн91P8 Pj pqa >f`8P mP__gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize_ZSt21ios_base_library_initv_ZdlPvm_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm__stack_chk_fail_ZN4llvm17PreservedAnalyses14AllAnalysesKeyE_ZNK4llvm19SmallPtrSetImplBase13FindBucketForEPKv_ZN4llvm19SmallPtrSetImplBase14insert_imp_bigEPKv_ZN4llvm19SmallPtrSetImplBase8MoveFromEjOS0___assert_fail_ZN4llvm19RTDyldMemoryManager25getSymbolAddressInProcessERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4llvm17deallocate_bufferEPvmm__gxx_personality_v0_ZN4llvm20SectionMemoryManagerD2Ev_ZdaPv_ZN4llvm10PGOOptionsD1Evmemcmp_Znwm_ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_strlenmemcpy_ZSt19__throw_logic_errorPKc_ZN4ebpf4Path5DELIMB5cxx11E_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm_ZSt20__throw_length_errorPKc__gcc_personality_v0_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv_Unwind_Resume_ZN5clang23ConstructionContextItem15getKindAsStringENS0_8ItemKindE_ZN4llvm25llvm_unreachable_internalEPKcS1_j_ZNK5clang23ConstructionContextItem15getKindAsStringEv_ZN4ebpf9BPFModule15free_bcc_memoryEv_ZNK4ebpf9BPFModule13num_functionsEvbpf_num_functions_ZNK4ebpf9BPFModule7licenseEvbpf_module_license_ZNK4ebpf9BPFModule12kern_versionEvbpf_module_kern_version_ZNK4ebpf9BPFModule10num_tablesEvbpf_num_tables_ZNK4ebpf9BPFModule17perf_event_fieldsEPKcbpf_perf_event_fields_ZNK4ebpf9BPFModule16perf_event_fieldEPKcmbpf_perf_event_field_ZNK4ebpf9BPFModule8table_idERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_id_ZNK4ebpf9BPFModule8table_fdEmbpf_table_fd_id_ZNK4ebpf9BPFModule8table_fdERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_fd_ZNK4ebpf9BPFModule10table_typeEmbpf_table_type_id_ZNK4ebpf9BPFModule10table_typeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_type_ZNK4ebpf9BPFModule17table_max_entriesEmbpf_table_max_entries_id_ZNK4ebpf9BPFModule17table_max_entriesERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_max_entries_ZNK4ebpf9BPFModule11table_flagsEmbpf_table_flags_id_ZNK4ebpf9BPFModule11table_flagsERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_flags_ZNK4ebpf9BPFModule10table_nameEmbpf_table_name_ZNK4ebpf9BPFModule14table_key_descEmbpf_table_key_desc_id_ZNK4ebpf9BPFModule14table_key_descERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_key_desc_ZNK4ebpf9BPFModule15table_leaf_descEmbpf_table_leaf_desc_id_ZNK4ebpf9BPFModule15table_leaf_descERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_leaf_desc_ZNK4ebpf9BPFModule14table_key_sizeEmbpf_table_key_size_id_ZNK4ebpf9BPFModule14table_key_sizeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_key_size_ZNK4ebpf9BPFModule15table_leaf_sizeEmbpf_table_leaf_size_id_ZNK4ebpf9BPFModule15table_leaf_sizeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_table_leaf_size_ZN4ebpf9BPFModule16table_key_printfEmPcmPKvstderr__fprintf_chk_ZSt25__throw_bad_function_callvbpf_table_key_snprintf_ZN4ebpf9BPFModule17table_leaf_printfEmPcmPKvbpf_table_leaf_snprintf_ZN4ebpf9BPFModule15table_key_scanfEmPKcPvbpf_table_key_sscanf_ZN4ebpf9BPFModule16table_leaf_scanfEmPKcPvbpf_table_leaf_sscanf_ZN4ebpf9BPFModule15bcc_func_attachEiiijbpf_prog_attach_ZN4ebpf9BPFModule15bcc_func_detachEiiibpf_prog_detach2_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructEmc_ZN4ebpf9BPFModule7dump_irERN4llvm6ModuleE_ZN4llvm15AnalysisManagerINS_4LoopEJRNS_27LoopStandardAnalysisResultsEEEC1Ev_ZN4llvm15AnalysisManagerINS_8FunctionEJEEC1Ev_ZN4llvm15AnalysisManagerINS_13LazyCallGraph3SCCEJRS1_EEC1Ev_ZN4llvm15AnalysisManagerINS_6ModuleEJEEC1Ev_ZN4llvm21PipelineTuningOptionsC1Ev_ZN4llvm11PassBuilderC1EPNS_13TargetMachineENS_21PipelineTuningOptionsESt8optionalINS_10PGOOptionsEEPNS_28PassInstrumentationCallbacksE_ZN4llvm11PassBuilder22registerModuleAnalysesERNS_15AnalysisManagerINS_6ModuleEJEEE_ZN4llvm11PassBuilder21registerCGSCCAnalysesERNS_15AnalysisManagerINS_13LazyCallGraph3SCCEJRS2_EEE_ZN4llvm11PassBuilder24registerFunctionAnalysesERNS_15AnalysisManagerINS_8FunctionEJEEE_ZN4llvm11PassBuilder20registerLoopAnalysesERNS_15AnalysisManagerINS_4LoopEJRNS_27LoopStandardAnalysisResultsEEEE_ZN4llvm11PassBuilder20crossRegisterProxiesERNS_15AnalysisManagerINS_4LoopEJRNS_27LoopStandardAnalysisResultsEEEERNS1_INS_8FunctionEJEEERNS1_INS_13LazyCallGraph3SCCEJRSA_EEERNS1_INS_6ModuleEJEEE_ZN4llvm17OptimizationLevel2O2E_ZN4llvm11PassBuilder29buildPerModuleDefaultPipelineENS_17OptimizationLevelEb_ZN4llvm4errsEv_ZN4llvm15PrintModulePassC1ERNS_11raw_ostreamERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb_ZN4llvm27PassInstrumentationAnalysis3KeyE_ZN4llvm15AnalysisManagerINS_6ModuleEJEE13getResultImplEPNS_11AnalysisKeyERS1_UseNewDbgInfoFormat_ZN4llvm15AnalysisManagerINS_6ModuleEJEE10invalidateERS1_RKNS_17PreservedAnalysesE_ZN4llvm8Function23convertFromNewDbgValuesEv_ZN4llvm8Function21convertToNewDbgValuesEv_ZN4ebpf9BPFModule16run_pass_managerERN4llvm6ModuleE_ZN4llvm12verifyModuleERKNS_6ModuleEPNS_11raw_ostreamEPb_ZN4llvm17OptimizationLevel2O3E_ZN4llvm4outsEvbpf_module_rw_engine_enabled_ZN4llvm20SectionMemoryManager19allocateDataSectionEmjjNS_9StringRefEb_ZN4llvm6object18computeSymbolSizesERKNS0_10ObjectFileE_ZNK4ebpf9BPFModule14function_startERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_function_start_ZNK4ebpf9BPFModule15function_sourceERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZNK4ebpf9BPFModule25function_source_rewrittenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZNK4ebpf9BPFModule13function_sizeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_function_size_ZN4ebpf9BPFModule23finalize_prog_func_infoEv_ZN4ebpf9BPFModule11create_mapsERSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIiiESt4lessIS7_ESaIS8_IKS7_S9_EEERS1_IiiSA_IiESaIS8_IKiiEEERS1_IS7_iSB_SaIS8_ISC_iEEEb_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_assignERKS4_bpf_map_get_fd_by_id_ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_basebpf_obj_pin_ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base__errno_location__cxa_end_catch__cxa_begin_catch__cxa_rethrow_ZNK4ebpf9BPFModule13function_nameEmbpf_function_name_ZNK4ebpf9BPFModule14function_startEmbpf_function_start_id_ZNK4ebpf9BPFModule13function_sizeEmbpf_function_size_id_ZN4ebpf9BPFModule17annotate_prog_tagERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiP8bpf_insnimkdir__snprintf_chkfwrite_ZN4ebpf9BPFModule13bcc_func_loadEiPKcPK8bpf_insniS2_jiPcjS2_jiif_nametoindexbcc_func_load_ZN4ebpf9BPFModuleC2EjPNS_12TableStorageEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbPKc_ZN4llvm11LLVMContextC1EvLLVMInitializeBPFTargetLLVMInitializeBPFTargetMCLLVMInitializeBPFTargetInfoLLVMInitializeBPFAsmPrinterLLVMInitializeBPFAsmParserLLVMLinkInMCJITLLVMInitializeBPFDisassembler_ZN4llvm11LLVMContextD1Ev_ZN4ebpf9BPFModuleC1EjPNS_12TableStorageEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbPKc_ZN4ebpf9BPFModuleD2Ev_ZN4llvm6ModuleD1Ev_ZN4ebpf9BPFModuleD1Evbpf_module_destroy_ZN4ebpf9BPFModule10load_cfileERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbPPKci_ZN4ebpf9BPFModule13load_includesERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf9BPFModule14annotate_lightEv_ZNK4llvm8Function14hasFnAttributeENS_9Attribute8AttrKindE_ZN4llvm8Function9addFnAttrENS_9Attribute8AttrKindE_ZN4ebpf9BPFModule9load_mapsERSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5tupleIJPhmjEESt4lessIS7_ESaISt4pairIKS7_SA_EEEstrncmp_ZSt24__throw_out_of_range_fmtPKcz_ZN4ebpf9BPFModule8load_btfERSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5tupleIJPhmjEESt4lessIS7_ESaISt4pairIKS7_SA_EEEstrcmp_ZN4ebpf13ExportedFiles8headers_B5cxx11E_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm_ZN4ebpf9BPFModule8finalizeEv_ZN4llvm6Module13setDataLayoutENS_9StringRefE_ZN4llvm13EngineBuilderC1ESt10unique_ptrINS_6ModuleESt14default_deleteIS2_EE_ZN4llvm20SectionMemoryManagerC2EPNS0_12MemoryMapperE_ZN4llvm13EngineBuilder21setMCJITMemoryManagerESt10unique_ptrINS_19RTDyldMemoryManagerESt14default_deleteIS2_EE_ZN4llvm13EngineBuilder12selectTargetEv_ZN4llvm13EngineBuilder6createEPNS_13TargetMachineE_Znam__memcpy_chk_ZN4llvm13EngineBuilderD1Ev_ZN4ebpf9BPFModule6load_cERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPPKcibpf_module_create_c_ZN4ebpf9BPFModule11load_stringERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPPKcibpf_module_create_c_from_string_ZTVN4ebpf24TracepointFrontendActionE_ZN5clang17ASTFrontendAction13ExecuteActionEv_ZN5clang14FrontendAction22shouldEraseOutputFilesEv_ZN5clang14FrontendAction13EndSourceFileEv_ZTVN4ebpf15BFrontendActionE_ZSt19piecewise_construct_ZN4llvm11RuntimeDyld13MemoryManager18allocateTLSSectionEmjjNS_9StringRefE_ZN4llvm19RTDyldMemoryManager16registerEHFramesEPhmm_ZN4llvm19RTDyldMemoryManager18deregisterEHFramesEv_ZN4llvm20SectionMemoryManager14finalizeMemoryEPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4llvm20SectionMemoryManager6anchorEv_ZN4llvm19RTDyldMemoryManager25getPointerToNamedFunctionERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb_ZN4llvm20SectionMemoryManager26invalidateInstructionCacheEv_ZN4llvm23LegacyJITSymbolResolver6lookupERKSt3setINS_9StringRefESt4lessIS2_ESaIS2_EENS_15unique_functionIFvNS_8ExpectedISt3mapIS2_NS_18JITEvaluatedSymbolES4_SaISt4pairIKS2_SC_EEEEEEEE_ZN4llvm23LegacyJITSymbolResolver20getResponsibilitySetERKSt3setINS_9StringRefESt4lessIS2_ESaIS2_EE_ZThn16_N4llvm20SectionMemoryManager6anchorEv_ZNSt17_Function_handlerIFN4ebpf11StatusTupleEPKcPvEPS5_E9_M_invokeERKSt9_Any_dataOS3_OS4__ZNSt17_Function_handlerIFN4ebpf11StatusTupleEPKcPvEPS5_E10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFN4ebpf11StatusTupleEPcmPKvEPS5_E9_M_invokeERKSt9_Any_dataOS2_OmOS4__ZNSt17_Function_handlerIFN4ebpf11StatusTupleEPcmPKvEPS5_E10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZN4llvm3Any6TypeIdIPKNS_6ModuleEE2IdE_ZNSt17_Function_handlerIFvN4llvm5ErrorEEPS2_E9_M_invokeERKSt9_Any_dataOS1__ZNSt17_Function_handlerIFvN4llvm5ErrorEEPS2_E10_M_managerERSt9_Any_dataRKS5_St18_Manager_operation_ZN4llvm17AlwaysInlinerPass3runERNS_6ModuleERNS_15AnalysisManagerIS1_JEEE_ZN4llvm15PrintModulePass3runERNS_6ModuleERNS_15AnalysisManagerIS1_JEEE_ZNK4llvm9StringRef4findES0_m_ZN4llvm11raw_ostream5writeEPKcm_ZN4llvm4Type9getInt1TyERNS_11LLVMContextE_ZN4llvm10VectorType3getEPNS_4TypeENS_12ElementCountE_ZN4llvm7CmpInstC2EPNS_4TypeENS_11Instruction8OtherOpsENS0_9PredicateEPNS_5ValueES7_RKNS_5TwineEPS3_SB_memmove_ZN16btf_ext_vendored13btf_ext__freeEPNS_7btf_extE_ZN16btf_ext_vendored12btf_ext__newEPKhjcallocmalloc_ZN16btf_ext_vendored24btf_ext__reloc_func_infoEPK3btfPKNS_7btf_extEPKcjPPvPj_ZN16btf_ext_vendored24btf_ext__reloc_line_infoEPK3btfPKNS_7btf_extEPKcjPPvPj_ZN4ebpf3BTFC2EbRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5tupleIJPhmjEESt4lessIS7_ESaISt4pairIKS7_SA_EEElibbpf_set_print_ZN4ebpf3BTFC1EbRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt5tupleIJPhmjEESt4lessIS7_ESaISt4pairIKS7_SA_EEE_ZN4ebpf3BTFD2Evbtf__free_ZN4ebpf3BTFD1Ev_ZN4ebpf3BTF7warningEPKcz__vfprintf_chk_ZN4ebpf3BTF9fixup_btfEPhmPc_ZN4ebpf3BTF6get_fdEvbtf__fd_ZN4ebpf3BTF12get_btf_infoEPKcPPvPjS5_S4_S5_S5__ZN4ebpf3BTF12get_map_tidsENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEjjPjS7_btf__find_by_name_kindbtf__type_by_idbtf__name_by_offsetbtf__resolve_size_ZN4ebpf14BTFStringTable9addStringENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BTF6adjustEPhmS1_mRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_St4lessIS8_ESaISt4pairIKS8_S8_EEEPS1_Pm__strcpy_chk_ZN4ebpf3BTF4loadEPhmS1_mRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_St4lessIS8_ESaISt4pairIKS8_S8_EEEbtf__newbtf__load_into_kernel_ZN4ebpf14SourceDebugger14adjustInstSizeERmhh_ZN4ebpf14SourceDebugger14buildLineCacheB5cxx11Ev_ZN4ebpf14SourceDebugger11dumpSrcLineERKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS7_EERKS7_jRjRN4llvm11raw_ostreamE_ZNK4llvm9StringRef17find_first_not_ofES0_m_ZN4llvm11raw_ostreamlsERKNS_18format_object_baseE_ZN4ebpf14SourceDebugger16getDebugSectionsERN4llvm9StringMapISt10unique_ptrINS1_12MemoryBufferESt14default_deleteIS4_EENS1_15MallocAllocatorEEE_ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base_ZN4llvm12MemoryBuffer16getMemBufferCopyENS_9StringRefERKNS_5TwineE_ZN4llvm13StringMapImpl15LookupBucketForENS_9StringRefE_ZN4llvm15allocate_bufferEmm_ZN4llvm13StringMapImpl11RehashTableEj_ZTVN4llvm18raw_string_ostreamE_ZN4llvm11raw_ostream16SetBufferAndModeEPcmNS0_10BufferKindE_ZN4llvm9dumpBytesENS_8ArrayRefIhEERNS_11raw_ostreamE_ZN4llvm5nullsEv_ZN4llvm9DWARFUnit17getCompilationDirEv_ZNK4llvm14DWARFDebugLine9LineTable25getFileLineInfoForAddressENS_6object16SectionedAddressEPKcNS_19DILineInfoSpecifier16FileLineInfoKindERNS_10DILineInfoE_ZN4llvm11raw_ostream5writeEh_ZN4llvm11raw_ostream14flush_nonemptyEv_ZN4llvm11raw_ostreamD2Ev_ZN4ebpf28bpf_module_rw_engine_enabledEv_ZN4ebpf9BPFModule20initialize_rw_engineEvLLVMInitializeX86TargetInfoLLVMInitializeX86TargetLLVMInitializeX86TargetMCLLVMInitializeX86AsmPrinter_ZN4ebpf9BPFModule17cleanup_rw_engineEv_ZNK4llvm10BasicBlock9getModuleEv_ZNK4llvm10DataLayout15getABITypeAlignEPNS_4TypeE_ZN4llvm4UsernwEmj_ZN4llvm8LoadInstC1EPNS_4TypeEPNS_5ValueERKNS_5TwineEbNS_5AlignEPNS_11InstructionE_ZN4llvm11Instruction11setMetadataEjPNS_6MDNodeE_ZN4llvm4UserdlEPv_ZN4llvm17GetElementPtrInst13setIsInBoundsEb_ZNK4llvm6Module11getFunctionENS_9StringRefE_ZN4llvm4Type10getInt32TyERNS_11LLVMContextE_ZN4llvm11ConstantInt3getEPNS_11IntegerTypeEmb_ZN4llvm9StoreInstC1EPNS_5ValueES2_bNS_5AlignEPNS_11InstructionE_ZN4llvm13IRBuilderBase18CreateGlobalStringENS_9StringRefERKNS_5TwineEjPNS_6ModuleE_ZN4llvm4Type10getInt64TyERNS_11LLVMContextE_ZN4llvm10BasicBlockC1ERNS_11LLVMContextERKNS_5TwineEPNS_8FunctionEPS0__ZN4llvm10BranchInstC1EPNS_10BasicBlockES2_PNS_5ValueEPNS_11InstructionE_ZN4llvm10ReturnInstC1ERNS_11LLVMContextEPNS_5ValueEPNS_11InstructionE_ZN4llvm4Type9getInt8TyERNS_11LLVMContextE_ZSt20__throw_out_of_rangePKc_ZN4ebpf14SourceDebugger4dumpEv_ZN4llvm6TripleC1ERKNS_5TwineE_ZN4llvm14TargetRegistry12lookupTargetENS_9StringRefERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4llvm15MCTargetOptionsC1Ev_ZTVN4llvm16MCObjectFileInfoE_ZN4llvm9MCContextC1ERKNS_6TripleEPKNS_9MCAsmInfoEPKNS_14MCRegisterInfoEPKNS_15MCSubtargetInfoEPKNS_9SourceMgrEPKNS_15MCTargetOptionsEbNS_9StringRefE_ZN4llvm16MCObjectFileInfo20initMCObjectFileInfoERNS_9MCContextEbb_ZN4llvm9WithColor21defaultWarningHandlerENS_5ErrorE_ZN4llvm9WithColor19defaultErrorHandlerENS_5ErrorE_ZN4llvm12DWARFContext6createERKNS_9StringMapISt10unique_ptrINS_12MemoryBufferESt14default_deleteIS3_EENS_15MallocAllocatorEEEhbSt8functionIFvNS_5ErrorEEESE_b_ZN4llvm12DWARFContext19getLineTableForUnitEPNS_9DWARFUnitE_ZN4llvm9MCContextD1Ev_ZN4llvm16MCObjectFileInfoD1Ev_ZN4llvm18format_object_base4homeEv_ZNK4ebpf17BpfFsTableStorage4FindERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERNS_12TableStorage8iteratorE_ZN4ebpf17BpfFsTableStorage6InsertERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEONS_9TableDescE_ZN4ebpf17BpfFsTableStorage6DeleteERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZNSt17_Function_handlerIFN4ebpf11StatusTupleEPKcPvESt5_BindIFMNS0_9BPFModuleEFS1_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES3_S4_EPS7_SD_St12_PlaceholderILi1EESH_ILi2EEEEE9_M_invokeERKSt9_Any_dataOS3_OS4__ZNSt17_Function_handlerIFN4ebpf11StatusTupleEPcmPKvESt5_BindIFMNS0_9BPFModuleEFS1_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_mS4_EPS7_SD_St12_PlaceholderILi1EESH_ILi2EESH_ILi3EEEEE9_M_invokeERKSt9_Any_dataOS2_OmOS4__ZNSt17_Function_handlerIFN4ebpf11StatusTupleEPKcPvESt5_BindIFMNS0_9BPFModuleEFS1_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES3_S4_EPS7_SD_St12_PlaceholderILi1EESH_ILi2EEEEE10_M_managerERSt9_Any_dataRKSN_St18_Manager_operation_ZNSt17_Function_handlerIFN4ebpf11StatusTupleEPcmPKvESt5_BindIFMNS0_9BPFModuleEFS1_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_mS4_EPS7_SD_St12_PlaceholderILi1EESH_ILi2EESH_ILi3EEEEE10_M_managerERSt9_Any_dataRKSO_St18_Manager_operation_ZN4ebpf18SharedTableStorage3endEv_ZN4ebpf18SharedTableStorage7tables_B5cxx11E_ZN4ebpf18SharedTableStorage5beginEv_ZN4ebpf17BpfFsTableStorage5eraseERKNS_24TableStorageIteratorImplE_ZN4ebpf17BpfFsTableStorage5beginEv_ZN4ebpf17BpfFsTableStorage3endEv_ZN4ebpf17BpfFsTableStorage11lower_boundERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf17BpfFsTableStorage11upper_boundERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf18SharedTableStorage11lower_boundERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf18SharedTableStorage11upper_boundERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbpf_map_createstrstrstrchr__isoc23_strtolbpf_prog_loadioctlsyscallperroraccessfopengetpid__getdelimfclose_ZN4ebpf18SharedTableStorage5eraseERKNS_24TableStorageIteratorImplE_ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS__ZN4ebpf18SharedTableStorage6DeleteERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf9BPFModule6sscanfENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKcPv_ZN4ebpf9BPFModule8snprintfENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPcmPKv_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6assignEPKc_ZN4ebpf9BPFModule11make_readerB5cxx11EPN4llvm6ModuleEPNS1_4TypeE_ZTVN4llvm14ConstantFolderE_ZTVN4llvm24IRBuilderDefaultInserterE_ZN4llvm11PointerType3getERNS_11LLVMContextEj_ZN4llvm12FunctionType3getEPNS_4TypeENS_8ArrayRefIS2_EEb_ZN4llvm11PointerType3getEPNS_4TypeEj_ZN4llvm4UsernwEm_ZN4llvm8FunctionC1EPNS_12FunctionTypeENS_11GlobalValue12LinkageTypesEjRKNS_5TwineEPNS_6ModuleE_ZN4llvm5Value7setNameERKNS_5TwineE_ZNK4llvm8Function18BuildLazyArgumentsEv_ZN4llvm24IRBuilderDefaultInserterD1Ev_ZN4llvm15IRBuilderFolderD2Ev_ZN4ebpf9BPFModule11make_writerB5cxx11EPN4llvm6ModuleEPNS1_4TypeE_ZN4llvm8ZExtInstC1EPNS_5ValueEPNS_4TypeERKNS_5TwineEPNS_11InstructionEbcc_create_map_xattrgetrlimitsetrlimitbcc_create_mapbpf_update_elembpf_map_update_elembpf_lookup_elembpf_map_lookup_elembpf_delete_elembpf_map_delete_elembpf_lookup_and_deletebpf_map_lookup_and_delete_elembpf_lookup_batchbpf_map_lookup_batchbpf_delete_batchbpf_map_delete_batchbpf_update_batchbpf_map_update_batchbpf_lookup_and_delete_batchbpf_map_lookup_and_delete_batchbpf_get_first_keybpf_map_get_next_keymemsetbpf_get_next_keybpf_obj_get_infobpf_obj_get_info_by_fdbpf_prog_compute_tagbindacceptbpf_prog_get_tag__isoc23_sscanffgetsbcc_prog_load_xattrbpf_btf_get_next_idbpf_btf_get_fd_by_idbpf_btf_get_info_by_fdbtf__load_vmlinux_btflibbpf_get_errorbtf__load_module_btflibbpf_find_vmlinux_btf_id__strncpy_chkbcc_prog_loadbpf_open_raw_sockbpf_attach_socketsetsockoptbpf_detach_kprobebpf_detach_uprobebpf_detach_tracepointbpf_attach_raw_tracepointbpf_raw_tracepoint_openbpf_has_kernel_btfbtf__parse_rawkernel_struct_has_fieldbpf_attach_kfuncbpf_attach_lsmbpf_open_perf_eventbpf_attach_xdpbpf_xdp_attachlibbpf_strerrorbpf_attach_perf_event_rawbpf_attach_perf_eventbpf_close_perf_event_fdbpf_attach_kprobebpf_attach_tracepointbpf_new_ringbufring_buffer__newbpf_free_ringbufring_buffer__freebpf_add_ringbufring_buffer__addbpf_poll_ringbufring_buffer__pollbpf_consume_ringbufring_buffer__consumebcc_iter_attachbpf_link_createbcc_iter_createbpf_iter_createbcc_make_parent_dirstrdupdirnamebcc_check_bpffs_pathstatfsperf_reader_newgetpagesizeperf_reader_freemunmapperf_reader_mmapperf_reader_event_readreallocperf_reader_poll__poll_chkperf_reader_consumeperf_reader_set_fdbpf_open_perf_buffer_optsbpf_open_perf_bufferperf_reader_fd_ZN4ebpf12TableStorageC2Ev_ZN4ebpf12TableStorageC1Ev_ZN4ebpf12TableStorageD2Ev_ZN4ebpf12TableStorageD1Ev_ZN4ebpf12TableStorage4InitESt10unique_ptrINS_16TableStorageImplESt14default_deleteIS2_EE_ZNK4ebpf12TableStorage4FindERKNS_4PathERNS0_8iteratorE_ZN4ebpf12TableStorage6InsertERKNS_4PathEONS_9TableDescE_ZN4ebpf12TableStorage6DeleteERKNS_4PathE_ZN4ebpf12TableStorage18AddMapTypesVisitorESt10unique_ptrINS_15MapTypesVisitorESt14default_deleteIS2_EE_ZN4ebpf12TableStorage8iteratorC2Ev_ZN4ebpf12TableStorage8iteratorC1Ev_ZN4ebpf12TableStorage8iteratorC2ESt10unique_ptrINS_24TableStorageIteratorImplESt14default_deleteIS3_EE_ZN4ebpf12TableStorage8iteratorC1ESt10unique_ptrINS_24TableStorageIteratorImplESt14default_deleteIS3_EE_ZN4ebpf12TableStorage5beginEv_ZN4ebpf12TableStorage3endEv_ZN4ebpf12TableStorage11lower_boundERKNS_4PathE_ZN4ebpf12TableStorage11upper_boundERKNS_4PathE_ZN4ebpf12TableStorage8iteratorC2ERKS1__ZN4ebpf12TableStorage8iteratorC1ERKS1__ZN4ebpf12TableStorage8iteratorD2Ev_ZN4ebpf12TableStorage8iteratorD1Ev_ZN4ebpf12TableStorage8iteratoraSEOS1__ZN4ebpf12TableStorage8iteratorC2EOS1__ZN4ebpf12TableStorage8iteratorC1EOS1__ZNK4ebpf18SharedTableStorage4FindERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERNS_12TableStorage8iteratorE_ZN4ebpf12TableStorage8iteratorppEv_ZN4ebpf12TableStorage8iteratorppEi_ZNK4ebpf12TableStorage8iteratoreqERKS1__ZNK4ebpf12TableStorage8iteratorneERKS1__ZN4ebpf12TableStorage12DeletePrefixERKNS_4PathE_ZNK4ebpf12TableStorage8iteratordeB5cxx11Ev_ZNK4ebpf12TableStorage8iteratorptB5cxx11Ev_ZN4ebpf18SharedTableStorage6InsertERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEONS_9TableDescE_ZN4ebpf23createBpfFsTableStorageEv_ZTVN4ebpf17BpfFsTableStorageE_ZN4ebpf9BPFModule11finalize_rwESt10unique_ptrIN4llvm6ModuleESt14default_deleteIS3_EEbpf_attach_uprobe_ZN4ebpf24createSharedTableStorageEv_ZTVN4ebpf18SharedTableStorageE_ZN4ebpf9BPFModule8annotateEv_ZN4llvm6ModuleC1ENS_9StringRefERNS_11LLVMContextE_ZNK4llvm6Module13getNamedValueENS_9StringRefE_ZN4ebpf12TableStorage12VisitMapTypeERNS_9TableDescERN5clang10ASTContextENS3_8QualTypeES6__ZNK5clang4Type27getUnqualifiedDesugaredTypeEv_ZNK5clang4Decl8getAttrsEv_ZN5clang7TypeLoc24getLocalAlignmentForTypeENS_8QualTypeE_ZNK5clang13CXXRecordDecl14DefinitionData16getBasesSlowCaseEv_ZN5clang4Decl19castFromDeclContextEPKNS_11DeclContextE_ZGVZNK5clang24TemplateTemplateParmDecl18getDefaultArgumentEvE7NoneLoc_ZZNK5clang24TemplateTemplateParmDecl18getDefaultArgumentEvE7NoneLoc__cxa_guard_acquire__cxa_guard_release_ZN4ebpf15BMapDeclVisitorC2ERN5clang10ASTContextERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf15BMapDeclVisitorC1ERN5clang10ASTContextERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf15BMapDeclVisitor17shouldSkipPaddingEPKN5clang10RecordDeclE_ZNK5clang10RecordDecl11field_beginEv_ZNK5clang7TagDecl13getDefinitionEv_ZN4ebpf15BMapDeclVisitor14VisitFieldDeclEPN5clang9FieldDeclE_ZN4ebpf15BMapDeclVisitor16VisitPointerTypeEPKN5clang11PointerTypeE_ZN4ebpf15BMapDeclVisitor16VisitBuiltinTypeEPKN5clang11BuiltinTypeE_ZNK5clang11BuiltinType7getNameERKNS_14PrintingPolicyE_ZN4ebpf15BMapDeclVisitor9VisitAttrEPN5clang4AttrE_ZN4ebpf25createJsonMapTypesVisitorEv_ZN4llvm15SmallVectorBaseIjE8grow_podEPvmm_ZN5clang11DeclContext7classofEPKNS_4DeclE_ZN5clang4Decl17castToDeclContextEPKS0__ZNK5clang12CapturedDecl7getBodyEv_ZN4ebpf15BMapDeclVisitor15VisitRecordDeclEPN5clang10RecordDeclE_ZN4ebpf15BMapDeclVisitor18TraverseRecordDeclEPN5clang10RecordDeclE_ZN4ebpf15BMapDeclVisitor15genJSONForFieldEPN5clang9FieldDeclE_ZNK5clang9FieldDecl24isAnonymousStructOrUnionEv_ZNK4llvm5APInt8toStringERNS_15SmallVectorImplIcEEjbbb_ZNK5clang9FieldDecl16getBitWidthValueERKNS_10ASTContextE_ZNK5clang7TagType7getDeclEv_ZNK5clang10ASTContext18getASTRecordLayoutEPKNS_10RecordDeclE_ZNK5clang10ASTContext19toCharUnitsFromBitsEl_ZNK5clang10ASTContext18getTypeSizeInCharsENS_8QualTypeE_ZNK5clang9FieldDecl13getFieldIndexEv_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE8_M_eraseEmm_ZN4ebpf15BMapDeclVisitor12VisitTagTypeEPKN5clang7TagTypeE_ZN4ebpf15BMapDeclVisitor16VisitTypedefTypeEPKN5clang11TypedefTypeE_ZNK5clang29SubstTemplateTypeParmPackType15getArgumentPackEv_ZNK5clang19DependentBitIntType14getNumBitsExprEv_ZN4ebpf15BMapDeclVisitor13VisitEnumDeclEPN5clang8EnumDeclE_ZN5clang8QualType27getSplitUnqualifiedTypeImplES0__ZNK5clang11DeclContext11decls_beginEv_ZSt28__throw_bad_array_new_lengthv_ZN5clang11OMPChildren11getChildrenEv_ZNK5clang7VarDecl29getTemplateSpecializationKindEv_ZNK5clang11ParmVarDecl13hasDefaultArgEv_ZN5clang11ParmVarDecl13getDefaultArgEv_ZN5clang11ParmVarDecl27getUninstantiatedDefaultArgEv_ZNK5clang9FieldDecl21getInClassInitializerEv_ZNK5clang13CXXRecordDecl29getTemplateSpecializationKindEv_ZNK5clang17ObjCInterfaceDecl22LoadExternalDefinitionEv_ZNK5clang19NestedNameSpecifier7getKindEv_ZNK5clang12TemplateName26getAsDependentTemplateNameEv_ZNK5clang12TemplateName26getAsQualifiedTemplateNameEv_ZNK5clang22NestedNameSpecifierLoc10getTypeLocEv_ZN5clang12TemplateNameC1EPNS_12TemplateDeclE_ZN5clang4Stmt8childrenEv_ZNK5clang16StmtIteratorBase11GetDeclExprEv_ZN5clang15CXXForRangeStmt12getRangeInitEv_ZN5clang12CapturedStmt15getCapturedDeclEv_ZNK5clang26CXXRewrittenBinaryOperator17getDecomposedFormEv_ZN5clang16StmtIteratorBase6NextVAEv_ZN5clang16StmtIteratorBase8NextDeclEb_ZNK5clang4Decl13getASTContextEv_ZNK5clang10ASTContext20getObjCInterfaceTypeEPKNS_17ObjCInterfaceDeclEPS1__ZNK5clang8concepts15ExprRequirement21ReturnTypeRequirement17getTypeConstraintEv_ZNK5clang23OMPUsesAllocatorsClause16getAllocatorDataEj_ZN5clang7VarDecl7getInitEv_ZN5clang12TemplateNameC1EPv_ZNK5clang12FunctionDecl29getTemplateSpecializationInfoEv_ZNK5clang18CXXConstructorDecl10init_beginEv_ZNK5clang13CXXRecordDecl21getLambdaCallOperatorEv_ZNK5clang4Decl15hasDefiningAttrEv_ZNK5clang12FunctionDecl30getDependentSpecializationInfoEv_ZN5KSyms11_add_symbolEPKcS1_mPv_ZN8ProcSyms6Module16_add_symbol_lazyEmmmmmiPv_ZN5KSyms7refreshEv_ZN5KSyms12resolve_addrEmP10bcc_symbolb_ZN5KSyms12resolve_nameEPKcS1_Pm_ZSt11_Hash_bytesPKvmm_ZNKSt8__detail20_Prime_rehash_policy14_M_need_rehashEmmm_ZSt17__throw_bad_allocv_ZTV5KSyms_ZN8ProcSyms6Module11_add_symbolEPKcmmPv_ZN9BuildSyms6Module11_add_symbolEPKcmmPv_ZNK5clang10LambdaExpr13capture_beginEv_ZNK5clang10LambdaExpr13isInitCaptureEPKNS_13LambdaCaptureE_ZNK5clang10LambdaExpr15getCallOperatorEv_ZNK5clang10LambdaExpr24getTemplateParameterListEv_ZNK5clang10LambdaExpr25getTrailingRequiresClauseEv_ZNK5clang10LambdaExpr7getBodyEv__libc_single_threaded_ZTVNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEE_ZTVNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEEE_ZTVSt15basic_streambufIcSt11char_traitsIcEE_ZNSo5writeEPKcl_ZNKSt5ctypeIcE13_M_widen_initEv_ZNSt8ios_baseC2Ev_ZTVSt9basic_iosIcSt11char_traitsIcEE_ZTTNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEE_ZNSt9basic_iosIcSt11char_traitsIcEE4initEPSt15basic_streambufIcS1_E_ZNSt6localeC1Ev_ZNSt9basic_iosIcSt11char_traitsIcEE7copyfmtERKS2__ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l_ZNSt6localeD1Ev_ZNSt8ios_baseD2Ev_ZSt16__throw_bad_castv_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev_ZN8ProcSyms10ModulePathC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiibopenat_ZN8ProcSyms10ModulePathC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiib_ZN8ProcStat9getinode_ERm_ZN8ProcStat12refresh_rootEvreadlink_ZSt4cerr_ZNSo3putEc_ZNSo5flushEv_ZNSt9basic_iosIcSt11char_traitsIcEE5clearESt12_Ios_Iostate_ZN8ProcStat8is_staleEv_ZN8ProcStatC2Ei_ZN8ProcStatC1Ei_ZN8ProcSyms12load_modulesEv_ZN8ProcSyms11_add_moduleEP8mod_infoiPv_ZN9BuildSyms6Module14load_sym_tableEv_ZN9BuildSyms6Module12resolve_addrEmP10bcc_symbolb_ZN9BuildSyms12resolve_addrENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEmP10bcc_symbolb_ZN8ProcSyms6Module14load_sym_tableEv_ZN8ProcSyms6Module9find_nameEPKcPm_ZN8ProcSyms12resolve_nameEPKcS1_Pm_ZNK8ProcSyms6Module8containsEmRm_ZN8ProcSyms6Module9find_addrEmP10bcc_symbol_ZN8ProcSyms12resolve_addrEmP10bcc_symbolb__cxa_demangle_ZN8ProcSymsC2EiP17bcc_symbol_option_ZTV8ProcSyms_ZN8ProcSymsC1EiP17bcc_symbol_optionbcc_symcache_new_ZN8ProcSyms7refreshEv_ZN8ProcSyms6ModuleC2EPKcSt10shared_ptrINS_10ModulePathEEP17bcc_symbol_option_ZN8ProcSyms6ModuleC1EPKcSt10shared_ptrINS_10ModulePathEEP17bcc_symbol_option_ZN9BuildSyms10add_moduleENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZTV9BuildSyms_find_load_ZN10tinyformat6detail9FormatArg9toIntImplIiEEiPKv_bcc_syms_find_module_ZN10tinyformat6detail9FormatArg9toIntImplINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEiPKv_ZN10tinyformat6detail9FormatArg9toIntImplIPKcEEiPKv_ZN10tinyformat6detail9FormatArg10formatImplIPKcEEvRSoS4_S4_iPKv_ZNSo9_M_insertIPKvEERSoT__ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag_ZNSt19_Sp_make_shared_tag5_S_eqERKSt9type_infoelf_getshdrstrndxelf_nextscngelf_getshdrelf_strptrelf_getdatagelf_getsym__sprintf_chkbcc_free_symcachebcc_symbol_free_demangle_namebcc_symcache_resolvebcc_symcache_resolve_no_demanglebcc_symcache_resolve_namebcc_symcache_refreshbcc_buildsymcache_newbcc_buildsymcache_add_modulebcc_buildsymcache_resolve_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm__so_calc_global_addr__so_calc_mod_offset_ZNSolsEi_ZN10tinyformat6detail9FormatArg10formatImplIiEEvRSoPKcS5_iPKv_ZN10tinyformat6detail9FormatArg10formatImplINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEvRSoPKcSB_iPKvbcc_free_buildsymcachebcc_elf_is_vdsomkostempunlinkbcc_is_perf_mapbcc_is_valid_perf_mapbcc_perf_map_nstgidstrrchrbcc_perf_map_pathbcc_perf_map_foreach_sym__isoc23_strtoull__ctype_b_locbcc_mapping_is_file_backedbcc_procutils_each_ksymbcc_procutils_which_sofstat__isoc23_fscanfbcc_procutils_freebcc_procutils_language__realpath_chklanguage_cbcc_zip_archive_openlseekbcc_zip_archive_closeelf_endbcc_zip_archive_find_entrybcc_zip_archive_find_entry_at_offset_procfs_maps_each_moduleopendirreaddirclosedirstrncpybcc_procutils_each_modulebcc_elf_foreach_vdso_symelf_versionelf_beginbcc_zip_archive_open_and_findelf_memorybcc_elf_foreach_usdtgelf_getclassgelf_getnotegetenvbcc_elf_foreach_symbcc_foreach_function_symbolbcc_elf_foreach_sym_lazybcc_elf_get_text_scn_infobcc_resolve_global_addrbcc_elf_foreach_load_sectionelf_getphdrnumgelf_getphdrbcc_elf_get_typegelf_getehdrbcc_resolve_symnamebcc_elf_is_exebcc_procutils_whichbcc_elf_is_shared_objsysconfbcc_free_memorymadvisebcc_elf_get_buildidbcc_elf_symbol_str_ZN4ebpf11get_pid_exeB5cxx11Ei_ZN4ebpf12tracefs_pathB5cxx11Ev_ZN4ebpf22tracepoint_format_fileERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES7__ZN4ebpf16parse_tracepointERSiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8__ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEcm_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EES4__ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcmm_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12find_last_ofEPKcmm_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4__ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmmbtf__type_cnt_ZN4ebpf14read_cpu_rangeENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZTTSt14basic_ifstreamIcSt11char_traitsIcEE_ZTVSt14basic_ifstreamIcSt11char_traitsIcEE_ZNSt13basic_filebufIcSt11char_traitsIcEEC1Ev_ZNSt13basic_filebufIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode_ZTVSt13basic_filebufIcSt11char_traitsIcEE_ZNSt13basic_filebufIcSt11char_traitsIcEE5closeEv_ZNSt12__basic_fileIcED1Ev_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev_ZNSt13basic_filebufIcSt11char_traitsIcEED1Ev_ZN4ebpf15get_online_cpusEv_ZN4ebpf17get_possible_cpusEv_ZN5clang17DiagnosticsEngine21EmitCurrentDiagnosticEb_ZN4ebpf12ProgFuncInfo8get_funcENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf12ProgFuncInfo8get_funcEm_ZN4ebpf12ProgFuncInfo9func_nameB5cxx11Em_ZN4ebpf12ProgFuncInfo13for_each_funcESt8functionIFvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERNS_8FuncInfoEEE_ZN4ebpf12ProgFuncInfo8add_funcENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf11ClangLoaderC2EPN4llvm11LLVMContextEj_ZN4llvm12MemoryBuffer12getMemBufferENS_9StringRefES1_b_ZN4ebpf13ExportedFiles8footers_B5cxx11E_ZN4ebpf11ClangLoaderC1EPN4llvm11LLVMContextEj_ZN4ebpf11ClangLoaderD2Ev_ZN4ebpf11ClangLoaderD1Ev_ZN4ebpf19get_clang_target_cbE10bcc_arch_tb_ZN4ebpf16get_call_conv_cbE10bcc_arch_tb_ZN4ebpf21calling_conv_regs_ppcE_ZN4ebpf27calling_conv_regs_loongarchE_ZN4ebpf23calling_conv_regs_s390xE_ZN4ebpf23calling_conv_regs_arm64E_ZN4ebpf22calling_conv_regs_mipsE_ZN4ebpf25calling_conv_regs_riscv64E_ZN4ebpf29calling_conv_syscall_regs_x86E_ZN4ebpf31calling_conv_syscall_regs_arm64E_ZN4ebpf31calling_conv_syscall_regs_s390xE_ZN4ebpf21calling_conv_regs_x86E_ZTVN4llvm3opt12InputArgListE_ZN4llvm3opt12InputArgList13releaseMemoryEv_ZTVN5clang17ASTFrontendActionE_ZN5clang14FrontendActionD2Ev_ZN5clang13DiagnosticIDsD1Ev_ZN4ebpf11ClangLoader21add_remapped_includesERN5clang18CompilerInvocationE_ZN4ebpf11ClangLoader14add_main_inputERN5clang18CompilerInvocationERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPN4llvm12MemoryBufferE_ZN5clang15FrontendOptions24getInputKindForExtensionEN4llvm9StringRefE_ZN4llvm15SmallVectorBaseIjE13mallocForGrowEPvmmRm_ZN4ebpf16get_clang_targetB5cxx11Ev_ZNK5clang13SourceManager13loadSLocEntryEjPb_ZN4ebpf13get_call_convEb_ZN4ebpf20pt_regs_syscall_regsEv_ZN4ebpf10MapVisitorC2ERSt3setIPN5clang4DeclESt4lessIS4_ESaIS4_EE_ZN4ebpf10MapVisitorC1ERSt3setIPN5clang4DeclESt4lessIS4_ESaIS4_EE_ZN4ebpf12ProbeVisitorC2ERN5clang10ASTContextERNS1_8RewriterERSt3setIPNS1_4DeclESt4lessIS8_ESaIS8_EEb_ZN4ebpf12ProbeVisitorC1ERN5clang10ASTContextERNS1_8RewriterERSt3setIPNS1_4DeclESt4lessIS8_ESaIS8_EEb_ZN4ebpf11ClangLoader10do_compileEPSt10unique_ptrIN4llvm6ModuleESt14default_deleteIS3_EERNS_12TableStorageEbRKSt6vectorIPKcSaISC_EESG_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKS1_INS2_12MemoryBufferES4_ISP_EESO_RNS_12ProgFuncInfoERSM_bSO_RSt3mapIiSt5tupleIJiSM_iiiiiSM_SM_EESt4lessIiESaISt4pairIKiSZ_EEERSX_ISM_SA_ISM_SaISM_EES10_ISM_ESaIS12_ISN_S19_EEE_ZN5clang21TextDiagnosticPrinterC1ERN4llvm11raw_ostreamEPNS_17DiagnosticOptionsEb_ZN5clang13DiagnosticIDsC1Ev_ZN5clang17DiagnosticsEngineC1EN4llvm18IntrusiveRefCntPtrINS_13DiagnosticIDsEEENS2_INS_17DiagnosticOptionsEEEPNS_18DiagnosticConsumerEb_ZN5clang6driver6DriverC1EN4llvm9StringRefES3_RNS_17DiagnosticsEngineENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS2_18IntrusiveRefCntPtrINS2_3vfs10FileSystemEEE_ZN5clang6driver6Driver16BuildCompilationEN4llvm8ArrayRefIPKcEE_ZN5clang6driver11CompilationD1Ev_ZN5clang17DiagnosticsEngineD1Ev_ZN5clang22PCHContainerOperationsC1Ev_ZN5clang16CompilerInstanceC1ESt10shared_ptrINS_22PCHContainerOperationsEEPNS_19InMemoryModuleCacheE_ZN5clang18CompilerInvocation14CreateFromArgsERS0_N4llvm8ArrayRefIPKcEERNS_17DiagnosticsEngineES5__ZTVN5clang20IgnoringDiagConsumerE_ZN5clang16CompilerInstance17createDiagnosticsEPNS_18DiagnosticConsumerEb_ZN5clang16CompilerInstance13ExecuteActionERNS_14FrontendActionE_ZN5clang18EmitLLVMOnlyActionC1EPN4llvm11LLVMContextE_ZN5clang13CodeGenAction10takeModuleEv_ZTVN5clang18EmitLLVMOnlyActionE_ZN5clang13CodeGenActionD2Ev_ZN5clang16CompilerInstanceD1Ev_ZTVN4llvm19raw_svector_ostreamE_ZNK5clang6driver7JobList5PrintERN4llvm11raw_ostreamEPKcbPNS0_15CrashReportInfoE_ZTVN4llvm17raw_pwrite_streamE_ZN4ebpf11ClangLoader5parseEPSt10unique_ptrIN4llvm6ModuleESt14default_deleteIS3_EERNS_12TableStorageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbPPKciSH_RNS_12ProgFuncInfoERSF_SH_RSt3mapIiSt5tupleIJiSF_iiiiiSF_SF_EESt4lessIiESaISt4pairIKiSQ_EEERSO_ISF_St6vectorISF_SaISF_EESR_ISF_ESaIST_ISG_S11_EEEuname_ZSt4coutgetcwdchdir_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EOS4__ZN4ebpf10MapVisitor13VisitCallExprEPN5clang8CallExprE_ZN5clang4Expr14IgnoreImplicitEv_ZN4ebpf12ProbeVisitor13assignsExtPtrEPN5clang4ExprEPi_ZN5clang4Expr16IgnoreParenCastsEv_ZN4ebpf12ProbeVisitor12VisitVarDeclEPN5clang7VarDeclE_ZTVN4ebpf22TracepointTypeConsumerE_ZN5clang11ASTConsumer21HandleInterestingDeclENS_12DeclGroupRefE_ZN5clang11ASTConsumer33HandleTopLevelDeclInObjCContainerENS_12DeclGroupRefE_ZN5clang11ASTConsumer24HandleImplicitImportDeclEPNS_10ImportDeclE_ZTVN4ebpf13BTypeConsumerE_ZN5clang11ASTConsumer18HandleTopLevelDeclENS_12DeclGroupRefE__cxa_pure_virtual_ZN4ebpf12ProbeVisitor19isMemberDereferenceEPN5clang4ExprE_ZN4ebpf12ProbeVisitor14expansionRangeEN5clang11SourceRangeE_ZNK5clang13SourceManager17getExpansionRangeENS_14SourceLocationE_ZN4ebpf12ProbeVisitor12expansionLocEN5clang14SourceLocationE_ZNK5clang13SourceManager23getExpansionLocSlowCaseENS_14SourceLocationE_ZN4ebpf12ProbeVisitor19VisitBinaryOperatorEPN5clang14BinaryOperatorE_ZN4ebpf12BTypeVisitorC2ERN5clang10ASTContextERNS_15BFrontendActionE_ZNK5clang10ASTContext14getDiagnosticsEv_ZN4ebpf12BTypeVisitorC1ERN5clang10ASTContextERNS_15BFrontendActionE_ZN4ebpf12BTypeVisitor20genParamDirectAssignEPN5clang12FunctionDeclERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPPKc_ZNK5clang8QualType11getAsStringB5cxx11Ev_ZNK5clang4Decl6isUsedEb_ZNK5clang8Rewriter16getRewrittenTextB5cxx11ENS_15CharSourceRangeE_ZN5clang15UnavailableAttr14CreateImplicitERNS_10ASTContextEN4llvm9StringRefENS_11SourceRangeENS0_8SpellingE_ZN5clang4Decl7addAttrEPNS_4AttrE_ZN4ebpf12BTypeVisitor22genParamIndirectAssignEPN5clang12FunctionDeclERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPPKc_ZN4ebpf12BTypeVisitor16rewriteFuncParamEPN5clang12FunctionDeclE_ZNK5clang12FunctionDecl12getNumParamsEv_ZN5clang8Rewriter11ReplaceTextENS_14SourceLocationEjN4llvm9StringRefE_ZNK5clang8Rewriter12getRangeSizeENS_11SourceRangeENS0_14RewriteOptionsE_ZN4ebpf12ProbeVisitor13VisitCallExprEPN5clang8CallExprE_ZN5clang4Expr25getReferencedDeclOfCalleeEv_ZNSt8__detail15_List_node_base7_M_hookEPS0__ZNSt8__detail15_List_node_base9_M_unhookEv_ZN4ebpf12ProbeVisitor18VisitUnaryOperatorEPN5clang13UnaryOperatorE_ZNK5clang4Stmt9getEndLocEv_ZN5clang8Rewriter20InsertTextAfterTokenENS_14SourceLocationEN4llvm9StringRefE_ZN4ebpf12ProbeVisitor23VisitArraySubscriptExprEPN5clang18ArraySubscriptExprE_ZNK5clang4Stmt11getBeginLocEv_ZN5clang11LangOptionsC1Ev_ZN5clang5Lexer19getLocForEndOfTokenENS_14SourceLocationEjRKNS_13SourceManagerERKNS_11LangOptionsE_ZN5clang8Rewriter10InsertTextENS_14SourceLocationEN4llvm9StringRefEbb_ZN4ebpf12ProbeVisitor12TraverseStmtEPN5clang4StmtE_ZN4ebpf12ProbeVisitor15VisitReturnStmtEPN5clang10ReturnStmtE_ZN4ebpf12ProbeVisitor19IsContextMemberExprEPN5clang4ExprE_ZN4ebpf12ProbeVisitor15VisitMemberExprEPN5clang10MemberExprE_ZNK5clang10MemberExpr9getEndLocEv_ZNK5clang10MemberExpr11getBeginLocEv_ZNK5clang4Type14getPointeeTypeEv_ZN5clang13DiagnosticIDs15getCustomDiagIDENS0_5LevelEN4llvm9StringRefE_ZN4ebpf12BTypeVisitor21checkFormatSpecifiersERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN5clang14SourceLocationEisprintisspaceispunct_ZN4ebpf12BTypeVisitor14expansionRangeEN5clang11SourceRangeE_ZN4ebpf12BTypeVisitor13getFieldValueEPN5clang7VarDeclEPNS1_9FieldDeclEl_ZNK5clang4Expr13EvaluateAsIntERNS0_10EvalResultERKNS_10ASTContextENS0_15SideEffectsKindEb_ZN5clang7APValue24DestroyDataAndMakeUninitEv_ZNK4llvm5APInt25countLeadingZerosSlowCaseEv_ZNK4llvm5APInt24countLeadingOnesSlowCaseEv_ZN4ebpf12BTypeVisitor19VisitBinaryOperatorEPN5clang14BinaryOperatorE_ZNK5clang10ASTContext14getFieldOffsetEPKNS_9ValueDeclE_ZNK5clang4Stmt14getSourceRangeEv_ZNK5clang10ASTContext11getTypeInfoEPKNS_4TypeE_ZN4ebpf12BTypeVisitor21VisitImplicitCastExprEPN5clang16ImplicitCastExprE_ZN4ebpf12BTypeVisitor17VisitFunctionDeclEPN5clang12FunctionDeclE_ZNK5clang14DeclaratorDecl16getOuterLocStartEv_ZNK5clang13SourceManager18getFileLocSlowCaseENS_14SourceLocationE_ZNK5clang13SourceManager13getFileIDSlowEj_ZN4ebpf12BTypeVisitor13VisitCallExprEPN5clang8CallExprE_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1ERKS4__ZNK5clang11DeclRefExpr9getEndLocEv_ZNK5clang8CallExpr11getBeginLocEv_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm_ZNK5clang8CallExpr9getEndLocEv_ZNK5clang9NamedDecl18getLinkageInternalEv_ZNK5clang12FunctionDecl12getBuiltinIDEb_ZN5clang4Expr11IgnoreCastsEv_ZNK5clang4Type15isStructureTypeEv_ZNK5clang4Type12getAsTagDeclEv_ZNK5clang15DeclarationName11getAsStringB5cxx11Ev_ZN4ebpf12BTypeVisitor16TraverseCallExprEPN5clang8CallExprE_ZN4ebpf15BFrontendActionC2ERN4llvm11raw_ostreamEjRNS_12TableStorageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESD_RNS_12ProgFuncInfoERSB_SD_RSt3mapIiSt5tupleIJiSB_iiiiiSB_SB_EESt4lessIiESaISt4pairIKiSJ_EEERSH_ISB_St6vectorISB_SaISB_EESK_ISB_ESaISM_ISC_SU_EEE_ZN5clang14FrontendActionC2Ev_ZN4ebpf15BFrontendActionC1ERN4llvm11raw_ostreamEjRNS_12TableStorageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESD_RNS_12ProgFuncInfoERSB_SD_RSt3mapIiSt5tupleIJiSB_iiiiiSB_SB_EESt4lessIiESaISt4pairIKiSJ_EEERSH_ISB_St6vectorISB_SaISB_EESK_ISB_ESaISM_ISC_SU_EEE_ZN4ebpf15BFrontendAction22is_rewritable_ext_funcEPN5clang12FunctionDeclE_ZNK5clang13SourceManager11getFilenameENS_14SourceLocationE_ZN4ebpf15BFrontendAction16DoMiscWorkAroundEv_ZN5clang8Rewriter13getEditBufferENS_6FileIDE_ZN5clang13RewriteBuffer10InsertTextEjN4llvm9StringRefEb_ZNK5clang13SourceManager24getFakeBufferForRecoveryEv_ZNK5clang6SrcMgr12ContentCache15getBufferOrNoneERNS_17DiagnosticsEngineERNS_11FileManagerENS_14SourceLocationE_ZN4ebpf15BFrontendAction19EndSourceFileActionEv_ZNK5clang13RewriteBuffer5writeERN4llvm11raw_ostreamE_ZN4ebpf12BTypeVisitor12VisitVarDeclEPN5clang7VarDeclE_ZNK5clang4Type16isIncompleteTypeEPPNS_9NamedDeclEbpf_obj_get_ZNK5clang14DeprecatedAttr5cloneERNS_10ASTContextE_ZN4ebpf13BTypeConsumerC2ERN5clang10ASTContextERNS_15BFrontendActionERNS1_8RewriterERSt3setIPNS1_4DeclESt4lessISA_ESaISA_EE_ZN4ebpf13BTypeConsumerC1ERN5clang10ASTContextERNS_15BFrontendActionERNS1_8RewriterERSt3setIPNS1_4DeclESt4lessISA_ESaISA_EE_ZN4ebpf15BFrontendAction17CreateASTConsumerERN5clang16CompilerInstanceEN4llvm9StringRefE_ZN5clang17MultiplexConsumerC1ESt6vectorISt10unique_ptrINS_11ASTConsumerESt14default_deleteIS3_EESaIS6_EE_ZN4ebpf13BTypeConsumer21HandleTranslationUnitERN5clang10ASTContextE_ZNK5clang4Type16isArithmeticTypeEv_ZN4ebpf24TracepointFrontendAction19EndSourceFileActionEv_ZN4ebpf21TracepointTypeVisitorC2ERN5clang10ASTContextERNS1_8RewriterE_ZN4ebpf21TracepointTypeVisitorC1ERN5clang10ASTContextERNS1_8RewriterE_ZN4ebpf22TracepointTypeConsumerC2ERN5clang10ASTContextERNS1_8RewriterE_ZN4ebpf22TracepointTypeConsumerC1ERN5clang10ASTContextERNS1_8RewriterE_ZN4ebpf24TracepointFrontendAction17CreateASTConsumerERN5clang16CompilerInstanceEN4llvm9StringRefE_ZN4ebpf24TracepointFrontendActionC2ERN4llvm11raw_ostreamE_ZN4ebpf24TracepointFrontendActionC1ERN4llvm11raw_ostreamE_ZN4ebpf21TracepointTypeVisitor24GenerateTracepointStructEN5clang14SourceLocationERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESA__ZN4ebpf21TracepointTypeVisitor17VisitFunctionDeclEPN5clang12FunctionDeclE_ZNK5clang4Type22isStructureOrClassTypeEv_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE13find_first_ofEPKcmm_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE17find_first_not_ofEPKcmm_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5rfindEPKcmm_ZN4ebpf22TracepointTypeConsumer18HandleTopLevelDeclEN5clang12DeclGroupRefE_ZN4ebpf3BPF22kprobe_event_validatorEc_ZN4ebpf3BPF21uprobe_path_validatorEcisalpha_ZN4ebpf12KBuildHelperC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb_ZN4ebpf12KBuildHelperC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb_ZN4ebpf12KBuildHelper9get_flagsEPKcPSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS9_EE_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareEmmPKc_ZN4ebpf17get_proc_kheadersERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEsystemmkdtemprename_ZN4ebpf11uint_to_hexB5cxx11Em_ZTVNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE_ZTTNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE_ZNSo9_M_insertImEERSoT__ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev_ZNSdD2Ev_ZN4ebpf12sanitize_strENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPFbcEc_ZN4ebpf3BPF15init_fail_resetEv_ZN4ebpf3BPF13attach_kprobeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_m21bpf_probe_attach_typei_ZN4ebpf3BPF13attach_uprobeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_S8_m21bpf_probe_attach_typeimj_ZN4ebpf3BPF30attach_usdt_without_validationERKNS_4USDTEi_ZN4ebpf3BPF15attach_usdt_allEv_ZN4ebpf3BPF11attach_usdtERKNS_4USDTEi_ZN4ebpf3BPF9init_usdtERKNS_4USDTE_ZN4ebpf3BPF4initERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS6_SaIS6_EERKS9_INS_4USDTESaISE_EE_ZN4ebpf3BPF10detach_allEv_ZN4ebpf3BPFD2Ev_ZN4ebpf3BPFD1Ev_ZN4ebpf3BPF15get_perf_bufferERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF11unload_funcERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF18get_syscall_fnnameERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF27detach_raw_tracepoint_eventERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERNS_12open_probe_tE_ZN4ebpf3BPF15free_bcc_memoryEv_ZN4ebpf4USDTC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_S8_S8__ZN4ebpf4USDTC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_S8_S8__ZN4ebpf4USDTC2EiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_S8__ZN4ebpf4USDTC1EiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_S8__ZN4ebpf4USDTC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiS8_S8_S8__ZN4ebpf4USDTC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiS8_S8_S8__ZN4ebpf4USDTC2ERKS0__ZN4ebpf4USDTC1ERKS0__ZN4ebpf4USDTC2EOS0__ZN4ebpf4USDTC1EOS0__ZNK4ebpf4USDTeqERKS0__ZN4ebpf4USDT25set_probe_matching_kludgeEh_ZN4ebpf3BPF21detach_raw_tracepointERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF16close_perf_eventERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF17close_perf_bufferERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF16poll_perf_bufferERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi_ZN4ebpf3BPF9load_funcERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE13bpf_prog_typeRij15bpf_attach_type_ZN4ebpf3BPF17attach_tracepointERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8__ZN4ebpf3BPF21attach_raw_tracepointERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8__ZN4ebpf3BPF11attach_funcEii15bpf_attach_typem_ZN4ebpf3BPF11detach_funcEii15bpf_attach_type_ZN4ebpf3BPF19check_binary_symbolERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_mRS6_Rmm_ZN4ebpf3BPF16get_kprobe_eventERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE21bpf_probe_attach_type_ZN4ebpf3BPF10add_moduleENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF16get_uprobe_eventERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEm21bpf_probe_attach_typei_ZN4ebpf3BPF19detach_kprobe_eventERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERNS_12open_probe_tE_ZN4ebpf3BPF13detach_kprobeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE21bpf_probe_attach_type_ZN4ebpf3BPF23detach_tracepoint_eventERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERNS_12open_probe_tE_ZN4ebpf3BPF17detach_tracepointERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF25detach_perf_event_all_cpuERNS_12open_probe_tE_ZN4ebpf3BPF17detach_perf_eventEjj_ZN4ebpf3BPF21detach_perf_event_rawEPv_ZN4ebpf3BPF19detach_uprobe_eventERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERNS_12open_probe_tE_ZN4ebpf3BPF13detach_uprobeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_m21bpf_probe_attach_typeim_ZN4ebpf3BPF30detach_usdt_without_validationERKNS_4USDTEi_ZN4ebpf3BPF11detach_usdtERKNS_4USDTEi_ZN4ebpf3BPF15detach_usdt_allEv_ZN4ebpf3BPF21attach_perf_event_rawEPvRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiim_ZN4ebpf3BPF17attach_perf_eventEjjRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEmmiii_ZN4ebpf3BPF15open_perf_eventERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEjmi_ZN4ebpf3BPF16open_perf_bufferERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPFvPvS9_iEPFvS9_mES9_i_ZN4ebpf3BPF14get_prog_tableERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF16get_cgroup_arrayERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF16get_devmap_tableERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF16get_xskmap_tableERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF15get_stack_tableERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb_ZN4ebpf3BPF22get_stackbuildid_tableERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb_ZN4ebpf3BPF17get_sockmap_tableERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf3BPF18get_sockhash_tableERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf4USDT4initEv_ZN4ebpf8BPFTableC2ERKNS_9TableDescE_ZN4ebpf8BPFTableC1ERKNS_9TableDescE_ZN4ebpf13BPFStackTableC2ERKNS_9TableDescEbb__cxa_allocate_exception_ZNSt16invalid_argumentC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZNSt16invalid_argumentD1Ev_ZTISt16invalid_argument__cxa_throw__cxa_free_exception_ZN4ebpf13BPFStackTableC1ERKNS_9TableDescEbb_ZN4ebpf13BPFStackTableC2EOS0__ZN4ebpf13BPFStackTableC1EOS0__ZN4ebpf20BPFStackBuildIdTableC2ERKNS_9TableDescEbbPv_ZN4ebpf20BPFStackBuildIdTableC1ERKNS_9TableDescEbbPv_ZN4ebpf13BPFPerfBufferC2ERKNS_9TableDescE_ZN4ebpf13BPFPerfBufferC1ERKNS_9TableDescE_ZN4ebpf17BPFPerfEventArrayC2ERKNS_9TableDescE_ZN4ebpf17BPFPerfEventArrayC1ERKNS_9TableDescE_ZN4ebpf12BPFProgTableC2ERKNS_9TableDescE_ZN4ebpf12BPFProgTableC1ERKNS_9TableDescE_ZN4ebpf14BPFCgroupArrayC2ERKNS_9TableDescE_ZN4ebpf14BPFCgroupArrayC1ERKNS_9TableDescE_ZN4ebpf14BPFDevmapTableC2ERKNS_9TableDescE_ZN4ebpf14BPFDevmapTableC1ERKNS_9TableDescE_ZN4ebpf14BPFXskmapTableC2ERKNS_9TableDescE_ZN4ebpf14BPFXskmapTableC1ERKNS_9TableDescE_ZN4ebpf15BPFSockmapTableC2ERKNS_9TableDescE_ZN4ebpf15BPFSockmapTableC1ERKNS_9TableDescE_ZN4ebpf16BPFSockhashTableC2ERKNS_9TableDescE_ZN4ebpf16BPFSockhashTableC1ERKNS_9TableDescE_ZNSt13runtime_errorC2EPKc_ZTVSt11regex_error_ZNSt11regex_errorD1Ev_ZTISt11regex_error_ZN4USDT8ArgumentC2Ev_ZN4USDT8ArgumentC1Ev_ZN4USDT8ArgumentD2Ev_ZN4USDT8ArgumentD1Ev_ZNK4USDT8Argument5ctypeB5cxx11Ev_ZNK4USDT8Argument10ctype_nameEvlog2_ZN4USDT14ArgumentParser11print_errorElfputc_ZN4USDT14ArgumentParser20skip_whitespace_fromEm_ZN4USDT14ArgumentParser26skip_until_whitespace_fromEm_ZN4USDT22ArgumentParser_aarch6414parse_registerElRlRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4USDT22ArgumentParser_aarch6410parse_sizeElRlPNSt12experimental8optionalIiEE_ZNSt11logic_errorC2EPKc_ZTINSt12experimental19bad_optional_accessE_ZN4USDT22ArgumentParser_aarch649parse_memElRlPNS_8ArgumentE_ZN4USDT22ArgumentParser_aarch645parseEPNS_8ArgumentE_ZN4USDT26ArgumentParser_loongarch6414parse_registerElRlRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4USDT26ArgumentParser_loongarch6410parse_sizeElRlPNSt12experimental8optionalIiEE_ZN4USDT26ArgumentParser_loongarch649parse_memElRlPNS_8ArgumentE_ZN4USDT26ArgumentParser_loongarch645parseEPNS_8ArgumentE_ZN4ebpf8BPFTable9get_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERS6__ZN4ebpf13BPFStackTable14get_stack_addrEi_ZN4ebpf20BPFStackBuildIdTable14get_stack_addrEi_ZN4ebpf14BPFDevmapTable9get_valueERKiRi_ZN4ebpf14BPFXskmapTable9get_valueERKiRi_ZN4ebpf8BPFTable9get_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERSt6vectorIS6_SaIS6_EE_ZN4ebpf8BPFTable22get_possible_cpu_countEv_ZN4ebpf8BPFTable12update_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS6_SaIS6_EE_ZN4ebpf8BPFTable12update_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8__ZN4ebpf12BPFProgTable12update_valueERKiS2__ZN4ebpf14BPFCgroupArray12update_valueERKiS2__ZN4ebpf14BPFCgroupArray12update_valueERKiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf14BPFDevmapTable12update_valueERKiS2__ZN4ebpf14BPFXskmapTable12update_valueERKiS2__ZN4ebpf15BPFSockmapTable12update_valueERKiS2__ZN4ebpf16BPFSockhashTable12update_valueERKiS2__ZN4ebpf8BPFTable12remove_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4ebpf13BPFStackTable22clear_table_non_atomicEv_ZN4ebpf20BPFStackBuildIdTable22clear_table_non_atomicEv_ZN4ebpf12BPFProgTable12remove_valueERKi_ZN4ebpf14BPFCgroupArray12remove_valueERKi_ZN4ebpf14BPFDevmapTable12remove_valueERKi_ZN4ebpf14BPFXskmapTable12remove_valueERKi_ZN4ebpf15BPFSockmapTable12remove_valueERKi_ZN4ebpf16BPFSockhashTable12remove_valueERKi_ZN4ebpf8BPFTable22clear_table_non_atomicEv_ZN4ebpf8BPFTable17get_table_offlineERSt6vectorISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_ESaIS9_EE_ZN4ebpf13BPFStackTableD2Ev_ZN4ebpf13BPFStackTableD1Ev_ZN4ebpf13BPFStackTable13free_symcacheEi_ZN4ebpf13BPFPerfBuffer12close_on_cpuEi_ZN4ebpf13BPFPerfBuffer11open_on_cpuEPFvPvS1_iEPFvS1_mES1_iR20bcc_perf_buffer_optsepoll_ctl_ZN4ebpf13BPFPerfBuffer4pollEiepoll_wait_ZN4ebpf13BPFPerfBuffer7consumeEv_ZN4ebpf17BPFPerfEventArray12close_on_cpuEi_ZN4ebpf17BPFPerfEventArray11open_on_cpuEijmi_ZN4ebpf13BPFStackTable16get_stack_symbolB5cxx11Eii_ZN4ebpf20BPFStackBuildIdTable16get_stack_symbolB5cxx11Ei_ZN4ebpf13BPFPerfBuffer13close_all_cpuEv_ZN4ebpf13BPFPerfBuffer12open_all_cpuEPFvPvS1_iEPFvS1_mES1_iiepoll_create1__cxa_throw_bad_array_new_length_ZN4ebpf13BPFPerfBuffer12open_all_cpuEPFvPvS1_iEPFvS1_mES1_i_ZN4ebpf13BPFPerfBufferD2Ev_ZN4ebpf13BPFPerfBufferD1Ev_ZN4ebpf17BPFPerfEventArray13close_all_cpuEv_ZN4ebpf17BPFPerfEventArray12open_all_cpuEjmi_ZN4ebpf17BPFPerfEventArrayD2Ev_ZN4ebpf17BPFPerfEventArrayD1Ev_ZNK4USDT8Argument18get_global_addressEPmRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNSt12experimental8optionalIiEE_ZNK4USDT8Argument15assign_to_localERSoRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_RKNSt12experimental8optionalIiEE_ZTVN4USDT26ArgumentParser_loongarch64E_ZTVN4USDT22ArgumentParser_aarch64E_ZTSNSt12experimental19bad_optional_accessE_ZTSSt13runtime_error_ZTISt13runtime_error_ZTVN10__cxxabiv120__si_class_type_infoE_ZTISt9exception_ZTSSt11regex_error_ZTSSt9exception_ZTVN10__cxxabiv117__class_type_infoE_ZTSSt11logic_error_ZTISt11logic_error_ZTSSt16invalid_argument_ZNKSt11logic_error4whatEv_ZN10tinyformat6detail9FormatArg9toIntImplIxEEiPKv_ZN10tinyformat6detail9FormatArg9toIntImplImEEiPKv_ZNSt11logic_errorD2Ev_ZNSt8__detail8_ScannerIcE18_M_eat_escape_ecmaEv_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE14_M_replace_auxEmmmc_ZSt19__throw_regex_errorNSt15regex_constants10error_typeE_ZNSt8__detail8_ScannerIcE19_M_eat_escape_posixEv_ZN4USDT18ArgumentParser_x6416parse_identifierElPNSt12experimental8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEisalnum_ZN4USDT18ArgumentParser_x6411parse_scaleElPNS_8ArgumentE_ZN4USDT18ArgumentParser_x6411reg_to_nameEPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS0_8RegisterE_ZN4USDT18ArgumentParser_x6418normalize_registerEPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPi_ZN4USDT18ArgumentParser_x6410registers_B5cxx11E_ZN4USDT18ArgumentParser_x6414parse_registerElRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERi_ZN4USDT18ArgumentParser_x6419parse_base_registerElPNS_8ArgumentE_ZN4USDT18ArgumentParser_x6420parse_index_registerElPNS_8ArgumentE_ZN4USDT18ArgumentParser_x6410parse_exprElPNS_8ArgumentE_ZN4USDT18ArgumentParser_x647parse_1ElPNS_8ArgumentE_ZNSo9_M_insertIxEERSoT__ZN10tinyformat6detail9FormatArg10formatImplIxEEvRSoPKcS5_iPKv_ZN10tinyformat6detail9FormatArg10formatImplImEEvRSoPKcS5_iPKv_ZN4USDT20ArgumentParser_s390x5parseEPNS_8ArgumentE_ZN4USDT18ArgumentParser_x645parseEPNS_8ArgumentE_ZN4USDT24ArgumentParser_powerpc645parseEPNS_8ArgumentE_ZN4USDT22ArgumentParser_riscv645parseEPNS_8ArgumentE_ZNSt5ctypeIcE2idE_ZNKSt6locale2id5_M_idEv_ZTVN4USDT18ArgumentParser_x64E_ZTVN4USDT22ArgumentParser_riscv64E_ZTVN4USDT20ArgumentParser_s390xE_ZTVN4USDT24ArgumentParser_powerpc64E_ZNSt17_Function_handlerIFbcENSt8__detail15_BracketMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail15_BracketMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail15_BracketMatcherINSt7__cxx1112regex_traitsIcEELb1ELb0EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail15_BracketMatcherINSt7__cxx1112regex_traitsIcEELb1ELb1EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0ELb0EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0ELb1EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1ELb0EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1ELb1EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb1ELb0ELb0EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb1ELb0ELb0EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb1ELb0ELb1EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb1ELb0ELb1EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb1ELb1ELb0EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb1ELb1ELb1EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail12_CharMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail12_CharMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail12_CharMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail12_CharMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail12_CharMatcherINSt7__cxx1112regex_traitsIcEELb1ELb0EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail12_CharMatcherINSt7__cxx1112regex_traitsIcEELb1ELb1EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb1ELb1ELb0EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb1ELb1ELb1EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail12_CharMatcherINSt7__cxx1112regex_traitsIcEELb1ELb0EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail12_CharMatcherINSt7__cxx1112regex_traitsIcEELb1ELb1EEEE9_M_invokeERKSt9_Any_dataOc_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0ELb0EEEE9_M_invokeERKSt9_Any_dataOc_ZGVZNKSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0ELb0EEclEcE5__nul_ZZNKSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0ELb0EEclEcE5__nul_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0ELb1EEEE9_M_invokeERKSt9_Any_dataOc_ZGVZNKSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0ELb1EEclEcE5__nul_ZZNKSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0ELb1EEclEcE5__nul_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1ELb0EEEE9_M_invokeERKSt9_Any_dataOc_ZGVZNKSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1ELb0EEclEcE5__nul_ZZNKSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1ELb0EEclEcE5__nul__cxa_guard_abort_ZNSt17_Function_handlerIFbcENSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1ELb1EEEE9_M_invokeERKSt9_Any_dataOc_ZGVZNKSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1ELb1EEclEcE5__nul_ZZNKSt8__detail11_AnyMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1ELb1EEclEcE5__nul_ZNSt17_Function_handlerIFbcENSt8__detail15_BracketMatcherINSt7__cxx1112regex_traitsIcEELb0ELb0EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail15_BracketMatcherINSt7__cxx1112regex_traitsIcEELb0ELb1EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail15_BracketMatcherINSt7__cxx1112regex_traitsIcEELb1ELb0EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZNSt17_Function_handlerIFbcENSt8__detail15_BracketMatcherINSt7__cxx1112regex_traitsIcEELb1ELb1EEEE10_M_managerERSt9_Any_dataRKS8_St18_Manager_operation_ZZNKSt7__cxx1112regex_traitsIcE16lookup_classnameIPKcEENS1_10_RegexMaskET_S6_bE12__classnames_ZNSt6localeC1ERKS__ZZNKSt8__detail9_ExecutorIN9__gnu_cxx17__normal_iteratorIPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESaINS5_9sub_matchISB_EEENS5_12regex_traitsIcEELb0EE10_M_is_wordEcE3__s_ZZNKSt8__detail9_ExecutorIN9__gnu_cxx17__normal_iteratorIPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESaINS5_9sub_matchISB_EEENS5_12regex_traitsIcEELb1EE10_M_is_wordEcE3__s_ZZNKSt8__detail9_ExecutorIPKcSaINSt7__cxx119sub_matchIS2_EEENS3_12regex_traitsIcEELb0EE10_M_is_wordEcE3__s_ZZNKSt8__detail9_ExecutorIPKcSaINSt7__cxx119sub_matchIS2_EEENS3_12regex_traitsIcEELb1EE10_M_is_wordEcE3__s_ZNSt7__cxx117collateIcE2idE_ZZNKSt7__cxx1112regex_traitsIcE18lookup_collatenameIPKcEENS_12basic_stringIcSt11char_traitsIcESaIcEEET_SA_E14__collatenames_ZN4USDT5ProbeC2EPKcS2_S2_mmRKNSt12experimental8optionalIiEEh_ZN4USDT5ProbeC1EPKcS2_S2_mmRKNSt12experimental8optionalIiEEh_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED1Ev__cxa_atexit_ZNKSt8__detail20_Prime_rehash_policy11_M_next_bktEm_ZN4USDT7Context3getERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4USDT7Context3getERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8__ZN4USDT7Context4eachEPFvP8bcc_usdtE_ZN4USDT7Context11each_uprobeEPFvPKcS2_miEbcc_usdt_foreachbcc_usdt_get_locationbcc_usdt_get_argumentbcc_usdt_foreach_uprobe_ZN4USDT5Probe16in_shared_objectERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4USDT5Probe22resolve_global_addressEPmRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEm_ZN4USDT5Probe16add_to_semaphoreEs_ZN4USDT5Probe6enableERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4USDT5Probe7disableEv_ZN4USDT5Probe16largest_arg_typeEmbcc_usdt_get_probe_argctypebcc_usdt_get_fully_specified_probe_argctype_ZN4USDT5Probe11usdt_getargERSoRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4USDT5Probe11usdt_getargERSo_ZN4USDT7Context12_each_moduleEP8mod_infoiPv_ZN4USDT7Context11_each_probeEPKcPK12bcc_elf_usdtPv_ZN4USDT7Context16resolve_bin_pathERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE_ZN4USDT7Context11get_checkedERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8__ZN4USDT7Context12enable_probeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_S8__ZN4USDT7Context12enable_probeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_bcc_usdt_enable_probebcc_usdt_enable_fully_specified_probe_ZN4USDT7Context12addsem_probeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_S8_sbcc_usdt_addsem_probebcc_usdt_addsem_fully_specified_probe_ZN4USDT5Probe18finalize_locationsEv_ZN4USDT8LocationC2EmRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc_ZN4USDT8LocationC1EmRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc_ZN4USDT5Probe12add_locationEmRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc_ZN4USDT7Context9add_probeEPKcPK12bcc_elf_usdt_ZN4USDT7ContextC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEh_ZN4USDT7ContextC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEh_ZN4USDT7ContextD2Ev_ZN4USDT7ContextD1Evbcc_usdt_new_frompathbcc_usdt_closebcc_usdt_genargs_ZN4USDT7ContextC2Eih_ZN4USDT7ContextC1Eih_ZN4USDT7ContextC2EiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEh_ZN4USDT7ContextC1EiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEhbcc_usdt_new_frompid_ZNSt6localeaSERKS__ZSt24__throw_invalid_argumentPKc_ZN4llvm4UsernwEmjj_ZN4llvm11InstructionC2EPNS_4TypeEjPNS_3UseEjPS0__ZN4llvm8CallInst4initEPNS_12FunctionTypeEPNS_5ValueENS_8ArrayRefIS4_EENS5_INS_17OperandBundleDefTIS4_EEEERKNS_5TwineE_ZN4llvm11Instruction16setFastMathFlagsENS_13FastMathFlagsE_ZNK4llvm5Value10getContextEv_ZNK4llvm13AttributeList19addAttributeAtIndexERNS_11LLVMContextEjNS_9Attribute8AttrKindE_ZN4llvm11InstructionD2Ev_ZN4llvm17GetElementPtrInst14getIndexedTypeEPNS_4TypeENS_8ArrayRefIPNS_5ValueEEE_ZN4llvm17GetElementPtrInst4initEPNS_5ValueENS_8ArrayRefIS2_EERKNS_5TwineE_ZNK4llvm10DataLayout16getPrefTypeAlignEPNS_4TypeE_ZN4llvm10AllocaInstC1EPNS_4TypeEjPNS_5ValueENS_5AlignERKNS_5TwineEPNS_11InstructionE_ZN4llvm13AllAnalysesOnINS_6ModuleEE6SetKeyE_ZTTNSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESaIcEEE_ZTVNSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESaIcEEE_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE7_M_syncEPcmm_ZNSi10_M_extractIlEERSiRT__ZNSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESaIcEED1Ev_ZN5clang14RopePieceBTreeD1Ev_ZN5clang9DeltaTreeD1EvkernelAddrSpacenb_languageslibclang-cpp.so.18.1libLLVM.so.18.1libelf.so.1libbpf.so.1libstdc++.so.6libm.so.6libgcc_s.so.1libc.so.6libbcc.so.0GLIBC_2.29GCC_3.0GCC_3.3.1ELFUTILS_1.3ELFUTILS_1.5ELFUTILS_1.6ELFUTILS_1.0LIBBPF_0.0.5LIBBPF_0.7.0LIBBPF_0.0.8LIBBPF_0.0.9LIBBPF_0.1.0LIBBPF_0.0.7LIBBPF_0.5.0LIBBPF_0.6.0LIBBPF_0.0.6LIBBPF_1.2.0LIBBPF_0.0.1GLIBC_2.9GLIBC_2.14GLIBC_2.7GLIBC_2.32GLIBC_2.3.2GLIBC_2.16GLIBC_2.38GLIBC_2.3.4GLIBC_2.4GLIBC_2.3GLIBC_2.33GLIBC_2.2.5GLIBCXX_3.4.20GLIBCXX_3.4.26CXXABI_1.3.8GLIBCXX_3.4.14CXXABI_1.3.5CXXABI_1.3.9GLIBCXX_3.4.29GLIBCXX_3.4.15GLIBCXX_3.4.32GLIBCXX_3.4.18GLIBCXX_3.4GLIBCXX_3.4.9GLIBCXX_3.4.11CXXABI_1.3GLIBCXX_3.4.21LLVM_18.1               !" #$%&'()*+   , -  ./ -A0P&y #La_& TP %^ $k x  Uv0*P0"Xv0 Yv0Pu0Wv0Pq0P0Vv0 Pt/ Qv0 +ii +!)+ii (6&@ri KWbti mii yii ui p/v.xѯ ,d'uѯ !yѯ yeBh%t)4)@a Nӯk ]qh2 w(R `w0R s8R  wPR dXR  D`R LhR 0?R dR 0DR LR  OR OR wR eR @DR MR PR QR wS @S p S (S 0S 08S P@S  HS PS !XS `S 6!hS pS xS S S S J#S S S S S S S S S S  S S  S ! T % T ! T 4 T !  T I (T ! 0T ] 8T ! @T n HT  PT  XT  `T  hT  pT  xT  T  T  T c!T  T + T  T  T  T  T  T  T  T  T  T  T  U  U  U , U   U ? (U P 0U T 8U P @U d HU P PU u XU P `U &hU P pU  xU P U !U  U  U  U  U  U  U  U  U  U  U  U  U  U  U  V  V  V  V 1  V 6 (V 1 0V E 8V N @V S HV N PV ^ XV N `V !hV n pV s xV n V  V n V  V  V !V  V  V  V  V  V  V  V  V  V  V  W  W  W  W   W ( (W  0W 6 8W  @W ; HW K PW P XW K `W c hW K pW m xW K W  W K W  W K W  W K W  W K W  W K W  W K W  W K W  W K X  X K X  X K  X ! (X K 0X / 8X K @X k"HX E PX J XX E `X ^ hX E pX u xX  X  X  X  X  X "X  X "X  X  X  X  X  X  X  X  X  Y  Y  Y  Y   Y  (Y  0Y 98Y  @Y HY  PY XY  `Y $hY 3pY 7xY 3Y KY 3Y [Y 3Y tY 3Y Y 3Y Y 3Y Y 3Y !Y 3Y !Y 3Z Z Z Z  Z (Z 0Z #8Z @Z HZ PZ 63XZ `Z hZ pZ xZ Z Z Z Z Z Z 2Z 6Z 2Z NZ 2Z YZ 2Z pZ 2Z jZ 2[ t[ [ [  [ ([ 0[ 8[ @[ H[ P[ X[ `[ h[ p[ x[ [ [ [ [ [ [ [ [ .[ 2[ .[ B[ .[ [[ .[ s[ .\ \ .\ \  \ (\ 0\ 8\ @\ "H\ P\ %"X\ `\ h\ p\ x\ \ \ \ \ \ \ \ \ \ \ \ #\ \ 0\ \ >"\ >] S"] >] C] > ] X(] >0] f8] >@] zH] >P] X] >`] h] p] x] ] ] ] g)] ] ] ] ] ] ] ] ] ] ] ] ] ^ ^ ^ +^  ^ =(^ 0^ J8^ ^@^ cH^ ^P^ qX^ ^`^ h^ ^p^ x^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ _ _ _ _  _ (_ 0_ +8_ @_ :H_ P_ HX_ R`_ Wh_ Rp_ nx_ R_ _ R_ _ R_ _ R_ _ R_ _ R_ _ R_ _ R_ _ ` ` ` 3`  ` P(` 0` m8` ~@` H` ~P` X` `` h` ` 0` @` 0` ` ` ` ` ` Pa `a `a pa  a V(a u0a 8a +@a UHa tPa Xa +`a ,pa 7/a ,,a s.a y.a .a .a .a .a .b .b . b p00b .@b .`b whb _pb ``xb _b b 2b b b b b Pb b Pb pwb pwb c wc wc pwc pw8c @c G Hc Pc `c   pc xc c pwc pwc c wc wc pwc pwc `c c  c c wd pwd w(d w8d `@d Hd Pd wXd d d d pwd d Pd Qd Qe pe  e (e 0e 8e @@e PHe `Pe pXe 0pe `xe e =e Ce 0e e `e e `e `e e e e f `>f ?f  7f @7 f P88f P@f pHf 0Pf 0Xf pf xf f `f 'f `f `f `f `f `f `f `f `f `f `f pg pg g (g 0g 8g `Hg `Xg e `g `hg `pg `g `g `g `g `g `g pg pg g h  h 0}h /h h ]i qi N0i ^k ;k k Ik k k k 0l `@l  l к8l Hl 0l Pl @l Pl ?m P m (m Pm pm m m m 0m m 0m m Pn `n n лn pn pn n пn pn (o po xo o @o нo o Mo p     # ( ,Ȁ 3   ' / 7 ? G( O0 W8 _@ g` .h .p .x . o r . . . u oȁ r 7 ? y    ( 0 8 @ H ` 7h ?p yx      ' / 7Ȃ ?  O W _ g ( 0 8 @ H ` J0h N0p R0x V0 Z0 ^0 b0 f0 l0 0 v0 ~0 0ȃ 0Ѓ 0؃ 0 0 0 0 0 0 0 0 0 0( 00 08 0@ 0H 0P 0X 0` p0h 0p 0x  1 1 "1 /1 91 D1 U1 g1 p1 z1Ȅ 1Є 1؄ 22  1 1 1 1 1 1 1 1( 10 18 1@ 1H 1P 1X 1` 2h 2p 0x 0  q  2   2 0 2ȅ 0Ѕ 0؅ 0 2 `0 ' a \0 (  2 ( 20 8 2@ .2H 82P M2X X2` c2h }.p %І s؆  # r2 3 ,,  n3 ' 7/ ( &+0 (8 t2@ 2H 2P 2X 2b GXc Gb phc p c 'c 'c ;d d ! d 0d `d \hd @d Ed d fd d f cPg cf xg f g @g :g hg hg h(h Ph hh h h 0h 8h `h @h DHh $Xh ph xh h h h h kh k k k k 1k Fk +k ]k Pl l o(l {0l |@l Pl Xl `l xhl pl xl l ?l l l Bl l l l l l l l m m Xm 0m 8m @m Hm Xm `m Ihm xm m 3m Cm xm Nm .m ]m ^m mm gn n n mn   n (n h0n q8n u@n {Hn ~Xn hn pn xn n n n n n n n n n o o go o E o 0o 8o @o -Ho Po Xo d`o Vho o o o o  o +( 0 p p p p  p (p 0p 8p @p  Hp  Pp  Xp  `p  hp pp xp p p p p p p p p p p p p p p p  p !q "q #q $q % q &(q '0q (8q )@q *Hq +Pq ,Xq -`q .hq /pq 0xq 2q 3q 4q 5q 6q 7q 8q 9q :q ;q <q =q >q ?q @q Aq Br Cr Dr Er G r H(r I0r J8r K@r LHr MPr NXr O`r Phr Qpr Rxr Sr Tr Ur Vr Wr Xr Yr Zr [r ^r _r `r ar br dr er fs gs is js k s l(s m0s n8s p@s qHs rPs sXs t`s uhs vps wxs xs ys zs }s ~s s s s s s s s s s s s t t t t  t (t 0t 8t @t Ht Pt Xt `t ht pt xt t t t t t t t t t t t t t t t t u u u u  u (u 0u 8u @u Hu Pu Xu `u hu pu xu u u u u u u u u u u u u u u u u v v v v  v (v 0v 8v @v Hv Pv Xv `v hv pv xv v v v v v v v v v v v v v v v v w w w w  w (w 0w 8w @w Hw Pw Xw `w hw pw xw w  w  w  w  w  w w w w w w w w w w w x x x x  x (x 0x  8x !@x "Hx #Px $Xx %`x &hx (px )xx *x +x ,x -x .x /x 0x 1x 2x 4x 5x 6x 7x 8x 9x :x ;y <y =y >y ? y @(y A0y B8y F@y HHy IPy JXy K`y Lhy Mpy Oxy Py Qy Ry Sy Ty Uy Vy Wy Xy Yy Zy [y \y _y `y ay bz cz dz ez h z i(z j0z k8z l@z nHz oPz rXz s`z thz vpz wxz xz yz zz {z |z }z z z z z z z z z z z { { { {  { ({ 0{ 8{ @{ H{ P{ X{ `{ h{ p{ x{ { { { { { { { { { { { { { { { { | | | |  | (| 0| 8| @| H| P| X| `| h| p| x| | | | | | | | | | | | | | | | | } } } }  } (} 0} 8} @} H} P} X} `} h} p} x} } } } } } } } } } } } } } } } } ~ ~ ~ ~  ~ (~ 0~ 8~ @~ H~ P~ X~  `~  h~  p~  x~  ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~  " # $ %  &( '0 (8 )@ *H ,P -X .` /h 0p 1x 2 3 4 5 6 7 8 9 < = > ? A B C D E F G HHHa,HtH5/%/@hfhfhfhfhfhfhfhrfhbfh Rfh Bfh 2fh "fh fhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfh fh!fh"fh#fh$fh%fh&fh'rfh(bfh)Rfh*Bfh+2fh,"fh-fh.fh/fh0fh1fh2fh3fh4fh5fh6fh7rfh8bfh9Rfh:Bfh;2fh<"fh=fh>fh?fh@fhAfhBfhCfhDfhEfhFfhGrfhHbfhIRfhJBfhK2fhL"fhMfhNfhOfhPfhQfhRfhSfhTfhUfhVfhWrfhXbfhYRfhZBfh[2fh\"fh]fh^fh_fh`fhafhbfhcfhdfhefhffhgrfhhbfhiRfhjBfhk2fhl"fhmfhnfhofhpfhqfhrfhsfhtfhufhvfhwrfhxbfhyRfhzBfh{2fh|"fh}fh~fhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfh Rfh Bfh 2fh "fh fhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfh fh!fh"fh#fh$fh%fh&fh'rfh(bfh)Rfh*Bfh+2fh,"fh-fh.fh/fh0fh1fh2fh3fh4fh5fh6fh7rfh8bfh9Rfh:Bfh;2fh<"fh=fh>fh?fh@fhAfhBfhCfhDfhEfhFfhGrfhHbfhIRfhJBfhK2fhL"fhMfhNfhOfhPfhQfhRfhSfhTfhUfhVfhWrfhXbfhYRfhZBfh[2fh\"fh]fh^fh_fh`fhafhbfhcfhdfhefhffhgrfhhbfhiRfhjBfhk2fhl"fhmfhnfhofhpfhqfhrfhsfhtfhufhvfhwrfhxbfhyRfhzBfh{2fh|"fh}fh~fhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhfhfhfhfhfhrfhbfhRfhBfh2fh"fhfhfhfhfhfhf%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD%~ fD%v fD%n fD%f fD%^ fD%V fD%N fD%F fD%> fD%6 fD%. fD%& fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD%~ fD%v fD%n fD%f fD%^ fD%V fD%N fD%F fD%> fD%6 fD%. fD%& fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD%~ fD%v fD%n fD%f fD%^ fD%V fD%N fD%F fD%> fD%6 fD%. fD%& fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD%~ fD%v fD%n fD%f fD%^ fD%V fD%N fD%F fD%> fD%6 fD%. fD%& fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD% fD%~ fD%v fD%n fD%f fD%^ fD%V fD%N fD%F fD%> fD%6 fD%. fD%& fD% fD% fD% fD% fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfD%nfD%ffD%^fD%VfD%NfD%FfD%>fD%6fD%.fD%&fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%fD%~fD%vfDH?HtH`ÐH?HtH`ÐUHAUATSHQLoL'M9tI<$HtHPIH;HtHsZ[A\H)A]]X[A\A]]ÐUHSHQH8H;{0tH{H;;tZ[]X[]ÐUHAWAVAUATSHHw@H0Hk7C(us(H{HCuetLcHLHEL9etI$H=t<HhL"H}<HEdH+%(uH2H?HtH`ÐHHH(HEdH+%(uH8HPHHHHH2H fHH(H9tHEdH+%(uHgH8&HPHyHhLHEdH+%(uH dLHEdH+%(uH@LHEdH+%(uHLLHEdH+%(uHLHEdH+%(tLHEdH+%(tLHEdH+%(tHHdHEdH+%(tHHBHEdH+%(dL5HEdH+%(GaH}%LLH}HEdH+%(uHL\LLM9HHH)HHPH`H9tH`HphH0H@H9tH@HpEHH H9tH Hp"HHH9tHHpA$I$HA$I$HsLHJHX>H`2HEdH+%(HGLOHGHHt:E1HLMI݉D9LLHHtHPHhu4LLHHtHPHHPHh0I>IFH9t IFHpI LULH7LHHHPLJHt>Ht8HH{HpHtHHxRHxHߺHIL UHSHP ZH߾ []H?HtH`ÐHHtHwHH)HHtHwHH)}HHtHwHH)eHHtHwHH)MLHEdH+%(uHXLHEdH+%(uH4H?HtHHr#H@H9u L8HL8HH=iP3H=i?3H{'HEdH+%(uL@LHEdH+%(uHvLNHHHHHEH@HH9tHEdH+%(uHH|LHaHQHYHP H1NH0LHPHHL`HLI~ VLNLH58LN8LqHEdH+%(CH}HEdH+%(uHcHHEHhHhHEdH+%(uL(L@5HCHPLPHLHHsHEdH+%(uBL|LDH(HEdH+%(uHQ謵L蝵L4HCHPLPHLHHHEdH+%(uBLL蹿H( HEdH+%(uH!L艿HzHHEdH+%(uLH3ID$LPLPHCLHH(HEdH+%(uH1茴UHSQH_Ht*H{HCH9t HCHp/ZH߾0[]X[]H_3HHHPH@HPHHHHHEdH+%(u7HHMHHEdH+%(u HZ赳谳LHEdH+%(uH1茳HHHؽH̽HHEdH+%(uH4Hx蘽HL腽HHHkLcL[HOHEdH+%(uUHhHh,Hx HhHxHHEdH+%(tvHxڼHhμHH¼Hp趼:HH襼Hh虼Hx荼Hh|HxpH`_LWLHhSHEdH+%(uH\H` 話H@轵HPHHHH@H1HHH8HHHEdH+%(uHٿ锿*L蒻HEdH+%(uHLnHEdH+%(uHLJHEdH+%(uHc辰L&HEdH+%(uH?蚰H}HEdH+%(u(HH}HEdH+%(u^HULHEdH+%(u+OʾHLHEdH+%(u)HHEdH+%(u+HwHHEdH+%(u HT误誯H`H}LxI@IHEdH+%(uHHXH}IHHt UHAUATSQuHLLM9t"I<$ID$H9tID$Hp賽I HHtHH)蒽LLM9t"I<$ID$H9tID$HpcI HHtHH)BLLM9t"I<$ID$H9tID$HpI HHtHH)LLM9t"I<$ID$H9tID$HpüI HHtHH)袼LkxLcpM9t"I<$ID$H9tID$HpyI H{pHtHH)[H{PHC`H9t HC`HpAH{0HC@H9t HC@Hp';tH kVH5H=ZH߾[A\A]]X[A\A]]ÐUHSQuHuZH߾[]鷻X[]ÐHhFHEdH+%(uH_躬HXHEdH+%(uL7蒬HHtHwHH)GLHHHL貶L誶{ xH薶L达LLLHI9tL/跺LHHHH{PH{ LIH|HHHHHL9t=L8L@LLHHX袵HLHL|HEdH+%(L蓽HTHHHeLM H2HHCHH`HHH輺HHHHHHvH 誴LrH(HSHIH8H8HqgHVHhHUKHd:HHtH`HtQL@SHݳH`HtGuHPL@LPML@LL@ܷHjH^HRHHHHHH#HHLH H0HEdH+%(LHIŲH蹲bHL衲JH萲HHLxHnHbLIUHK0u!HLHHHt<8腱HHBaIHPH81HбHL轱fH謱IHH=`HLH 3IHH1HTHHHHHpHH)HtuHHH{pH{P谔H{(Hs8H)Ht;LH`ưHL賰L諰HL 蘰L萰HLe耰LxHlH`HTHHHH2H&HHLHpHhHxL۩HHLũH蹩H譩H衩H蕩H艩HyHqHEdH+%(H膱LNHBHL/HHOHHHHHLبH HH质HEdH+%(C,L蔨H舨H|HHH]HQLIH=H1 H%HHH9HLLHڧLҧHƧH躧HHLL蘧H芧L肧HvHj@HL±HHr1HIIMM9I LLLL_HHܦHЦH迦H賦L諦H蟦HHH耦HtLLeHTLLH@HaH-H!LLHHHHHѥHťH蹥LL襥LL蔥HHuHiH]xHLH@H4H(HH+HHLHդHɤH轤H豤H襤H虤H荤H聤(HpLhH\LLHLL7H&HHHHLLNH֣HʣL£H趣HH螣tLL芣H|HpHdL\HPHDH8H,H HH@HLJHHܢLԢHȢH5H諢L裢H蒢H膢HzHnHbLZHIH=H1H%LLLLLHLܡHˡLáH財H覡H蚡L蒡{LL~5HmHaHUHIH=H1H%HH HLHHpHhՠLMŠL轠H&HHHLϨLHEdH+%(uH诨 LHEdH+%(uH苨LzHEdH+%(uHg•H&HHHEdH+%(uH'肕LLH֟HʟHHHHlHEdH+%(uHŧ HDHEdH+%(uH蝧H(\HPHDLHHLFH(gHL谞[61HIH(IIH(I9L#HgH([H(sL@HL-HHH(AI)H(IIH(I9tI LНI L.1H覝H(蚝HIH(IIH(I9_LH(LrH(rL8HL%1HLyHLaH(H(ϜHH赜H(詜AI)H(IIH(I9aI LqHcH(WHIH(IIH(I9I L!1ɸmI L1UHLL9LLMLhML8MLMHHH9tHHpןH+H{xHH)Ht賟Hs0H{ LnL7葟L?IuL͚M}L0lM1I}~MuL(JMI}~MuL((M I}w~MuL(MLH}HEdH+%(u.H衢I$LPLaH߾8L譞֏H:HEdH+%(u*HSH`H HEdH+%(t茏UHAUATSHQLoL'M9tI<$HtHPIH;HtHsZ[A\H)A]]X[A\A]]ÐH% H}HEdH+%(uH謡H% H}HEdH+%(uH|׎H}HEdH+%(uHV豎H% L:HEdH+%(uH'肎H% H}5HEdH+%(uHSH% H}HEdH+%(uHȠ#轜H9]tL}L{LH HEHEdH+%(u H詨HEdH+%(uHb轍L(HGHHHH@L(#N, L葑ID$LL1HH՚HHH趧Hx蚗HEdH+%(uH賟L苛HhHLUH HL?H3H'HEdH+%(uH@H荌H}IHEdH+%(uH gH% LHEdH+%(uHݞ8L蠖H蘖H茖HEdH+%(uL襞HmH^HTLJHBL8H0H"HLHiHHLHٕHEdH+%(uHWH複蟇H(LH}HHHEdH+%(u#HH‘HEdH+%(t>HH蛑HL萑H 脑HxH(lLdH0XYLKHHHGL0:L#$H(L H} HHHHLԐHEdH+%(uHHL谐HEdH+%(uHɘ$L茐H耐H}HEH9t HEHpƔHUHEHt9HHuHEdH+%(襚HHpUHE1HUHtHpHHPH`H9tH`HpAH0H@H9tH@HpHH H9u?HHH9tHHpHEdH+%(uH街H Hp輓H}QHEdH+%(u.HjLLp+L!HEdH+%(t蟄HpHLHEdH+%(u'HHPˎLÎH}躎CHp觎H蛎HP荎L腎H}|LL0kH}bgHL0JOH9H}05HPLH}HPLH}LL0؍HPʍLH}蹍HL0衍cLL0荍LL0|LL0kLL0WHPFL>L0HEdH+%(u'HILHEdH+%(u H*腂耂 LCL^HEdH+%(u'HH輌HEdH+%(uLՔ0L蘌HEdH+%(uH豔 LtLlH}cH苔LRLJH{ALiL0L(H}HGLLLH&LHEdH+%(uHbLʋHEdH+%(uH>L見HEdH+%(uH迓L肋HEdH+%(u'H蛓LcHEdH+%(u H|׀ҀH{L6H(*H HEdH+%(u;H7H{HEdH+%(uLrH0֊_HpŠHEdH+%(uHے6L螊HEdH+%(uH跒LzHEdH+%(uH蓒LVHEdH+%(uHoLM/L'HHEdH+%(uL8LHEdH+%(t|HH@؉LЉHXĉHEdH+%(u-HݑH@衉L藉HEdH+%(tH@wLmH@a돐LVHEdH+%(uHo~Hh.L&HEdH+%(uH?H}~LHEdH+%(uHj~L҈HEdH+%(uHF~H誈HhLP藈L菈Hp胈HwHkLcHEdH+%(u7H|Hp@H4HL}LHEdH+%(uH)}LHEdH+%(uH`}LȇH輇H0谇HEdH+%(uHɏL葇}HLwLoH cHWH(KH?H03H}*H@HEdH+%(uH7H|HHH@H(̆HHp貆HH@uHp蓆Hp臆XLzHEdH+%(uH蓎{LVHEdH+%(uHo{H{L.H`H@H@ĄHEdH+%(u H-LH`H@p{H{ׅHEdH+%(uLK{H{L讅H`HHHHDHEdH+%(u$H譍HHqH`HHzH{SHEdH+%(uLlzHH*HEdH+%(u\HCL H0HHHIHHIIHHI9t$I LJzH8 H UHEdH+%(uH趌z1돐LtHEdH+%(utHX2tHEdH+%(uHK|iLtHEdH+%(uH'|iLsHsHEdH+%(uL{ViqH52HHZwHoHHEdH+%(usHX2sHEdH+%(uHK{hLsHEdH+%(uH'{hH{rHprHEdH+%(uLzQhHHEdH+%(uLz,hLHEdH+%(uHzhLprHEdH+%(uHzgLLrHEdH+%(uHezgH}'rHprHEdH+%(uH4zgHpqHEdH+%(uH zfgLqHpqHEdH+%(uHy6gLqHEdH+%(uHygLzqHEdH+%(uHyfLVqDmHEdH+%(uHgyfL*qHEdH+%(uHCyfLqHEdH+%(uHyzfLpHEdH+%(uHxVfLpHEdH+%(uHx2fLpHppHEdH+%(uHxfLjpHEdH+%(uHxeLFpHEdH+%(uH_xeL"pHEdH+%(uH;xeLoHEdH+%(uHxreLoHEdH+%(uHwNeLoHEdH+%(uHw*eMtL{HEdH+%(u'HwLnoHEdH+%(u HwddHHP9oL1oH)oHt Hs{Ht H]{HnHEdH+%(u@L wHHPL0HnHL0ni-dLnHEdH+%(u'HvLunHEdH+%(u HvccLLnHEdH+%(u'HevL-nHEdH+%(u HFvccLnHEdH+%(uHvxcH(mLH HEdH+%(uHuaLfHEdH+%(uHsaLkHEdH+%(uHs`UHATISH_Ht[HKHSHH9u1HHCHPHHP*Hl8t CPSuH[I|$A\]lH5[ )HEdH+%(uH5: C`} Hu H}ݍHEdH+%(uHr`AH5HyHDH5HHtHwHH)nHHtHwHH)wnH} jHEdH+%(uH&r_LiHEdH+%(uHr\_LiHEdH+%(uHq8_UHAUATSHQHxHtoLkhLc`M9tI|$Ht It$H)mI H{`Ht HspH)mH{HHt HsXH)mH;HtHsZ[A\H)A]]zmX[A\A]]HHtHwHH)WmUHAUATSHQLoL'M9tI|$Ht It$H)"mI H;HtHsZ[A\H)A]]mX[A\A]]ÐUHAUATSHQHxHtnLkhLc`M9tI|$Ht It$H)lI H{`Ht HspH)lH{HHt HsXH)lH;HtHsZ[A\H)A]]jlX[A\A]]HHtHwHH)GlUHAUATSHQLoL'M9tI|$Ht It$H)lI H;HtHsZ[A\H)A]]kX[A\A]]ÐUHAUATSHQLgMt3I|$ID$M,$H9tID$HpkL8MkHCH;H 11HCHCZ[A\A]]HEdH+%(uH5x F\} Hu H}} u H} HEdH+%(uHn@\H5ټH5H5GHEdH+%(uHH5޺ LTHEdH+%(u Hmn} HuH}g[LHCHPLPHiLHHuHEdH+%(uBLnLeH( wHEdH+%(uHm4[Le%[L=HCHPLPHhLHHpuHEdH+%(uBLymLAeH(vHEdH+%(uHNmZLeZHpdHdHxHtHhH\LHEdH+%(ueHlHdHHtDHL@fHHtHL@e`YH8HtHL@eVHHtǁHL@e!HpcHcH}cH}cHpcHcLcH`cHHHH(H@H D9DH0HEdH+%(uNH5 1L0HpNLHEdH+%(uHVHqCCHH&NHEdH+%(H5L0IHEdH+%(u&H51L0%H qTOCHEdH+%(uH5٥L0#CHEdH+%(uH5eL0BBHEdH+%(uH51BLHL0*MH(MH8 MHEdH+%(u'H%ULLHEdH+%(uLUaBHEdH+%(uHEdH+%(uH5 1L >HQMHEHC(Y?M8LbMYHQYH}HL8;MHQH'YHPH}HHHLHHHHEdH+%(uVHPHrHHfHHEdH+%(u"HPHCHH7H==HEdH+%(uH5[=H}GHGLGHGHEdH+%(uVHOHGHGHEdH+%(u"HOHGHG==HEdH+%(uH5IvH)HtKHNH}FHFHEdH+%(uLN;A3H]FHQFHEFH 9FH0-FH@!FHPFH` FHpEHEHEHEHEHEHEHEHEHEHEH yEH0mEH@aEHPUEH`IEHp=EH1EH%EHEH EPL)Lk(MM9?HEdH+%(mH MAGVAHKIUH(H;HC0HsH9t HHLLeI(LDM9uAPHmDHaDHUDHXIDHh=DHx1DH%DHDH DHDHCHCHCHCHCHCH(CH8CHHCHXCHh}CHxqCHeCHYCHMCHACH5CH)CHCHCHCHBH(BH8BHHBHXBHhBHxBHBHBHBHBHuBH`iBHp]BHQBHEBH9BH-BH!BHBH BIXRHPA8L?F"FHHHC(HEdH+%(uFfRI(LAAPE8LEHEdH+%(7A4A5A5A6A6A7A7A8A8A9A9A:A:A;A;A<A<A=A=A>A>A?A?A@A@AAAAAB{AB|ACqACrAAHAIAIAJAJAKyAKzA4OA,PA-EA-FA.;A.5,UHAWAVAUATSHH(HGL'HEL9eM,$MAt#IIH9tIHp:MMt/IIGM7H9t IGHpx:L8Mh:IIH 11IIIIIH9t H:IExMupHEL9utXIF0M~(HEL9}tLIǠ8I~(Ht Iv8H)9I~INH9t IFHp9I@I}pHtIH)9I}@IEPH9t IEPHp}9I} IE0H9t IE0Hpc9I}IEH9t IEHpI9L<9INH;HtHsH([A\H)A]A^A_]9H([A\A]A^A_]ÐIDL7H{(@L|4HEdH+%(u}L<8HtRHiH8HEdH+%(u@DV8LM9tLIƠ{748Ll7Hu{)8MuH]H{(菾H{3uDLLH8HDH;L3HEdH+%(u$H;L7HEdH+%(t(H}W3LO3A|$Xt I|$`lI|$CLHEdH+%(uHD;(L38LZ7HEdH+%(uH;n(L2LޯHX"DHEdH+%(u1H:L2Hp2HL2 (L%H@H8HPH@HPHe5H0HHFBHEdH+%(uHO:'L2L 2H1H1H,kH{H1HEdH+%(uL9I'H1{XtHj볐L1L1H|1Hp1HjH{kHHEdH+%(u0Ll9L41H(1{XtH\j&H18LV5HEdH+%(u1H98L25HEdH+%(uH8F&A&{ tL0L8{ptL0{Ht H{P}0{ t H{(n0L8{HtLX0HJ0L1HEdH+%(ulL[8I@HH0HH@H@/HHtMH0/HEdH+%(R%HEdH+%(uH5$ } Iu H}RH0{HxLXLpM9I}I3HEdH+%(uH5 {} Iu H}UR` u Hp@RHH0HH@SL73HEdH+%(j?H8H0H42I>L2H8H0H421H0H8HEdH+%(>Hx5HHEdH+%(uLH6HxHEdH+%(t#H} HxHxLHEdH+%(uH5L HEdH+%(t.#H}Hxw뮐1,>I=L1HCH;H411HHC=H=Hb5;uD+HEdH+%(uF5"H{-HEdH+%(uL 5{"H{,HEdH+%(uL4U"H{,HEdH+%(uL4/"H{,HEdH+%(uL4 "H{o,HEdH+%(uL4!H{I,HEdH+%(uLb4!H{#,HEdH+%(uL<4!H{+HEdH+%(uL4q!H{+HEdH+%(uL3K!H{+HEdH+%(uL3%!;uD#HEdH+%(u3!/L{(<H;H3HJ+HdH%(HE1HH6DLL%"He5L]HH5{L DHD5LL9HHH5HHCL HLHHH5H@H HHCHHH?HHH5NHhH@HHNCHHpHHH5HH`HH CHHHHH5HHHHpBHpHsHHH5HHHH`BH`H/HHH5FHHHHP>BHPHHHH5H0HHH@AH@H8HHH5HXHHH0AH0H`cHHH5HH HH rAH HHHH5AHH@HH.AHHHHH5HH`HH@HHHHH5HHHH@HHSHHH5H HHHb@HH(HHH5<HHHHH@HHPHHH5HpHHH?HHxHHH5HHHH?HHCHHH5zHH HHR?HHHHH57HH@HH?HHHHH5HH`HH>HHwHHH5H8HHHp>HpH@3HHH5vH`HHH`B>H`HhHHH53HHHHP=HPHHHH5HHHH@=H@HgHHH5HHHH0v=H0H#HHH5rHH HH 2=H HHHH5/H(H@HH<HH0HHH5HPH`HH<HHXWHHH5HxHHHf<HHHHH5nHHHH"<HH HHH5+HHHH;HH HHH5HHHH;HHG HHH5HHHHV;HH  HHH5fH@H HH;HHH HHH5&HhH@HH:HHp{ HHH5HH`HH:HH7 HHH5HHHHpF:HpH H HH5bHHHH`:H`H H HH5"HHHH9HHk H HH5H0HHHz9HH8' H HH5HXHHH69HH` H HH5^HH HH8HH H HH5HH@HH8HH[ H HH5HH`HHxj8HxH H HH5rHHHHh&8HhH H HH5]H HHHX7HXH( H HH5HHHHHH7HHHPK H HH5HpHHH8Z7H8Hx H HH5fHHHH(7H(HH HH5\HH HH6HHH HH5HH@HH6HH;H HH5HH`HHJ6HHH HH5ZH8HHH6HH@H HH5[H`HHH5HHhoH HH5HHHH~5HH+H HH5HHHH:5HHH HH5NHHHH4HHHHH5ZHH HH4HH_HHH5H(H@HHn4HH0HHH5HPH`HHx*4HxHXHHH5BHxHHHh3HhHHHH5YHHHHX3HXHOHHH5HHHHH^3HHH HHH5HHHH83H8HHHH5HHHH(2H(H HHH5H@H HH2HHH?HHH5HhH@HHN2HHpHHH5tHH`HH 2HHHHH55HHHH1HHsHHH5HHHH1HH/HHH5HHHH>1HHHHH5xH0HHH0HH8HHH59HXHHH0HH`cHHH5HH HHr0HHHHH5HH@HH.0HHHHH5|HH`HHx/HxHHHH5>HHHHh/HhHSHHH5H HHHXb/HXH(HHH5HHHHH/HHPHHH5HpHHH.HHxHHHH5?HEH.HEHHH@BH 1H HEH{ HC0HCHHCHCC ?HC(HC0IH9CsDHHL9N,LL1HIHH LcMH{MuI}LcMHM$$MsM9t$uIt$MtHL3uI(HEI9uL@ fII<$ID$H9tID$HpQID$M9uH H H HX Hh Hx H H H{ Ho Hc HW HK H? H3 H' H( H8 HH HX Hh Hx H H H H H H H H Hs Hg H([ H8O HHC HX7 Hh+ Hx H H HHHH`HpHHHHHHHwHkH_HSH GH0;H@/HP#H`Hp HHHHHHHHHHH H0{H@oHPcH`WHpKH?H3H'HHEdH+%(HĘHH[H=A\A]A^A_]qHiL LC1IIH{HIHLMM2LLMMMIIIN0,DI6H,HN01MHII9II9uIPI;VuLHt3I8IvLHLPLPLHLuLMMMI:If.8&IHxH@IuH@IUIFHHPXIE HSH{ HsIF(HC(HHHuBHH3Mf0H HH4HIHL0HCMMMRH^HHH9SHHHH@H1HIHs1L1HCLKHuOfDIHHHHt8H1H6HA0IILMuL[LHKLH9tI HH;HS0HCH9tH4LLHL1LHHKHHCLsIHtH@01HsL4HCH1HK0HK0SHL9sFHEdH+%(u_1LC0HS0HH9s(HEdH+%(u-tHEdH+%(u HEdH+%(u HHuHtIHQI'HnHH;HH{HH7HHwHMHHH1HIHHH-HHH"HHHHHHH<HH|HH8HHxHwHvHuHtHsHrHqHpHoHnHmHlHkHjHiIHcHbHaH`H_H^H]H\H[HZHYHXHWHVHUHTHSHRHQHPHOHNH%HAHEHeHCHcH H@HH>H=H<H;H:H9H8H7H6H5H4H3H2H1H0H/H.H-H,H+H*H)H(H'H&H%H$H#H"H!H HHHHHHHHHHHHHHHHHHH HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHUHHHAWLAVAUATSHGHGLL HG(HEH9IH1Ht[Me LsH3IL$(LI|$ L9HFH%HMuHEL)H=H=HL IHtZM9HˆUtqHIHx H@0H3HSIF H:HC }LLLIF@IE(H(H9]tIE( H[A\A]A^A_]LsIL$(H;It$ I9HIFHtHMHMȅuI)IKI|KDE;1!HL)H=H=EM9 EEHH,ff.@UHAWL=gSAVLL5{SAULATLL% SH6HHdH%(HE1xHHVLHH|LLHNHgLHHyLL= LLLLHQLL5GLLLLH.H5LH=HFFHFHFHF HF(L5LH5nLLHLL5tLHHLH5H\H[HH(H5`(H 4HsHHPH5 HH H-vHHxH5*HpḦ́HH}H5+HEH={H<H޺HEL}I(I?IWH9t IGHpI9uH5/L= LLLH5aHKL-HHH LFHLLLPLXHtqLJHt+HEdH+%(u[H[A\A]A^A_]nT1e18NHEdH+%(uH1[A\A]A^A_]O,III!I'I"IIH=HH9tHHt H=yH5rH)HH?HHHtHeHtfD=5u+UH=Ht H=d ]w1ÐÐf.fDÐf.1fuH71ÐuHU1HSHHHuHdH%(HE1HC GGGHCHEHUfoHCHS @ntedHCHSHEdH+%(u HH]fU1HSHHHuHdH%(HE1HC GGGHCHEHUfotHlementedHCHS HHHCHSHEdH+%(u HH]fH HW HwPGfHnHG@flHOH fHnHO flHO(GHG0H9rHUHff.UHAWAVAUIATISHFH9FDAD$HA9D$DMu8M;u00AE@Mr\IM9uI\$I;$AD$L4I9L9tf.H;HI9uH[A\A]A^A_]M9tID$0HEM9IL$I$IH9HLH;I|$8ID$0H9H}HI|$8IT$0H9AT$@HH9RIFI9EL9H8IrHI9H8IsI9I@A|$HH9u_DHH9MH;uH_EL$DMINL91HHDHI9tWHH9uAT$DH6IL$I9 $AT$HH9H;HAD$DHtHHI|$8Al$HIT$0E;T$@AET$DIIT$0I|$8J L9DL9IMIEL;H9LLHL;8IL$I$H9LL"L;8fHCI9L9H8HrHI9H8HsI9ao@AuHH9uwfDHH9dL;8uHIMI;MAUHH9a-@A|$HH9uEDHH93L;8uH IL$I; $#AT$HH9L;8HAD$HNHH9tVHiLHH9IMI9MAUHH9H[A\A]A^A_]AEDMH'HHnHnHnHnHnHnHnHnU?H5H=nHgfD@UH H5nH=nHYUHSHHChHHXH9t HChHpH{ HC0H9t HC0HpH;HCH9tHsH]HfDH]fǧfDHGhH@(Htf1Ðff.UHmHrHAUATLeLmSHLH8dH%(HE1LmH{pL貿H}IL9t HEHp)HxI9t ID$PHUdH+%(uH8[A\A]]Ð1'HtRf1Ðff.UH5mHrHAUATLeLmSHLH8dH%(HE1LmH{pLH}IL9t HEHpiHxI9t(ID$PHUdH+%(uH8[A\A]]1_ff.@HtBf1Ðff.HH+HfHtfHUHAWAVAULmATSHHdH%(HE1LmHHHLuIHEIHHurAULHEH(L豾H}IL9t HEHp(H0I9ttID$HI+D$@HHUdH+%(uvHH[A\A]A^A_]HugLfDLHu1HEHHEHELLHEHUS1HEdH+%(u H=Lff.@Htf1Ðff.UHAWAVLuAUATSHXdH%(HE1HELuHEH HHIIBHEIHHAULHEHuH(5H}IL9t HEHpH0I9IT$@ID$HH)HI9svIJ*HUdH+%(ucHX[A\A]A^A_]HuoLvH}Hu1!HEHHEHELLHEHU=f.17HEdH+%(uH=a LHtf1Ðff.UHAWAVAUATSHHLH]ML&L~MvMtTMn(LM9IFHtI~ Lu!LL)H9}HH9~ȅxLMvMuHH9]tILk(LM9IFHtHs LuMM)I,I|DȅyHH[A\A]A^A_]fDHC@H[A\A]A^A_]DUHAWAVAUATSHHdH%(HE1HLmILuLmHIHHEHHwsHu]AULHELL`H}HL9t HEHpHEdH+%(uiHHH[A\A]A^A_]fDHulLfDLHu1HEHHEHEHLHEHUhHHEdH+%(uH=LH1ff.HHH)HH9sH@ f.f.Htff.UHSHHHH]H{ff.UHAWAVAUATSHHdH%(HE1HLmILuLmHIHHEHHwsHu]AULHELLPH}L9t HEHp(HEdH+%(|HH[A\A]A^A_]@HugLfDLHu1HEHHEHEHL(HEHUhHEdH+%(u H=LHzfHHH)HH9sH@(f.f.Htff.UHSHHKHH]H{ff.UHAWAVAUATSHHdH%(HE1HLmILuLmHIHHEHHwsHu]AULHELLPH}L9t HEHpXHEdH+%(|HH[A\A]A^A_]@HugLfDLHu1HEHHEHEHLXHEHUhHEdH+%(u H=>LHfHH1H)HH9sHHP@H@Htf1Ðff.UHSHHHH]Hff.UHAWAVAUATSHHdH%(HE1HLmHLuLmHIH HEIHwcHULHELLMH}HL9t HEHpHEdH+%(ubHHH[A\A]A^A_]LHu1BHEHHEHELHHEHU{1@Hu(LcNHEdH+%(uH=x#LH1fHHH)HH9sH@Hf.f.Htff.UHSHHHH]H{ff.UHAWAVAUATSHHdH%(HE1HLmILuLmHIHPHEHHwsHu]AULHELLPH}L9t HEHpHEdH+%(|HH[A\A]A^A_]@HugLfDLHu1bHEHHEHEHLHEHUhHEdH+%(u H=YdLHfHHH)HH9sHHf.1ff.fHtf1Ðff.u&HHH)HH9s HH@P1ff.fHtf1Ðff.UHSHHHH]H{ff.UHAWAVAUATSHHdH%(HE1HLmILuLmHIH HEHHwsHu]AULHELLPH}HL9t HEHpHEdH+%(udHHH[A\A]A^A_]fDHugLfDLHu12HEHHEHEHLHEHUh1OHEdH+%(uH=y$LHzfu&HHH)HH9s HH@p1ff.fHtf1Ðff.UHSHHHH]H{ff.UHAWAVAUATSHHdH%(HE1HLmILuLmHIHPHEHHwsHu]AULHELLPH}HL9t HEHpHEdH+%(udHHH[A\A]A^A_]fDHugLfDLHu1bHEHHEHEHLHEHUh1HEdH+%(uH=TLHfHH1H)HH9sHHP0H@Htf1Ðff.UHSHHHH]Hff.UHAWAVAUATSHHdH%(HE1HLmHLuLmHIHHEIHwcHULHELLMH}HL9t HEHpHEdH+%(ubHHH[A\A]A^A_]LHu1HEHHEHELHHEHU{1@Hu(Lc边HEdH+%(uH=LH1fHH1H)HH9sHHP8H@Htf1Ðff.UHSHH;HH]Hff.UHAWAVAUATSHHdH%(HE1HLmHLuLmHIHHEIHwcHULHELLMH}HL9t HEHpDHEdH+%(ubHHH[A\A]A^A_]LHu1HEHHEHELHXHEHU{1@Hu(LcHEdH+%(uH=(LHfUHHHSHhdH%(HUHHH)HH9HH}HMHLEHH}HMHULE}EtEH}1ۅx1HEH9t HEHpHEdH+%(uCH]@HHHHH1蝶H}fԶHEdH+%(uH@Htff.UHHHSHhdH%(HUHHH)HH9HH}HMHLEHH}HMHULE}EtEH}1ۅx1HEH9t HEHpHEdH+%(uCH]@HHHHHH1]H}f蔵HEdH+%(u`H@Htff.UHSHXLdH%(HE1HL)HH9IHUHMHHH}HMHU}EtEH}1ۅx-HEH9t HEHpHEdH+%(u?H]HqHH~HH1-H}fdHEdH+%(u0Hx@Htff.UHSHXLdH%(HE1HL)HH9IHUHMHHH}HMHU}EtEH}1ۅx-HEH9t HEHpWHEdH+%(u?H]HAHH|HH1H}f4HEdH+%(uHn@Htff.։Dff.։UHуHHfodH%(HE1) foՄ)0foք)@foׄ)Pfo؄)`foل)pfoڄ)Efoބ)Efo)Efo)Efo)Efo)EfoEHcvnI(\(fDHHHIHIHILHHH)HLAHD! FDNBH'wA0H vH !G HEdH+%(uCUHATISHH HcHH'HKY8m4H DH?BvWHvVHvUHHHH HwHCH1HH;sLH[A\]ppp뺾볾묾륐fDUHAWAVAUATSH8H}dH%(HE1H?HHIHP(HEHPL HLHUL9A@HEH}H LhHHEHtHPHLuHP IL$HLHHtHHHuI<$LuLH}A!HtHPI L9eeHEHEu)LHLHEL9)L (HLHEL9L=HEH}L8LhHEHtHPHLuHP IL$HLHHtHHHuI<$LuLH}HtHPI L9eoAHEdH+%(H8D[A\A]A^A_]@HHHuI<$LH}HtHPI L9etHEH}H5LhH0HEHtHPHHP IL$HLHHxp 膭H Ͻ6H5H= GHHHH3HLH_ff.UHAWAVAUATISHH dH%(HE1HHHHHHH`HHTHHH.HƅhHHfoH 11HpLHL$oL$ 3H h HHH HHͯLHLLHLLLLHHHH1HHH`ƅ`HHPHPHDžXHHHpE11HPHHH謴8HpHxHLHHHL9HHHHxLqHx HLxHDžƅfLHxH9kHPHHP fp0HHHHHDžƅHH;kHHHHxL9tHHpHPHH9tH`HpθH H=H5H H P 1!ЉHH H9HLyA$H@HHHHLI9LfDH3LLtvH3HLLHPHLL边H3HLL蹕HL:HH;t腿HH;tpHI9kMt$t7I\$ E1L9t!H{HID萲H[I9uAƄ$HlHH;tHxH;ptLHI9t#DH;HtHPHI9uHHtHHH)蛶HPH@H4@H 8t|L(HM4IID$H=t:H=t2I$L9t)fIHI}HtHP LL9uID$ IM9t IfD8H(H胨 tJHHL$f.HH=tH=tH{HtHPHI9uՋ HHHH4@HLxHM4IID$H=t:H=t2I$L9t)fIHI}HtHP L޴L9uID$ IM9t IfDHxHSptJH`HL$f.HH=tH=tH{HtHPHI9uՋpH`HHH4@HɦLHM4IID$H=t:H=t2I$L9t)fIHI}HtHP L讳L9uID$ IM9t IfDHH#tJHHL$f.HH=tH=tH{HtHPHI9uՋHH踥@H0H4@H虥(LHM4IID$H=t:H=t2I$L9t)fIHI}HtHP L~L9uID$ IM9t IfD(HHtJHHL$f.HH=tH=tH{HtHPHI9uՋHH舤HEdH+%(He[A\A]A^A_]fDHLƅI9oAHf.H $H5uH=aLƅhAJHq@tAU@t AT5fT3HHLAAAEP AsEBTfBT_fDLHLHHtHPHH9kHHphVI\$ Mt$E1L9tH{HIDH[I9uHLAƄ$I9ANLNLE1EAN N A9rHHP DLLLLLH(HHIL)AH)AAJA1A҃NOD9r,H H5ظH=t@DEH!ЉHH H9E@EP BTBTAUAT5T32HHHHHHHH`HlHf.UHAWAVAUATISHHH dH%(HE1.1LH葳 HHH荟HHH藹H`HHџHHH諢HƅhHH莼foH 11HpLHL$oL$ 谦H h LHL艣HLJHL{LLLiLHLLHYHڪH1LHnԴH m@HHHH;? HHHHpHH躴 HH5HF H9 x 1!HHH9lHLAA$H@HHuHHLI9Lf.H3LLtvH3HLLHPHLL膭H3HLL聉HLHH;tMHH;t8HI9kMt$t/I\$ E1L9tH{HID`H[I9uAƄ$Hb`HH;tͲHxH;pt踲LHI9t#DH;HtHPHI9uHHtHHH)kH迼PH@H4@H88L(HM4IID$H=tBH=t:I$L9t1f.IHI}HtHP LΩL9uID$ IM9IfH`ƅ`HHPHPHDžXH6HHpE11HPHHH80HpHxHLHHHL9VHHHHxLHx HLxHDžƅfLHxH9HPHHP fp0HHHHHDžƅHH;HHHHxL9tHHp/HPHH9H`Hpm8H(H蓚 tJHHL$f.HH=tH=tH{HtHPHI9uՋ HH(HH4@H LxHM4IID$H=t:H=t2I$L9t)fIHI}HtHP LL9uID$ IM9t IfDHxHcptJH`HL$f.HH=tH=tH{HtHPHI9uՋpH`HHH4@H٘LHM4IID$H=t:H=t2I$L9t)fIHI}HtHP L辥L9uID$ IM9t IfDHH3tJHHL$f.HH=tH=tH{HtHPHI9uՋHHȗ@H0H4@H詗(LHM4IID$H=t:H=t2I$L9t)fIHI}HtHP L莤L9uID$ IM9t IfD(HHtJHHL$f.HH=tH=tH{HtHPHI9uՋHH蘖1HUdH+%(He[A\A]A^A_]AH H ɭ$H5H=ޮ術Lƅh聛 LHL趕HHHPI\$ Mt$E1L9t"fH{HID蠕H[I9uHLAƄ$I9&HQ?DD@ .DDfDDHq@5tAU@NHLHL貔HHtHPHH9HHp0LL@ ANLNLL@(IIL)I)c1AOO9rGANLNLCE1EAN N A9r$DEH!HHH9XEu LHAUAT5T3DD@ DDDDAT5fT3KH $H5pH= HRHZHŹHNHȹHNH齹H*H酹H6H6H6ff.UHAUIATSHLgHI9t&H;HCH9t HCHp'H I9uI]HtIuHHH)[A\A]]@H[A\A]]ff.ffDUHAWAVIAUIATMSLHĀtdH%(HE1j裦HEIHEXZMtMHMH]HH}HxHMHHA$UHxHE!fDHEHEHxHEEHMHYHAHLeL`IHhL}MIMd$MtTI\$(LI|$ L9HFHt LMuL)H9}HH9~؅xMMd$MuHhML`L9tBI^(LIv L9HFHt LuMI)I/I|DyH}H]HULH]:UL}IHEMnHIFPtAF@HxI9tHELHpѝHEdH+%(urHEHe[A\A]A^A_]Hu1}HEHHEHEHLHEHU6fDH HxfDI.{I鑶ff.UHAWAVIAUIATMSLHĀtdH%(HE1jHEIHEXZMtMHMH]HH}HxHMHHA$UHxHE!fDHEHEHxHEEHMHYHAHLeL`IHhL}MIMd$MtTI\$(LI|$ L9HFHt L譒uL)H9}HH9~؅xMMd$MuHhML`L9tBI^(LIv L9HFHt LEuMI)I/I|DyH}H]HULH]RL}IHEMnHIFPtAF@HxI9tHELHp1HEdH+%(urHEHe[A\A]A^A_]Hu1ݞHEHHEHEHLCHEHU6fDH HxfDI.ۋIff.UHHAWAVAUATSHHHHdH%(HE1ÐHHHH9H`H*fHHhHEH}HHHEEHuHUHHLuLuL HEHHHHLH}L9t HEHp蕙LMZAD$ I$H@HLHHP:HHH H@HHHL 0M-H(LuHHHHA$ELHIW HMIGHH99HU~EL9"IWIO EAGH,HEHMHEH}L9t HEHpIMo0P#H}HH9t HEHppumHH9to LkLcL)MLAD$ I$HLHPPH`pxH`HtHHPH9uHHtHHH)[HEdH+%(HH[A\A]A^A_]fDHUHEHUHEH#DH@HHPDMI$LPLuIGIO HEEI9OHH91@IGHEH H8HP-HU~EL9IWEAGLuLuLfDH^L,DHH1HEHHHEHLBHHHE HH9t IOLH>H BH55H=^虅H 2mH5H=zIGH9tfH~HHt@f~f~sFfH~ƒtUIO~EfH~qEHEIO^HEHqMHHf~ITHTHf~H)I)ȃr1҉уI<H<9r뉋UATTIO~EvATfTIO~E]蛅HHHH+HHfUHAUATLeSH]HHHVLohHdH%(HE1HLeHH+H}HL<H}L9t HEHp趓HEHtHHUdH+%(u HH[A\A]]軄I駭ff.@UHAWAVAUATSHHdH%(HE1HLmILuLmHIH`HEHHwsHu]AULHELLH}HL9t HEHpגHEdH+%(udHHH[A\A]A^A_]fDHugLfDLHu1rHEHHEHEHLؙHEHUh1菃HEdH+%(uH=dLHfUHAUATLeSH]HHHVLohHdH%(HE1HLeHH;H}HLLH}L9t HEHpƑHEH:HtHP0HEdH+%(uHHH[A\A]]I@UHAUATLeSH]HHHVLohHdH%(HE1HLeHH苀H}HL蜚H}L9t HEHpHEH9HtHPPHEdH+%(uHHH[A\A]]Ih@UHAUATLeSH]HHHVLohHdH%(HE1HLeHHH}HLH}L9t HEHpfHE1HtHPHEdH+%(uHHH[A\A]]eIfUHAWAVAUATSHHdH%(HE1HLmHLuLmHIHHEIHwcHULHELLH}HL9t HEHp脏HEdH+%(ubHHH[A\A]A^A_]LHu12HEHHEHELH蘖HEHU{1@Hu(Lc>HEdH+%(uH=hLH龩fUHAUATLeSH`HHdH%(HE1蟖H [LH{hHP@fHnHPHP HP8H@H@(@8H@@HPHHPPH@XHEHEHEHfHnHEfl)E HEHt LLLkhHELmHChMt^I]@Ht?H{IxI|$(ID$8H[H9tID$8HpȍHL軍HuI}-y`L蠍HEdH+%(u HH[A\A]]~Hu@UHAWAVAUATSH(HHHHHD7dH%(HE1HDžHDžHHHHDžEHHHXAHPHHHHxH(H9C HS0H@HPHHHs(H{H(HSPLhLHhHsHH{ChHH}EClECpECtECxEHEHEHH@H;{L}LHHEHH H@HDžtEƅEL`E0EE87H HHH0HhH MCH`VHIHHHHhH(H LHXML(HLHMHI @MmMtQMu(LI} M9IFHtHX uM)M9}HI9~DxLMmMuHHMHH9qLv(LHF M9IFHtHXH蛀u LL)L9}HH9)ȅHhH9XtH0HXHp訉Hfɋ88mX7zHhH`H H`zHIH> H HH H(HHHLpL8HL(L HL`LIfDMMtQMo(HI I9IFHtH`,uI)M9}HI9~DxMMMuH8IL`HI9tSMn(LIv M9IFHtL~L`u!MM)M9HI9~ DȅHMяLx0IHhL(Lx H H9IF H0IF0MV(LIV HhAF@HL`H HDž(ƅ0SsIIH$ H98tHL`dH8LL$}HH@(L XAF@HhI9tH0LHpHHPHxH tHDHLHtLBHJ9B }HHuH9t;F }$HHtHHGHƋXHF$H H9DHH`LhH HHH0HhH H`@HIH HH HhH(HHH$hH IHhH9tH0Hp莅M9-HH H9tHHpbH}H@H9t HEHpEHhH(H9tHxHp"HHHPH9tHXHpHwzHH9_1H fHEdH+%(aH([A\A]A^A_]fHhH9XH0HXHp腄f0fnfnfnfnH`fbHfbHflfn HHfbHHhfօH H]H`HIH5HH HhH(HLxH HXMFL(HHLHMI MvMtQMn(LI~ M9IFHtHXyuM)M9}HI9~DxLMvMuHMHH9Ln(LHF M9IFHtHXHVyu!MM)M9}HI9dDYHhH9XtH0HXHpbHH}H`HhH oHIHSHH HhH(HLxM< L(L HLLLXMLI MvMtQMn(LI~ M9IFHtHX$xuM)M9}HI9~DxLMvMuILXMHL9tXMh(LIp M9IFHt!LLwLXLuLL)L9}CHH9~ȅy.HHHHLH?L IA@@HhI9tH0LHp芀HhH`H 谂HIHHoH- HhH(HLxMq L(L HLLLXMLI fMvMtQMn(LI~ M9IFHtHXdvuM)M9}HI9~DxLMvMuILXMHL9tXMh(LIp M9IFHt!LLuLXLuLL)L9}CHH9~ȅy.HHHHLH=L IA@DHhI9tH0LHp~HHpX 8uLHXLgr< 7HhH LMHHHHHLMMHIHXDMvMtKI^(I~ I9HHL)H9}HH9~؅xMMvMuMLHM9tCMo(Iw LM9HXtuMM)I7I|Dȅy'HHHxLHx:IfAnO@fLHXsE"@H`0H`0HHH1蛀H HHH0H`LHH HHH1KH HHH0H`L褃HH IHhH9XRH0HXHp|6H`0HHH1H HHH0H`L HH`0HHH1SH HHH0H`L謂HH fI~ I9t IF0Hp{LHM {DHbH`0H`0fDHHH1~H HHH0H`LHH xfHHH1;~H HHH0H`L蔁HH HhrHhMLnHHHH9HXHPHHHHxH`C HS0H@HPHHHs(HhH`HSPLhLHhHsHHhChHH}EClECpECtECxEHEHEHH@HchHhH HpHHEH0HHhH !hL(McLML MH8MLXL(DIG7HtTIMg(I_ LM9HLnuLL)H9}HH9~xIG1HuLIMH8ML(IĄM9gLM^M)I9HI9~DylHD7I9@IHx H@0H H(IE HfHALLfmHL HhI9tH0LHp8wH}H@H9t HEHpwHhH`H9tHxHpvHHHPH9tHXHpvHMlHHH9 HHMEL.LHXLL8mL8xH9LoLXLh Lp(:L8?HhfIBHhHIHtItIv8LHH)H)уHσ01҉уLL9rHhWLLe8pH`HkIHyrH81GfHH H9tHHpDuH}H@H9t HEHp'uHhH(H9tHxHpuHHHPH9tHXHptLj(M9LIFHt/Iq I~ LHL`IkL`LHu"M)1IMI;D5THhAHhTfATDHhHhMt$(LM9It$ HXju!LL)E1H=*H=4AHH9tWIH HXCHpLHSH`H81MdMuLXD7L8WnLH@IH&pH81cATATQHEdH+%(u'H=TsyHEdH+%(uH=9syccf.HEdH+%(uH= syD7cHEdH+%(uH=ryccH遍H鼍HˍH鷍H]H韍H雍HQH鑍H-H铍H镍f.UHHHHHphdH %(HM1H}}HEHtHHUdH+%(ubHtf1Ðff.UHHHHHphdH %(HM1H}{HEHtHHUdH+%(u0bHtf1Ðff.UHHHHHphdH %(HM1H}B{HE1HtHPHEdH+%(uHaf.Htf1Ðff.UHAWAVAH(AUIHATIDSHdH%(HE1Åt(HEdH+%(He؉[A\A]A^A_]@H D ÅuH(L L98H=Gptz}8CH@L(L?HIǹH1ynLpt#}8HA4$1LLc|L(L$nAXLAYA1xADžyLLHIqLDH|HA4$1LL |L(Lm^_AL1qxDfLLHIpLH^|MMLMI$Mt$LLMLIMHfDMmMtTMu(LI} M9IFHt L`du!LL)H9}HH9~ȅxLMmMuIM拝LLL9tOII(LIq L9HFH HLHcHLy H0ILL0/IIyHuefHA4$1LLNzL(LkXAZL1vAdEykHyiHH1H814]2f.MI)I4IDMMI$M|$HLMLIMHHMmMtWM}(LI} M9IFHt L8bu!LL)H9}HH9~ȅxLMmfDMHًLLH9tTLq(LHq M9IFHtHHaHuMM)I0I|Dȅy H8IHL8\-HLa@LlLHxLsHgHH81O[HuH_gH=H`d[HH;H=HH8H>H)UHAWAVLPAUAATISHLHU@L} H(D$Hu0LdH%(HE1HDžHHDž@Ht\AEt ElE8dEHtHghHHQdHHL  L1ATHgXZH0PH8HH.foEo)ULLEHHH -HUHMtHHAIfLmEfoEH ].oH5-)]LLEHHHUHMtHHAIfLmEfoEH -o)eLLEHHHUHj-HMtHHAIL9x?A|$I|$PID$PHtHPLbMl$HID$HMtLwhL:_Ml$hID$hMtI}@.JI}J`L_M$MtLV L^I$HHLuLmI$PM$LmHNH޺L}LL .H}HEH9t HEHp^H}L9t HEHpl^I$8JM$MtyI}LvBHHMmH9tHHp^H{HHCXH9t HCXHp^H{(HC8H9t HC8Hp]H]MuI$HtH# H]I$:HI$I$H9tI$Hp]I$hI$xH9tI$xHp^]I$HI$XH9tI$XHp8]I$(;HI$.HI$FI$HtI$H)\I$GI\$hHtH{@GH{KH`H\I\$`HtH|]H\I|$XHtHPI|$PHtHPI\$HHtHeH`\I|$(ID$8H9tID$8HpC\I|$ID$H9HEdH+%(It$Hh[A\HA]A^A_]\H9mfI|$hHH bfHn)EfHnfl)EgHEHt HHM$Mt$xM9I}PHtz]LQII9uDHEdH+%(uHh[A\A]A^A_]}Lff.fHt'UHSHHvHH]X[@Ðff.UHAWIAVAAUIATLPSHHDLHwHLdH%(HE1qHHs`MH(HLLPHDLPHhPHHHP SAPEɿH@LvHUdH+%(uHe[A\A]A^A_]TKHwUHAWAVLuAULmATLSHHHHwHLdH%(HE1pHLLuHH5HxHH(HHHHH}L}EHL}HHs`HHLxAHEAUPshWLj茾H}H@L9t HEHpYH}L9t HEHpXL2uHUdH+%(uHe[A\A]A^A_]IH[vHcvfUHAWAVE1AUATSHHdH%(HEHG`L` HI9uBfHC`Md$HI9t.MMl$ȾMDL5\uѾLLfHHHPLeLmLLmHKGHELHHvH}L9t HEHpWHpHHHHX HhHHHH(r!HxHDžPH fH(HX=&LXL(LHH(H HHxH;HHHHPLHH@HMHHH0ILH8La Ly( @H[HtRLs(LH{ M9IFHt L MuM)I9}HI9~DxIH[HuH8H0L9tWIM(LIu L9HFHtLH8LH8u"MI)I9}AHI9~Dy+HHH HLH HxIHPHXIE@#H@HP.fDH HU=vH(t!HXh!H}HEH9t HEHp>UHEdH+%(uH[A\A]A^A_]DI-;FHrHrHrHrf.UHAWAVAUATSHXHdH%(HE1HxHDžxHDžHHHHDžPHL~HFHHHHI9ubHH9tHHHpTHHH9tHHpSLVIIH9Iw IW(HHHHBIGPHHHAoO@HH0HHHH) BHH=?H[ HHP HHHHsHHH=BHDž@DžHLL9HLLIHI9SL#M9l$uMtI<$LLIuA$LLHH9tHHHp9RHHH9!HHpR DHHH@HAHXLpHLH`LHHDžHHDžPHDžhDžHDž HL(L0HDž8HHE1LHHbLHL2LHL@LLL!H HDHHHMHHtHpHx;H IHHuM9ttLA;H }iHHtHBHz;J HHHuL9t;N }!HHCDHHXHƋ{@D~$yD{@CDLf;HfLH@L HH +HHDžHfHnHxhHH@HofHnfl)P[HPHt HH1H .HP'9H9HEdH+%(HX[A\A]A^A_]@LHHXHHHHHHHxHHH9fDM9tHLHpNH}L9t HEHpNHhHH9tHxHpNHHHH9tHXHplNHCHH90C HS0H@HHHHs(Hv=HHSPLhLHhHsHHN=ChLuHLmLEClECpECtECxLuHEH =LLHDžLEHHHƅ DHLH;~HHtLCbE]M9tHLHpMH}L9t HEHpMHhHH9tHxHpLHHHH9tHXHpLDAHHH@LPHHL@HHH;HDDHLL@rHH@L9tHPHp4LtHE1E1a@LM=LHLHMMIf.MmMtRMu(LI} M9IFHt L8BuM)I9}HI9~DxLMmMuHMLLH9Lc(LHs M9IFHtHHAHuMM)II|RDxKfnfnHfbfC@H9tHHHpJHHHIRLh0HL` HHLh LH9HC@LLHp8IIHt9H9tHtSHLH.@HH"H{ I9t HC0HpJH߾HLIHJ(H{ HR Hs(!떻=HEdH+%(uHH51H=]W@Y:HgHgHDhHgH4hHgH/hH+hHgIFhHhHgI2hff.UHAWAVAUATSHHH^HdH%(HEHHHH9HEL}HDžHHEH(HpHDžHDžHDž HfDH(HS(HHEHs Hv7oK@HuLpHUH)MHCPHHEG7H=LpLuLmLTLH=HIDHH IDH dTLELELLM9tHELHpoGH}H(H9t HEHpRGHHH36HIEPI}PHt HHRI}PHNHLLTI}PHPpHH . I}hHDžHfHnfHnLflHH)MKHHt HHLlAEtHIEhH@LPH0H`IHhIHXHpzH@LHHLWA}HHH HH@H9%H@H HHHS(Hs H-o[@HHHH)HCPH)0H HHHe-LHH='L_FLH GLLHHH0MIExH0MLHLHMMIfDMMtRMg(LI M9IFHt L3uM)I9}HI9~DxLMMuMLLH90tXLc(LHs M9IFHtLLy3Lu#M)I9HI9~ DIEpXIHDLp0HLx HHLp LH+C@LLI}pHCHHCP!IIHHu H90,H0LH 2IHHHCPHHCHC@HH9tHHHp;HH H9tHHp;H@ 1HH@H9fH I}hH )fHnfHnHfl)GHHtHHI}PIEPHtHPI]HIEHHtHDH:fDHHHEHURHH߾X16nHEdH+%(u H=6='LI/WHOWIWfUHSHHuIAHѺHu+{HudHH]tH]ÐH2H=H ,fUHAWAVIXL}AULmATESHhuHxMLMdH%(HE1S=H5CLLmHH$HuEuEM1HH}XZL9t HEHp5LmML:7HEIHHusAULHEMLHHx|H}AL9t HEHp4EuvHEdH+%(HeH[A\A]A^A_]fHuLfDLHu128HEHHEHELL;HEHURHpH߾X14nHEdH+%(u H=f4;%LITHUITuH71ÐttuHfHHuH71ÐttuHfHHuH71ÐuHuH71ÐttuHfHHUHHHSHHH6dH%(HUHHEdH+%(u HH]#uH71ÐttuHfHHUHHHHSHHHH6dH %(HMIHEdH+%(u HH]2#fuH71ÐttuHfHHH-.@DFIEusHBHȋO8HHDHH9rVAvPDD;^rGAuAALHAv3DLD!fDHljHH9rH)tvAu޸IBfAnfAnfbLf@1UHSHHdH%(HEHHH}HUH}HtHPHEdH+%(uH]!HRf.uH71ÐttuHfHHUHHAWAVL}AUATSHXH}H6HxdH %(HM1HHL}H9iHuHpHuH1@L2H@HBH}HAŅu1@D9s%M$A<$uAD$<tFD9rH}L9t HEHp/HEdH+%(PHX[A\A]A^A_]HEAL$LIPMHHtMHIHHtHxHp9H }HHuM9iLA;J \HrHB;J DHHHtHrHB;J ~HHuI9t;O }ID$HHULHEHNjG$AD$fDLGMHAsAE1At DE AAtFfG IA`B4C4 RE1AAN OD9rM7HUHOfUHHAUATLeSHH8HdH%(HU1HVLeHvH9trHMHHHMHLm@H@HHuLHxPHH}HL9t HEHp-HEdH+%(H8[A\A]]DLFMHAsHE1At D E AAtF fG IAWB C IE1AAɃN O D9rM HHNf,f,fUHtHSHHHHHC H9t HC Hp|,HH]8j,f.UHHAUATLeSHH8HdH%(HU1HVLeHvH9tzHMHHHMH@@LkHLHu6HSH3HLH}HL9t HEHp+HEdH+%(H8[A\A]]fDH~MHуsIE1@t DEA@tFfGIQB C CfA1AAȃN O D9rM HVHMf.UHAWAVAUATSH(LH}HuMHEH8LhH}fIGHt[IMw(I_ M9MMFMtH}LH9!uLL)H9}HH9~xIG1HuL@ukMtBHuLHHM HMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:L"#HMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHAWAVAUATSH(LH}HuMHEH8LhH}fIGHt[IMw(I_ M9MMFMtH}LHuLL)H9}HH9~xIG1HuL@ukMtBHuLHHMgHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:L!HMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHAWAVAUATSH(LH}HuMHEH8LhH}fIGHt[IMw(I_ M9MMFMtH}LH9uLL)H9}HH9~xIG1HuL@ukMtBHuLHHMHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:L" HMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHAWAVAUATSH(LH}HuMHEH8LhH}fIGHt[IMw(I_ M9MMFMtH}LHuLL)H9}HH9~xIG1HuL@ukMtBHuLHHMgHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:LHMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHATSHu HH[1A\]Ãt3tuHfH?HtѾ8$@L&8,Ao$AoL$HAoT$ P IT$0HHP0ff.UHATISHE,IT$H HHPHH[A\]ÐfDUHHSHHdH%(HE1)HEdH+%(u HH]f.UHHSHHdH%(HE1$HEdH+%(u HH]f.UH 1^H5,2H=U2H}ff.UH p2eH51H=%2HMff.UH 23H52H=vHff.fU1H5pHSH2H}H(dH%(HE1H]HEN HUH9H)HEHEHUHHHrHHHMHuHt |]HrtHٺ$H5h2H=2d@Hv xllvmtQHEdH+%(uTH]HHfDHUHEHٺ!H5 2H=>2 ffy::uHrHH D@UHAUIATISHHLHAH{ IHSH)L9r5MuH[A\A]]DLH(Lc H[A\A]]fDHLHH[A\A]]8,7U1H5HSH1H}H(dH%(HE1H]HEL>HUH9H)HEHEHUHHHrHHHMHuHt |]HrtHٺ$H50H= 1@Hv xllvmtQHEdH+%(uTH]HHfDHUHEHٺ!H5=0H=n09ffy::uHrHH9t@UHAUIATISHHLHAH{ IHSH)L9r5MuH[A\A]]DLH'Lc H[A\A]]fDHLHH[A\A]]h*7fDHHHDHL@1IHHHLHL@1UHAWAVAUATSHHBHIPIHAH8MƉу@ ẺE,HuH HHMMDj5HjAVCH ? HCHPHCH;PuVJȃwHBR H@< uiHe[A\A]A^A_]f.[,HfH /H5#/H=/ H .H5/H=-/ H .H5.H=/ 蜟ff.UHAWAVAUATSH_HLwH]ML&L~DMvMtTMn(LM9IFHtI~ Lu!LL)H9}HH9~ȅxLMvMuH9]tELk(LM9IFHtHs LvuMM)II|"DȅHH]HH[A\A]A^A_]fDH]fUHAWAVAUATSH_HLwH]ML&L~DMvMtTMn(LM9IFHtI~ Lu!LL)H9}HH9~ȅxLMvMuH9]tELk(LM9IFHtHs LvuMM)II|"DȅHH]HH[A\A]A^A_]fDH]fUHAWAVAUATSH_HLwH]ML&L~DMvMtTMn(LM9IFHtI~ Lu!LL)H9}HH9~ȅxLMvMuH9]tELk(LM9IFHtHs LvuMM)II|"DȅHH]HH[A\A]A^A_]fDH]fUHGHAWAVAUIATISH(H9HLrL~(HH:LF M9LIFH}HLHULELEHUuLL)H= H=|gxcHuLuLL)H=H=/'H1H([A\A]A^A_]LL)H=H=|yHHI9\$tHLHH(Hx IL9HFHtHuHM HMuL)HH| ȅ1IHEIDHVH(H_ LzH2Ls(LH{ M9IFHt uM)II|DyrH(H1[A\A]A^A_]fDI9\$ tH!LL@(Hp IM9IFHtH}LELEuLL)H= H=|$x H(LL[A\A]A^A_]/1H{IEIEHOUHHHAWAVAUATSHLoL7LL)HH9SHIIL)M9H4H9rfH1E1HLMLL)IM, HmH~HLLLELEMulM$Ml$I\$H[A\A]A^A_]HHHMHU6HUHMIH{LLHMLMHMIHIIt$LLEL)LEw@HrHH9HHFHwDH}HLHELEHH9HGH;H=# @UHGHAWAVAUIATISH(H9HLrL~(HH:LF M9LIFH}HLHULE LEHUuLL)H= H=|gxcHuL uLL)H=H=/'H1H([A\A]A^A_]LL)H=H=|yHHI9\$tHLHH(Hx IL9HFHtHuHM HMuL)HH| ȅ1IHEIDHVH(H_ LzH2Ls(LH{ M9IFHt ~ uM)II|DyrH(H1[A\A]A^A_]fDI9\$ tH LL@(Hp IM9IFHtH}LE LEuLL)H= H=|$x H(LL[A\A]A^A_]1H{IEIEHOUHGHAWAVAUIATISH(H9HLrL~(HH:LF M9LIFH}HLHULEO LEHUuLL)H= H=|gxcHuL uLL)H=H=/'H1H([A\A]A^A_]LL)H=H=|yHHI9\$tHQ LHH(Hx IL9HFHtHuHM HMuL)HH| ȅ1IHEIDHVH(H_ LzH2Ls(LH{ M9IFHt  uM)II|DyrH(H1[A\A]A^A_]fDI9\$ tHLL@(Hp IM9IFHtH}LELEuLL)H= H=|$x H(LL[A\A]A^A_]1H{IEIEHOUHGHAWAVAUIATISH(H9HLrL~(HH:LF M9LIFH}HLHULELEHUuLL)H= H=|gxcHuLuLL)H=H=/'H1H([A\A]A^A_]LL)H=H=|yHHI9\$tH LHH(Hx IL9HFHtHuHMHMuL)HH| ȅ1IHEIDHVH(H_ LzH2Ls(LH{ M9IFHt uM)II|DyrH(H1[A\A]A^A_]fDI9\$ tH1LL@(Hp IM9IFHtH}LE*LEuLL)H= H=|$x H(LL[A\A]A^A_]1H{IEIEHOUHAWAVAUATSH(LH}HuMHEH8LhH}DIGHt[IMw(I_ M9MMFMtH}LHYuLL)H9}HH9~xIG1HuL@ukMtBHuLHHMHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:LBHMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHAWAVAUATSHHH(LOL/LL)HH9RHIIL)M9H H9H HE1HE1HL9t1LLLL)LDH HHHHH9uHXM9tM)HLLLMFLMLMtIvLL) M>I^MfH([A\A]A^A_]ÐILLELMHULEHUIIHLMM9HI_I9`HrHH9HFIIHH9HGL$|H=ffDÐf.Ðf.HHW HHGH9tHw HH DÐff.UH TNH5 H=HUH T H5 H=HifUH 6H5 H=H9fUH H5!H=!H fUH !6H5x H= HfHt7UHSHHHwH?HH]DH]fff.@UHAVAUIATA@SH0dH%(HE1IHD`8EHLnHHH`LLLHA,@A9 f"f A9HGLmfHLUHEHCEEHEuxHLHUEH@EHEHCHEuDHxvkH@LHUEIHEHC(EHEStLcH-HEdH+%(uAH0L[A\A]A^]fDIIġIIUHAʋVNHvHAQEAPIYUHAʋV N$HvHAQEAPI)ÐfDf@7HWG@t19 UHSHHHgH{H]UHHH`HhLpLxt )E)M)U)])e)m)u)}dH%(HH1?tKHEHH0H8HPH@HCDž0Dž40H8HHdH+%(u6fDLHL9sEH5fQHy w!HcH>ff1҉QHL9rf.H L qAL %t)H@HLHLH @H9uHRH foH|@Hoff.UHAWAVAUATSH_H8H}LHudH%(HE1H]ML&LvfDMMtTMo(LM9IFHtI L8u!LL)H9}HH9~ȅxLMMuH9]tqLk(LM9IFHtHs LuMM)II|6Dȅx/HC@HUdH+%(u9H8[A\A]A^A_]fH]HEH}HHUHEHf.HfUHHAWMAVIAUATISHILmIHHwAEV1AHUI~ :I|$Lu3It$I|$MM1LÅu+H[A\A]A^A_]fH5/L1-H5AL1@UHAWAVLuAULmATSHLHXULfML>LEIt$ LMdH%(HU1LuHEE?H?H+EH  H5LH?H+EL9LLLH{Hu<ƅqH{IHfxp H{DxrHH5H{DUH9HEH{D8At$E|$)HH5VJAąH{DUH9HED8H}L9t HEHpJHEdH+%(HXD[A\A]A^A_]DUHH5H19A롐HUH5mH1fH5yH1H5H1뱋UHH5H1HUH5VH1HEdH+%(uH=ˑHEdH+%(uH=H#H#UHAWAVAUIATSHHHLrL:FHCHIHCCHK4&H?H+CL9rALLH H?H+CL9r,LLHb HH[A\A]A^A_]H=H=ِI2#ff.HUHAWAVAUATSH(LwHLH)HH9IIII)L9rH<H}H9HHEHEH2HzIIGHIHLI9HEMHSI)IHH HHHxH H I9tuHpHzH0HJH9uHOt:@>HzfHHMHU)HUHE<@LE@Mx M9ID$I~L DH2H0HrH HJH H9tMHpLBHHLH9uHqsx@`tDE@tDL0fEL0DM)MHtIuHH)~HEH]M}HI]HIEH([A\A]A^A_]@LIMANTOTLRIM)DM)Ã'HEE1EAK K A9rHEfDH:H>LL:LL>HxIHH)I)g1AON9rKHFHH9HFHHMH3:ɉ>| |HzDEDL0EL0Q| f|HzHH9HFHEHHH=UHUHAWIAVAULoATISH(HO H^L9tdLw8fDH0HI9tHA$HLH9XuHtI7H8HHM!HMȅuA H([A\A]A^A_]E4$DAD$HDH=8I|$@ID$HI+\$8HH]HL HHtHPHHD9p rHHHuI9tpD;s ID$(HEDp H@$C A9I9\$ HHHMHMD9p HsBHx$H1ID$(HE_I|$0Dp H@$H}DHMHMHHH(H%I|$@EȉC$I9|$HHGIWHI7HIID$@ IGHA$H(D[A\A]A^A_]DD9sI9\$(HHM4HMD;p HNH{tH˸I9tth'@ID$8HLH uHڿHLHRHEH@(IT$(D9r H1HHHH1D;s HH@뮸UHAWAVAUATSH(HEHIIHHHEHHHdH%(HE1H(HHH8H@IADž(HDž0HDžHHH9@HfLhH)PHDž`MHE111Hp@HEH&A|$H< HAL9< t IMH9uHD)HIHH9H)HHLuH9LuHGHLPHLH}L9t HEHp^HHp@< uAAT$AL9]L0LMHLHX Lp(MmMtRMe(LI} M9IFHt HxuM)I9}HI9~DxMMmMuHI9tFMg(LIw M9IFHt HuM)I9}AHI9~Dy+HHH LH H IfoPMw@fMoHI_PAW@H`MIGPHDž`)PM9t+fDI<$ID$H9tID$HpI M9uMtL)LHLXHPI9t.DH;HCH9t HCHpwH I9uHPHtH`HH)PHHHH9HHCKsS HHHHHfDžPDž`QAHDžhDiHHEDaIŋATH`HEIHHpI̋@HxA $IE,HHEHAD$IQAHAĪ2AT$A9uH8HH9u%DHPHHH9A|$HHs LHbuAD$ tHs@HSHH)HH9rLuHHLuHHHVHHHHPPH}L9tHEHp$xjAD$0<> )A9)‰rHH5 1PLB8HHHHLIRL}LeHNjPOGMGHHH9LCM)1ILI)E1HM9#HILE@ILHO,IuALLHIEHL9HCL8LL)H9HBHHL)EGL4MI9rHHLH8HHM9t-@I<$ID$H9tID$HpTI M9uLeMtHuLL)3HhH0kHEdH+%(uYH([A\A]A^A_]L}LetHH8HHHEdH+%(uH5ʃH=r1SHHLPHHHf.UHAWIAVIAUIATISLH(dH%(HE1HEHEHEPHEPH}XZHtsu+H}IHtIwaLADžurLXH=w{MeIEHEdH+%(uHeD[A\A]A^A_]DLIH5 L1ALH5-L1wLH5 L1\U@UHAWAVAUATSH(LH}HuMHEH8LhH}DIGHt[IMw(I_ M9MMFMtH}LHIuLL)H9}HH9~xIG1HuL@ukMtBHuLHHMHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:L2HMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^HCftfDH tuH@tÐfDUfHAWAVAUATSHHH}HudH%(HE1HFHGLhME11L}1(AL$H@ L9AHLA4@ t IMH9uHHD)H9LuH)LuH0HH9HGLHH}LH}L9t HEHp`HEH@H< uAAT$щL9dHEdH+%(uNHEHH[A\A]A^A_]A< 'HHEdH+%(uH5~H=1|HAH=ff.UHAUATSHHdH %(HM1ɅtZMA9tRIIMI+MHH9sfG tH7G fDUуHHfodH%(HE1) fo)0fo)@fo)Pfo)`fo)pfo)Efo)Efo)Efo)Efo)Efo)EfoEكcvTf.ʉHiQH%DkdD)AȉщDH F D VA'wA0 vɍA G HEdH+%(uff.UHAVAAUAIATSHރ c'Av3?BAvvLH=ɚ;vL D`IEC4&L-IEAI}D[LA\A]A^]@AA AAAA땸ff.UHAWAVAUATISHHH0HrdH%(HE1H HDžH(HHeHDžHHHHBHHLhLIL9BDž@@\HP HH@H)HfoHunction HBHG H0HPH0HH@ H9G HG H0f11HH 1H HSH HHDž(HHHƅ0DžƅHDžDžHDžHH)HA?BNAAv"AH=ɚ; DhH@B4+-HLPHL@DDH@0HHH@HVHH@ H;GHPHW H@L9tHPHp.HH9t HBH(H HHH@ H;GHPHW I$L@ MxI@MmH0LIHHLq MMtRMg(LI M9IFHt HuM)I9}HI9~DxMMMuHLL9tHMe(LIu M9IFHtHLuLL)H2H|ȅy#H0HLLHZIH I}@GHxHHHH HH9tH0HpvHH(H9t^HEdH+%(He[A\A]A^A_]@H5jfH5"oH# HH@ HWH)H)fo;fo@@foD@HG *HSHsHH@ H;GsZHPHW (H"H5JIcAA u =*H5DHdABA7A,A!H \H5H=H H5H=jHHvHHjHjHHfUHHATSH]H0H6LdH %(HM1HHH]HxH9tdHuHpHuHLeH@L@H}LH}H9t HEHpHEdH+%(H0[A\]@LOIHAsHE1At DEAAtF$fG$IAeB4C4WE1AANND9rL3HNHfUH !H5H=RkHfUH5HHAUATLmLeSHLH8dH%(HE1LeHC HuHUCH{CHHCH}L9t HEHpbHEdH+%(uH8H[A\A]]pH@fDUH#]#fHGXHGXHtHHHRUHAWAVAUATSHxdH%(HE1HD>;IHH0fUL~H LPDDhDlHHMELHIDhfUHjI}PXLZIM0HpHME8PI]EmIIL9tfDHS3LRHI9uHEdH+%(HeL[A\A]A^A_]@L~H7H LPDDhDlHHMELHIDhfUHjI}PYHp^IM0LHME8PI]EmIIL98HS3LrHI9uX HHHHf.UHAWAVAUATSHxHhdH%(HE1HIHHIIHLZ@<tu]fEM|$LhLLALAHHHEdH+%(vHxH[A\A]A^A_]D<tfU<tL~HALLhLAHHuLEH5}LL4HhLL肅HHbI}PIM0HME8HpHPMeEmIMM94fDIT$A4$HIM9ufLEH5|LLHhLLHHI}PIM0HME8HpHPMeEmIMM9@IT$A4$HIM9uwVUHAWAVAUATLeSHH(LyHHDdH%(HE1LeEsptrHEEM5 HYMH IfHMvMtFI^(I~ HvLsuHCH=H=|xMMvMuH L9Mu(Iu I LqIE@H IALeHEnreaEdHEE)Ht[HLuHCxDMMMtAI_(I HvʺLuHCL9}HH9MMuH L9I](Iu HL8PhIE@HH8H(Hx0HG@HH5dHHHH?H+AH+ HH5xL(I@11HI0L(I~IvH PD=$DfD}E1E1HLHIL(HpLH I~PIN0MF8HPLM6FHM,M9tIVA6LIM9uHwcL(E1E1HpH fEHLH0HPI~@IK11HI~@HE211HfLLHEHEHHLHLI$HB1I $It$HI;t$mH8HHFHHpH)fD}HIH{HsHT~EHL H(MH(zLc@HI@fAEfD}E1LLHHHtLc@HfD}HE1LLHHBH(Hx@JfD` 11HL(IH(LHxHHP8IH^HfD}bHE1LHHIcH(H LH{PHK0LC8HPDsL#IMM9tDIT$A4$LI3M9uH(HHC0H0H{@HC8+1ҾH1Lk@HHIfD}@1LLHI:H(H LH{PHK0LC8HPDsL+IMM9t@IUAuLI|M9uH(HfD`HHC0H0HHC8H1HHEH{@IpH{HLHIAAHLP@IHH(H{0It$H mPfD}DuE1E1HLHIH{PHK0LLC8H HPDcHIHIL9tfDHS3LHNI9uHHAHII)IIvHH9t HHXHH@HHEdH+%(jH[A\A]A^A_]HLHC|@HfD`HAH+HD`L1HL!IH(LHxHHP8IHHH LLIH5s:I!L蚫H(H@LH{PHK0LC8HPDsL+IMM9*IUAuLIM9u fH)H=H=HEdH+%(H==]L)H=H=oHEdH+%(H=\a1fH H5r(HILLszHISH(H@LH{PHK0LC8HPDsL+IMM9fIUAuLIM9ufHHL蜿l_MvLLtcVHLHHzH)HH(H)HH9r0HIwH@HHHAH9=H@IHHpHIEH)H%HL(ILhLhyf.LH8Lz4IIvfDH H LLIH5p=I(L蝨H(H@LH{PHK0LC8HPDsL+IMM9-IUAuLпIM9u -IJ HItTH@HHHpH*HEdH+%(uH=@W/ZJ%JHHpHHHHHHHH8HLHHH.ff.UIHNHHAWAVAUATLeSHHhH>dH%(HU1LeHVH9HvH@H;H@IH}HuHULmLuHHLL8LuHxLLLH}L9t HEHpvLxMt6HHsI}IEHCIE޻Hs0I}0ѻHsPI}PĻH}L9t HEHpHEdH+%(Hh[A\A]A^A_]@HzMH΃siE1@t DE A@tFfG It B4C4 HL@H;H@IHUlf.A1AAN O D9rM4Ho胵H]HIf.UHAWAVH0H AUATSHHHdH%(HE1HPHxHpH@HHH HHHDžHƅPHHXHAHHHfDHH`H@H H(HH`fL-9H=HIM迣I}MHo1#H[A\A]]H 1H uL-3H=~IM]1H vL-(H=IM/kf.HwHw 1@eL-(H=;IMD13L-q(H=IM询f.1Ðff.UHSHHH藡HCHH]f.UHAWAVAUATSH(LH}HuMHEH8LhH}fIGHt[IMw(I_ M9MMFMtH}LH)uLL)H9}HH9~xIG1HuL@ukMtBHuLHHMסHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:LHMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHGHAWAVAUIATISH(H9<LrL~(HH:LF M9LIFH}HtLHULEǠLEHUuLL)H= H=|gxcHuL蕠uLL)H=H='H1H([A\A]A^A_]LL)H=H=|yHHI9\$tHɢLHH(Hx IL9HFHtHuHMHMuL)HH| ȅ1IHEIDHVH(H_ LzH2Ls(LH{ M9IFHt 莟uM)II|DyrH(H1[A\A]A^A_]fDI9\$ tH!LL@(Hp IM9IFHtH}LELEuLL)H= H=|$x H(LL[A\A]A^A_]?1H{IEIEHWUfHH@~O(dH%(HE1G E~GEEHG fbfpNHE0HEȋG(fEEЋGW0t3U؋WOLMH7DGHUdH+%(uU讘ff.UHATSHx2HzHZHbA\]H81D8DL%%HYH1I<$HI<$1HHaH5:H葩HtI $H='H5HcHtI $H= H59H5HtI $H=s趜H59HHtI $H=U舜H59H٨Ht5HX #HcHHPHEں 1H=v[A\]f.HHI<$[HA\]HHHL@1~ff.UAI˹ HATSHxHHĀLedH%(HE1HDžppHMMH}8AA |AAAAA EII@fnUDLefAnIXfAnAPfAnYTIAHMII8fbfbHEHMIIHflLp)EHMLNHUdH+%(uYH[A\]fDAtIAHEnfIA HEAA(EQ@aUHAWAVAUATSHH $HH(L0HALdH%(HE1H;x\1D$@=$;11$%1HUdH+%(Hĸ[A\A]A^A_]fDLIAվLL7e111L7;Llj zD HH@H=DH !H 1LƄ1Dž0H8HDž@Dž`EyA1ɿ*AD1ALpDžO8蘝H(H86IHcH811D( 8TLH5IH#H81(&ϯ8LHGdIHH81赒ff.UHAWAVAUATSHH $H8HIH=5HH1dH%(HE1HDžHDž舡L {5H߅Ht5L5LDH1AV.H5cHAZA[HtI誟LHPL\51ܟAXAY=cLLDLHLVHuQL LLnHuHlL褒1HUdH+%(He[A\A]A^A_]L8Lp1H=e4RL Y4H߅H*4LQ4LEH1H11é^_AąqLH߹PL41裞ZY=H辡HDH萭HDH[HA1H:H3Lk85HپHdaIHH81ҏHHA1H:H33詏D芬8әHپH+3IHH81pY8袙HپH`IHqH81?/腏DUHAWAVAUATSHf~HUIIL~ E1AEAI D9~^A7L蓭HuHH贪t$;uAwL菖HULHtH[A\A]A^A_]H1[A\A]A^A_]Ðff.UHAWAVAUATIHSHHHH@ H9HH QGL5HM~L9ZH貒HLIHH@HtH0HH HtHHHHtHHHHtHHHHH9tHHp芜HHH9tHHpg{`yxH{@HCPH9t HCPHpFH{ HC0H9t HC0Hp,XHIn(H )~HLhI$HL[A\A]A^A_]@끐I$fDHpfDUHHATSEL%vH1It$H9^HH@HtH0HH HtHHHHtHHHHtHHHHH9tHHpHHH9tHHpњ{`yZH{@HCPH9t HCPHp谚H{ HC0H9t HC0Hp薚XH艚Il$([A\]f苒fUHAUIATISHHH~L11IL蜓HKH HHpH9t9HHPHSHPHSH0H@@HH[A\A]]fHPHzs3@u{tPS@tT>fT9HPf.HPIHSLDLDLCIL)I)ʃ_1҉уM M 9rDPST>T9HP/UIIɺHAWAVLw LAULATLSHH8dH%(HE17GGLwHGG L×LLLLIH{HHI9L9fHnHK HCCHt}HHHDžHL9tHHpHEdH+%(H8[A\A]A^A_]L9t+fHnHCCLLL{HKI9tWHtHt,LHH{HSH?DHH{f.H胈IfDUHHHAUATSHHdH%(HU1ҀxtqHxXIMHHLLAąHC CCHCHCC HEdH+%(HH[A\A]]HC GHuHGHCHERHUfo\H enabledHCHS HH HEHSHCw8DH*DHHIf.HC 1H{CHuCHCHE谙HUfo[HCHS @ableHEHSHCȆUHHHAVAUATSHH@dH%(HU1ҀxHxXIMMHHLLLLAŅHcL9H5=LmHLLeLeLHC HuHUCH{CHHC%H}L9t HEHp返HEdH+%(&H@H[A\A]A^]@HC GHuHGHCHEJHUfoZH enabledHCHS HH HEHSHCq8DH(DHHKf.HXF4HC 1H{CHuCHCHE蠗HUfoYHvailableHCHS HHHEHSHC豄H @UHHHAWAVAUATSHLoL7LL)HH9SHIIL)M9H4H9rfH1E1HLMLL)IM, HmH~HLLLE6LEMulM$Ml$I\$H[A\A]A^A_]HHHMHU膚HUHMIH{LLHMLMHMIHIIt$LLEL)MLEw@HrHH9HHFHwDH}HLHEeLEHH9HGH;H=s$%DUHAWAVAUATSHxHuDmLELMdH%(HE1HSAIII<bH?H+BHH5&LI^AF HH9H9AH}HMH`xYE1Hpf~HMLh~DLL3LEHpAHhfEm?HHuLIxLMLLPY^H?I9GH58LH;H9`rH?I9GH5BLHEdH+%(He[A\A]A^A_]@<H@HYۊH9H?I+GHlH5$L薛I~ HEE1HpXf~HEHE~LELHpLfE!>HINLAULMILHuXZH?I9GH5g7LHI;^ rH?I9GH5#LŚE'H<LHeLuHMLALLIH5#L蚍IvI;v HEHHFIvHuHMLE1LHL[0fD<< EQs DH5#L袈EH59L芈Hu1L,H]HEHsH;s HHHsfDH5"LAH]HsH;sHEHHFHsTHH56 AV3H5L"Lއ@fH5'"HEt;H58L譇H5"L虇H5KL芇HEH5KLrH5!L^H}HU\H5!L8H5!L'H}HU%H}HU8HEdH+%(uJH=H LSH5@H= !T|H H5юH=ڱ5|P}UHAWAVIAUATSHHXHHdH%(HE1HHHHHtH1HLH^IžHfHHLI1LMHIyAD$ I\$XH5+LLk(HL茠LHwH5LrLLwLH5XHMnH誏E1LLLHHSHpLH0H5u0HxH}HH@LHH;H5=0LH۟H}1xHHL;HHH8HHH(HHDžnreaƅdHDžƅHHDž(sptrHDž ƅ,DžHDžHHHHDžgfHVIHx H@0H3HSIE HuHC LLHIE@'|HHH(H9LHLLvIHtL9HˆdLkIL$(I9HIFHtIt$ H;HH|Hu I)IIDHHW0HCHHw(HHtHEdH+%(^HHe[A\A]A^A_]fDL耊HHH9tH(HpHHH9tHHp„HpVuLH It$较HpH5t-HHP诏HE1A1LHIRH}LxLHpHHPDHH@IIL9tfDHS3L|HI9ufHDž@)0ɋfHPHMH0LHHH@HHH0H8HHHDžƅHjZAYLHHH蹯H}|H11xLHH5+L蛛1HۿH@Le41HLHIvH}LxLLHpHPDHH@IIL9t fHS3L{HI9uIHHtFHHfDHHHtHrHJH9z sHHuH9tH;x s$HIHH(H(LJHHx(xHHHHPHHH9HHHHCHHHDžƅHHHHHH9tHHpmH0H@HH)NHjH1HHH9tHHpHbtH}HHHE跇H@HH9ˈLLLDIM1LHIrfAe&L uHj#pwpopgLHHMЃs:1t 9A8tD 9fE 8Ht9A8HPA1AσL>M:D9rHLHHAsIH3H@sHtft@HLH3IsH|3H|2I{HH)H)ӃI؃1҉փM 0L 79rj5+!3Hwtt'ƅfpHHѩHoHԩH H HȩH霩HH鰩HIHH"HHHrff.UH <zH5pH=HmfUH mH5XH=HmfUH BH5(H=QHmfUH mH5H=HYmfUH TmH5H=aH)mfUH H5H=HlfUH mH5hH=HlfUH mH58H=шHlfUH LBH5H=1HilUHAWIAVAUATSHHHHdH%(HE1H HHH(Ht@HHHHtHHHPH9p sHHuH9t H;w  IGHfHCHP)pI@HEHEHpHEHEHhHEfEHNxHxHH@fHnHwHHHEHEfHnEflHEHEEH + Hc+ H( H'% HھHKY8m4*H?B H H HHHH HwHH 1HHIHH}HH詸A11H 'LsHHpHPHHHH9 HHHHH0@HH@HHH9tH HpyH}1ajH}HH1HrfH HDž0) EH HfoH`H H}H@HSH0H(H HrH1HH޺HvHþHfHH'L1HHLMI!jAD$I\$XH5n LLs(HLLH4hH5QLHPHʐLLhH5L谐LHgLH5 薐HMwHE1LLLHHsHpH0H5 HxHpHHBH} HH@HHH+LHH5~ HL]LLLH0LLDžHDžLHDžHHtnL9AHAH~HHx H@0HHHC H"fH0HLHAHC@lHHHH9tH HpvH@LH5XHHLH}貄HI;F0H}HHپ'HPxIHfLHDž HDž)}foHPHH HMLHHHHHHHHHHHHDžƅ HjHZH5YH܍E1E1HHHH)lH}I}H11jH}IeH11jfIHDž)p|HHLL+HLcHpH@HHxHHHBtH}19eH}HɂH}1HefHHDžP)@ |HIH}H@foH@IVA&HPHHmHǹLqL%HILQnHHfc&H2hHH5{HLHsI)IH ~LHHMjH@H5#LLfC賋HLeP~1HLHIfH}LxLHpHHPDHH@IIL9tHS3L2kHI9uI(HHtFHHfDHHHtHrHJH9z sHHuH9tH;x s$HIHHHl:HHx(hHH~HPHHH9kHHHAHHDžLƅqHHH9tH HpqHHH\H)kqH[H`NqHHH9tHHp+qHhdHnHpHHEwH@HxH9t2x+f.HHW0HCHHw(HH`HEdH+%(OHHe[A\A]A^A_]fDLuHHJ(HH9HHFHt"Hp HHXfHXuH)H0HAHYppxppLHHMЃ1t 9A8tD 9fE 8Ht9A8HPLLLvLM1LHH`L.A1AσL>M:D9rHL HLHQzLH5IL與E1LHHLlH}LxLHpHHPDHH@IIL9HS3LgHI9udfH~HsRtHH KHf@HHDžHcHHH HOHt Ht HwHH)H)ӃH߃r1҉уLL9r낾H>4*HHˋ OLLL99rH<LfD1E1fD= JHC HC(&Aƅ}t At $HEAEkA@EVHufHu)EMgHut ADfv)EduHAƅZUffnfnfAnfbHH@dH%(HE1EEfnH}fbHuflDEEHUdH+%(uLZff.dWhgZgmUHHj^ff.1^DE1i@UHHj-eff.UHAWAVIHAUAATSH1HsAąyS v8IuFE1HswLHB4 jYHHDhgyA?t&IIuAHD[A\A]A^A_]@HMcHDH w4 A\A]A^A_]ssgiUfHAWI&AVI1AUATSHdH%(HE1&EHDžrhashHEfpHDžxHEsha1HEEE`nHpXAcAŅ11DsAŅdۍsHIHcHHH%H)HH9tHH$H9uH)HaH~eL1E1$8u EHE1H9~7HH fuEDHAH9HHcDt9<fHPDHDž`)PaHPDE1HI]D]HEdH+%(_HeD[A\A]A^A_]fD8Df.s8d`HpHH6bH81VD<]|HLHr8 `HUHHaH81UD\D\A}r8_HHHaH8[r8_HHHvaH81DU-r8v_HHHHaH81UDN\lTU@UAL@HAVI@AUATSH]HH`dH%(HE1bH5&HZHHEIL-C f.1HULH/`tBL@HnHuLUHUdH+%(u)H`[A\A]A^]@HELIyU1̓[Tff.UMcIHAWAVMAUATISHXE L}HAXXHLdH%(HE1LH2Hdf)0)@)P)`)pmHDžHDžDE4H5LjAŅXDžIDžL0L)Ƹ9GL1@t @t <f<HtDHLMHHIATͻY^ADžANXuxtVYHHEdH+%( HeD[A\A]A^A_]]GEALHDžzHBHDCtXHhjfIV8HPnHHËHt fEHHtHhENXEuAFXLAL; LEgEL!\IH LLHAVHHP_AXADžxLLAvX@Dž9H@H5HHk1HHLIDILgmÅkfLuLA)H A)GDž L Dž(@>Pf,HL9kDLaHHgADžLHLH[LHgADž LH"jADžHo\Hc\ H5rL,fAŅ H5L fAŅ"Dž I ef)0)@)P)`)pEHMHDžHDL0DžDžX@1ƒI IL9rILLfDž I Dƅ0MLLHATH_AXAEfuD#HfH)YHA WH1MHPHXhDH81LXZfDžE1L0HDžHDžDžIS=DEfXEsHDԳ;HDžE1,;_PH0HH1RH81E6FH@LRHTLLA~XtHHPub8OLQHH1I:^EE1E1E1ENXLDff.UILAHATSLp˹LHĀLedH%(HE1HABtDMEHALD׉EjE PATHUdH+%(u He[A\]DUHAUATISH(dH%(HE1MMtA<$u#HEdH+%(H([A\A]]f1ҹLfULmfMEQEąt\LfEOy`8NLHIHOH81CJW`8MHWHHOH81~CJHOH=HHCff.UA2HHHMuYfDH5c`H5ZP1fUHATISLYÅx [A\]_8LLH~IHNH81B[A\]fUH=HSH'IHH[H1u HOH]UHAUIATISHTHHZuULHA?]xHILHH賲AHxOHD[A\A]]f.AU1HSHjXÅx H]@s^8KH}HHMH81\AH]@U1HSH XÅx H]@^8\KHU}HH.MH81@H]@UHAWAAVAιAUL@ATALSHHdH%(HE1HDADDLHA*HHHP1D@[PÅx;1҉Ǿ$1O4}HEdH+%(uGHĘ[A\A]A^A_]]8NJHHH LH81?2@fUHAUAATASHHdH%(HE1?Mt31ɉDDlQuSHUdH+%(uH[A\A]]c\8IH%{HH~KH81L?LLAMHپHEKH~{H81 ?U?DUI1HATA*SN{ÉD1$@WN{11$?N{[A\]UHAWIAVEAUAATASLLHBHHHDH817D?yT8BHH0 IHCH817LHC0H=IuH<UHHjAQMLj/ff.fUHAVIAUI1ATASH}HH dH%(HE1DžGFAVLH*AUHDHHI1DHDH蕡ZYu'HUdH+%(u$He[A\A]A^]D61EQDgOGECFUfHHdH%(HE1EHPEfoUEfo]EfoeHEfomHEPfoM)`H`1h)P)p)e)mEHUdH+%(u5fEUHAVAUATISCHHHAHxEt\QD(AtNEHALEtCD+?LHIH@H814[DA\A]A^]@HKE1AUHAVAUATSHĀdH%(HE1HI CHHHAH`H FuFH^KJH9`u{E1HEdH+%(HD[A\A]A^]f.PD0DE->LAIH@HH813HJEuwH?LHqH813A]AR3f.UHAWIAVIHAUIATASHp>HHtL8LpLh@@q@DcH HDH811UHAWAVAUATISHHcG8Hc_H81/AW5fH;HH H81\/AWfHq;HH H81,/AWfUHcHHAUL,ATISHdH%(HE1IEIHH%I)HL9tHH$L9uH)HH1DIR@fTHI9uLHHk:~7HMfDIHM9ttI<$IHUM9uHEdH+%(u.He1[A\A]]@HL[LHH9>.ff.~8UHcHATL$SHH;HL9u[1A\]1ff.fw@UIAʹHAWAVL@AULATMSHE(EpdH%(HE1HDLHHAD$DDfo AL*p1ADž@HDžXHLjdH%(HE1IIuLuHEH@@EHEHHEl1H?H+EL9HuLHFAH?H9EH5HALmHEHLLLL0H}HtHHH@H9uD5H}L9t HEHp5HEdH+%(uHXL[A\A]A^A_]&HEdH+%(uH= (HEdH+%(uH='IcI}cIqcff.UH$HATSHHL&dH%(HE1I$H@H9u8LD9Hx(MHH)I)ȃ1AɃON9rH}Hx MD>LD9Hx(MHH)I)ȃ1AɃON9rH}Hx MD>LD9Hx(MHH)I)ȃ1AɃON9rH}Hx MD>LD9Hx(MHH)I)ȃ1AɃON9rA1AƃI<7I<6D9rI<LA1AƃI<7I<6D9rI<LA1AƃI<7I<6D9rI<L*A1AƃI<7I<6D9rI<L}҉x A||M}҉x A||%}҉x A||}҉x A||H 7H5H=7WrH +8SH5.H=3H#CHhCHCH CHCHBHCHCHBHCHBff.UHAWAVAUATSHHXHGLOHMLEdH%(HU1HEL9HFPIMHEM@HUL}HLuLIMIT$pHL=HuLHuLL9mt7I}H $4HH@H9tLEHMHLIL9mufDHEdH+%(uHX[A\A]A^A_]DHHHEÐfHG GUHHG GHHHHH8G&vHGHHHHHHtu@&w!HHt\@&vH !@H5?H=]fDH @?H5?H=?ff.GfwYOW҃HHD0HHr5Hu HDHWGHGHEHHf1UHT@UOWHHHD0HHW@Hft@HDŽuWHH]tZHHHLHJ<HHL)HH9s#PH|@UHATSGt/HPHL$Ct$HoHL[A\]@E1[1LA\]1ff.HG(uH 1Ht H@HHHUHff.HGPHHt HHDuHUH =H5#H=k>HCUHHtHQ{v]yfHHtQ{v UH Ðff.UHSHHHHHvPHHH8@uJ^HSHt5Ht1HHHH)HHHvHH]HHH =H5>H=>Jf.UHATSHwhHH~`H@PɃ8HHLgAHshH~`H@PɃ8HHts@HshH@H~`M$FHt[@PɃwV8wIHHt3HGuL[A\]fD I\ L[A\]$<fDUHHH H@HHt/toHHHtDP8wH@]f.HH >BH57 H=` H >mH5 H=|H m=H5 H=;]ff.UHATL%GSHA$tHCHHwPH\]@LtHLHH@H@VHCHHv@HƒHtHtVHu(HHH@HHtHƒHuHu-H =H5 H=:zf.H[H@A\]ÐfGHHThH HHÐ@GH@HHThH HHÐWHH HHDhHHÐH1HHw f.HHЉƒÐUHHt f +Hu!]H >mH54 H=H q>BH5 H=> yfUHHt f ,Hu!]H >mH5 H=m8H >BH5 H= fUHHt f RHu!]H ?mH5t H= H y?BH5U H=~ fUHHt f -Hu!]H ?mH5 H=xH @BH5 H= YfUHHt f SHu!]H @mH5 H=MH @BH5 H= fUHHt f THu!]H @mH5T H=H ABH55 H=^ fUHHt f UHu!]H AmH5H=XH ABH5H=9fUHHt f VHu!]H AmH5H=-H BBH5uH=fUHHt f WHu!]H BmH54H=H BBH5H=>yfUHHt f XHu!]H BmH5H=m8H BBH5H=fUHHt f mHu!]H CmH5sH= H hCBH5TH=}UHHt f YHu!]H CmH5H=xH CBH5H=YfUHHt f .Hu!]H DmH5H=MH aDBH5H=fUHHt f ZHu!]H DmH5TH=H DBH55H=^fUHHt f [Hu!]H EmH5H=XH aEBH5H=9fUHHt f Hu!]H EmH5H=-H EBH5uH=fUHHt f nHu!]H EmH53H=H XFBH5H==xUHHt f \Hu!]H pFmH5H=m8H FBH5H=fUHHt f ]Hu!]H FmH5tH= H IGBH5UH=~fUHHt f oHu!]H gGmH5H= wH GBH5H=XUHHt f ^Hu!]H GmH5H=M H 1HBH5H=fUHHt f _Hu!]H HHmH5TH= H HBH55H=^fUHHt f `Hu!]H HmH5H= XH IBH5H=9fUHHt f aHu!]H (ImH5H=- H IBH5uH=fUHHt f 'Hu!]H ImH54H= H JBH5H=>yfUHHt f bHu!]H (JmH5H=m 8H JBH5H=fUHHt f GHu!]H JmH5tH= H KBH5UH=~fUHHt f Hu!]H KmH5H= xH yKBH5H=YfUHHt f cHu!]H KmH5H=M H KBH5H=fUHHt f dHu!]H LmH5TH= H LBH55H=^fUHHt f /Hu!]H LmH5H= XH MBH5H=9fUHHt f eHu!]H 8MmH5H=- H MBH5uH=fUHHt f fHu!]H MmH54H=H 1NBH5H=>yfUHHt f gHu!]H PNmH5H=m8H NBH5H=fUHHt f Hu!]H NmH5tH= H )OBH5UH=~fUHHt f Hu!]H @OmH5H=xH OBH5H=YfUHHt f hHu!]H OmH5H=MH PBH5H=fUHHt f Hu!]H 8PmH5TH=H PBH55H=^fUHHt f iHu!]H PmH5H=XH !QBH5H=9fUHHt f Hu!]H 8QmH5H=-H QBH5uH=fUHHt f Hu!]H QmH54H=H RBH5H=>yfUHHt f Hu!]H (RmH5H=m8H RBH5H=fUHHt f Hu!]H RmH5tH= H SBH5UH=~fUHHt f jHu!]H 8SmH5H=xH SBH5H=YfUHHt f kHu]ff.fUHHt f lHu!]H xSmH5H=H SBH5eH=fUHHt f mHu!]H SmH5$H=H aTBH5H=.ifUHHt f nHu!]H TmH5H=](H TBH5H= fUHHt f oHu!]H UmH5dH=H aUBH5EH=nfUHHt f pHu!]H UmH5H=hH UBH5H=IfUHHt f qHu!]H UmH5H==H QVBH5H=fUHHt f rHu!]H pVmH5DH=H VBH5%H=NfUHHt f sHu!]H WmH5H=}HH yWBH5H=)fUHHt f tHu!]H WmH5H=H XBH5eH=fUHHt f uHu!]H 0XmH5$H=H XBH5H=.ifUHHt f Hu!]H XmH5H=](H XBH5H= fUHHt f vHu!]H YmH5dH=H iYBH5EH=nfUHHt f wHu!]H YmH5H=hH YBH5H=IfUHHt f pHu!]H YmH5H=<H PZBH5H=UHHt f xHu!]H pZmH5DH=H ZBH5%H=NfUHHt f 0Hu!]H ZmH5H=}HH A[BH5H=)fUHHt f yHu!]H X[mH5H=H [BH5eH=fUHHt f HHu!]H [mH5$H=H 1\BH5H=.ifUHHt f zHu!]H H\mH5H=](H \BH5H= fUHHt f {Hu!]H \mH5dH=H !]BH5EH=nfUHHt f |Hu!]H H]mH5H=hH ]BH5H=IfUHHt f }Hu!]H ]mH5H==H 9^BH5H=fUHHt f ~Hu!]H X^mH5DH=H ^BH5%H=NfUHHt f Hu!]H ^mH5H=}HH 9_BH5H=)fUHHt f Hu!]H O_mH5H=H _BH5dH=UHHt f Hu!]H _mH5#H=H (`BH5H=-hUHHt f Hu!]H G`mH5H=\'H `BH5H=UHHt f Hu!]H `mH5cH=H (aBH5DH=mUHHt f Hu!]H WamH5H=gH aBH5H= HUHHt f Hu!]H amH5H=<H PbBH5H=UHHt f Hu!]H gbmH5CH=H bBH5$H=MUHHt f Hu!]H bmH5H=|GH 8cBH5H=(UHHt f Hu!]H WcmH5H=H cBH5dH=UHHt f Hu!]H cmH5#H=H 0dBH5H=-hUHHt f Hu!]H GdmH5H=\'H dBH5H=UHHt f Hu!]H dmH5cH=H (eBH5DH=mUHHt f Hu!]H GemH5H=gH eBH5H= HUHHt f qHu!]H emH5H=<H fBH5H=UHHt f Hu!]H 'fmH5CH=H fBH5$H=MUHHt f Hu!]H fmH5H=|GH fBH5H=(UHHt f IHu!]H gmH5H=H ygBH5eH=fUHHt f Hu!]H gmH5#H=H gBH5H=-hUHHt f Hu!]H hmH5H=](H ahBH5H= fUHHt f Hu!]H whmH5cH=H hBH5DH=mUHHt f !Hu!]H hmH5H=hH IiBH5H=IfUHHt f Hu!]H _imH5H=<H iBH5H=UHHt f Hu!]H imH5CH=H (jBH5$H=MUHHt f Hu!]H ?jmH5H=|GH jBH5H=(UHHt f Hu!]H jmH5H=H kBH5dH=UHHt f Hu!]H kmH5#H=H xkBH5H=-hUHHt f Hu!]H kmH5H=\'H kBH5H=UHHt f Hu!]H kmH5cH=H `lBH5DH=mUHHt f Hu!]H wlmH5H=gH lBH5H= HUHHt f Hu!]H lmH5H=<H HmBH5H=UHHt f Hu!]H gmmH5CH=H mBH5$H=MUHHt f Hu!]H mmH5H=|GH HnBH5H=(UHHt f Hu!]H _nmH5H=H nBH5dH=UHHt f Hu!]H nmH5#H=H PoBH5H=-hUHHt f Hu!]H oomH5H=\'H oBH5H=UHHt f Hu!]H pmH5cH=H hpBH5DH=mUHHt f Hu!]H pmH5H=gH pBH5H= HUHHt f Hu!]H pmH5H=<H XqBH5H=UHHt f Hu!]H oqmH5CH=H qBH5$H=MUHHt f Hu!]H qmH5H=|GH HrBH5H=(UHHt f Hu!]H ormH5H=H rBH5dH=UHHt f Hu!]H rmH5#H=H HsBH5H=-hUHHt f Hu]Alff.UHHt f Hu!]H ?smH5H=,H sBH5tH=UHHt f Hu!]H smH53H=H tBH5H==xUHHt f Hu!]H /tmH5H=l7H tBH5H=UHHt f Hu!]H tmH5sH= H uBH5TH=}UHHt f Hu!]H ?umH5H=wH uBH5H=XUHHt f Hu!]H umH5H=LH vBH5H=UHHt f Hu!]H /vmH5SH=H vBH54H=]UHHt f Hu!]H vmH5H=WH vBH5H=8UHHt f Hu!]H wmH5H=,H pwBH5tH=UHHt f Hu!]H wmH53H=H wBH5H==xUHHt f Hu!]H xmH5H=l7H hxBH5H=UHHt f Hu!]H xmH5sH= H xBH5TH=}UHHt f Hu!]H ymH5H=wH yBH5H=XUHHt f Hu!]H ymH5H=LH zBH5H=UHHt f "Hu!]H @zmH5TH=H zBH55H=^fUHHt f 1Hu!]H zmH5H=XH {BH5H=9fUHHt f Hu!]H '{mH5H=,H {BH5tH=UHHt f Hu!]H {mH53H=H {BH5H==xUHHt f Hu!]H |mH5H=l7H `|BH5H=UHHt f Hu!]H w|mH5sH= H |BH5TH=}UHHt f Hu!]H |mH5H=wH @}BH5H=XUHHt f Hu!]H W}mH5H=LH }BH5H=UHHt f Hu!]H }mH5SH=H @~BH54H=]UHHt f Hu!]H W~mH5H=WH ~BH5H=8UHHt f Hu!]H ~mH5H=,H BH5tH=UHHt f Hu!]H 7mH53H=H BH5H==xUHHt f Hu!]H mH5H=m8H BH5H=fUHHt f Hu!]H ?mH5sH= H BH5TH=}UHHt f Hu!]H mH5H=xH !BH5H=YfUHHt f Hu!]H ?mH5H=LH BH5H=UHHt f Hu!]H mH5SH=H (BH54H=]UHHt f PHu!]H HmH5H=XH BH5H=9fUHHt f QHu!]H ؂mH5H=-H 9BH5uH=fUHHt f Hu!]H WmH53H=H BH5H==xUHHt f Hu!]H ǃmH5H=l7H BH5H=UHHt f Hu!]H /mH5sH= H BH5TH=}UHHt f Hu!]H mH5H=wH BH5H=XUHHt f Hu!]H mH5H=LH pBH5H=UHHt f rHu!]H mH5SH=H BH54H=]UHHt f Hu!]H mH5H=WH `BH5H=8UHHt f sHu!]H mH5H=,H ؆BH5tH=ؿUHHt f 2Hu!]H mH54H=蘿H QBH5H=>yfUHHt f Hu!]H omH5H=l7H ЇBH5H=UHHt f Hu!]H mH5sH= ׾H XBH5TH=}踾UHHt f Hu!]H wmH5H=wH ؈BH5H=XUHHt f Hu!]H mH5H=LH PBH5H=UHHt f 3Hu!]H hmH5TH=踽H ɉBH55H=^虽fUHHt f #Hu!]H mH5H=XH ABH5H=9fUHHt f tHu!]H WmH5H=,H BH5tH=ؼUHHt f Hu!]H ߊmH53H=藼H @BH5H==xUHHt f Hu!]H _mH5H=l7H BH5H=UHHt f uHu!]H ߋmH5sH= ׻H 8BH5TH=}踻UHHt f Hu!]H OmH5H=wH BH5H=XUHHt f 4Hu!]H ЌmH5H=MH )BH5H=fUHHt f Hu!]H ?mH5SH=跺H BH54H=]蘺UHHt f 5Hu!]H mH5H=XH BH5H=9fUHHt f Hu!]H /mH5H=,H BH5tH=عUHHt f Hu!]H mH53H=藹H BH5H==xUHHt f Hu!]H mH5H=l7H BH5H=UHHt f Hu!]H mH5sH= ׸H BH5TH=}踸UHHt f Hu!]H mH5H=wH pBH5H=XUHHt f Hu!]H mH5H=LH BH5H=UHHt f Hu!]H mH5SH=跷H XBH54H=]蘷UHHt f Hu!]H omH5H=WH БBH5H=8UHHt f Hu!]H mH5H=,H HBH5tH=ضUHHt f Hu!]H _mH53H=藶H BH5H==xUHHt f Hu!]H ϒmH5H=l7H (BH5H=UHHt f Hu!]H ?mH5sH= ׵H BH5TH=}踵UHHt f Hu!]H mH5H=wH BH5H=XUHHt f Hu!]H /mH5H=LH BH5H=UHHt f Hu!]H mH5SH=跴H BH54H=]蘴UHHt f Hu!]H mH5H=WH BH5H=8UHHt f Hu!]H mH5H=,H BH5tH=سUHHt f vHu!]H mH53H=藳H xBH5H==xUHHt f $Hu!]H mH5H=m8H BH5H=fUHHt f JHu!]H mH5tH= زH YBH5UH=~蹲fUHHt f Hu!]H omH5H=wH ЗBH5H=XUHHt f Hu!]H mH5H=LH PBH5H=UHHt f Hu!]H omH5SH=跱H ؘBH54H=]蘱UHHt f Hu!]H mH5H=WH hBH5H=8UHHt f 6Hu!]H mH5H=-H BH5uH=ٰfUHHt f Hu!]H mH53H=藰H pBH5H==xUHHt f Hu!]H mH5H=l7H BH5H=UHHt f Hu!]H mH5sH= ׯH PBH5TH=}踯UHHt f wHu!]H gmH5H=wH BH5H=XUHHt f Hu!]H כmH5H=LH 0BH5H=UHHt f Hu!]H GmH5SH=跮H BH54H=]蘮UHHt f Hu!]H mH5H=XH BH5H=9fUHHt f Hu!]H 'mH5H=,H BH5tH=حUHHt f Hu!]H mH53H=藭H BH5H==xUHHt f xHu!]H mH5ӿH=l7H hBH5H=ݿUHHt f (Hu!]H mH5tH= جH ٞBH5UH=~蹬fUHHt f Hu!]H mH5H=wH XBH5H=XUHHt f )Hu!]H mH5H=MH ٟBH5H=fUHHt f Hu!]H mH5SH=跫H PBH54H=]蘫UHHt f Hu!]H gmH5H=WH BH5ԽH=8UHHt f Hu!]H נmH5H=,H 8BH5tH=تUHHt f Hu!]H WmH53H=藪H BH5H==xUHHt f Hu!]H סmH5ӼH=l7H 0BH5H=ݼUHHt f Hu!]H GmH5sH= שH BH5TH=}踩UHHt f Hu!]H mH5H=wH BH5H=XUHHt f Hu!]H GmH5H=LH BH5H=UHHt f Hu!]H ǣmH5SH=跨H (BH54H=]蘨UHHt f Hu!]H GmH5H=WH BH5ԺH=8UHHt f Hu!]H פmH5H=,H 0BH5tH=اUHHt f Hu!]H GmH53H=藧H BH5H==xUHHt f Hu!]H ǥmH5ӹH=l7H BH5H=ݹUHHt f KHu!]H 8mH5tH= ئH BH5UH=~蹦fUHHt f Hu!]H mH5H=wH BH5H=XUHHt f Hu!]H 'mH5H=LH BH5H=UHHt f yHu!]H mH5SH=跥H BH54H=]蘥UHHt f Hu!]H 'mH5H=WH BH5ԷH=8UHHt f zHu!]H mH5H=,H BH5tH=ؤUHHt f Hu!]H 'mH53H=藤H BH5H==xUHHt f Hu!]H mH5ӶH=l7H BH5H=ݶUHHt f {Hu!]H 7mH5sH= ףH BH5TH=}踣UHHt f Hu!]H mH5H=wH BH5H=XUHHt f LHu!]H HmH5H=MH BH5H=fUHHt f Hu!]H mH5SH=跢H BH54H=]蘢UHHt f Hu!]H 7mH5H=WH BH5ԴH=8UHHt f Hu!]H ǬmH5H=,H (BH5tH=ءUHHt f Hu!]H GmH53H=̽藡H BH5H==xUHHt f Hu!]H ׭mH5ӳH=l7H @BH5H=ݳUHHt f |Hu!]H gmH5sH= נH ȮBH5TH=}踠UHHt f Hu!]H ߮mH5H=wH 8BH5H=XUHHt f Hu!]H OmH5H=LH BH5H=UHHt f Hu!]H ϯmH5SH=跟H 0BH54H=]蘟UHHt f }Hu!]H OmH5H=WH BH5ԱH=8UHHt f ~Hu!]H ϰmH5H=,H 8BH5tH=؞UHHt f Hu!]H _mH53H=̺藞H BH5H==xUHHt f Hu!]H ϱmH5ӰH=l7H 0BH5H=ݰUHHt f Hu!]H OmH5sH= םH BH5TH=}踝UHHt f Hu!]H ϲmH5H=wH 8BH5H=XUHHt f Hu!]H _mH5H=LH ȳBH5H=UHHt f Hu!]H mH5TH=踜H IBH55H=^虜fUHHt f Hu!]H _mH5H=WH ȴBH5ԮH=8UHHt f Hu!]H mH5H=-H YBH5uH=ٛfUHHt f Hu!]H mH54H=ͷ蘛H ٵBH5H=>yfUHHt f Hu!]H mH5ӭH=l7H PBH5H=ݭUHHt f Hu!]H omH5sH= ךH жBH5TH=}踚UHHt f Hu!]H mH5H=wH PBH5H=XUHHt f Hu!]H omH5H=LH طBH5H=UHHt f 7Hu!]H mH5TH=踙H aBH55H=^虙fUHHt f Hu!]H mH5H=WH BH5ԫH=8UHHt f Hu!]H mH5H=,H pBH5tH=ؘUHHt f Hu!]H mH53H=̴藘H BH5H==xUHHt f Hu!]H mH5ӪH=l7H BH5H=ݪUHHt f Hu!]H mH5sH= חH BH5TH=}踗UHHt f Hu!]H 'mH5H=wH BH5H=XUHHt f Hu!]H mH5H=LH BH5H=UHHt f Hu!]H 'mH5SH=跖H BH54H=]蘖UHHt f Hu!]H mH5H=WH BH5ԨH=8UHHt f Hu!]H 8mH5H=-H BH5uH=ٕfUHHt f Hu!]H ȽmH54H=ͱ蘕H 1BH5H=>yfUHHt f Hu!]H XmH5ԧH=m8H BH5H=ާfUHHt f Hu!]H mH5tH= ؔH YBH5UH=~蹔fUHHt f Hu!]H mH5H=xH BH5H=YfUHHt f Hu!]H 'mH5H=LH BH5H=UHHt f Hu!]H mH5SH=跓H BH54H=]蘓UHHt f Hu!]H @mH5H=XH BH5եH=9fUHHt f Hu!]H mH5H=-H 9BH5uH=ْfUHHt f %Hu!]H `mH54H=ͮ蘒H BH5H=>yfUHHt f Hu!]H mH5ӤH=l7H @BH5H=ݤUHHt f Hu!]H _mH5sH= בH BH5TH=}踑UHHt f Hu!]H mH5H=wH 8BH5H=XUHHt f Hu!]H OmH5H=LH BH5H=UHHt f Hu!]H mH5SH=跐H BH54H=]蘐UHHt f Hu!]H /mH5H=WH BH5ԢH=8UHHt f Hu!]H mH5H=,H BH5tH=؏UHHt f 8Hu!]H mH54H=ͫ蘏H yBH5H=>yfUHHt f MHu!]H mH5ԡH=m8H BH5H=ޡfUHHt f Hu!]H mH5sH= ׎H xBH5TH=}踎UHHt f 9Hu!]H mH5H=xH BH5H=YfUHHt f Hu!]H mH5H=LH `BH5H=UHHt f Hu!]H wmH5SH=跍H BH54H=]蘍UHHt f Hu!]H mH5H=WH pBH5ԟH=8UHHt f Hu!]H mH5H=,H BH5tH=،UHHt f !Hu!]H 'mH53H=̨藌H BH5H==xUHHt f "Hu!]H mH5ӞH=l7H BH5H=ݞUHHt f #Hu!]H GmH5sH= ׋H BH5TH=}踋UHHt f $Hu!]H mH5H=wH (BH5H=XUHHt f :Hu!]H HmH5H=MH BH5H=fUHHt f ;Hu!]H mH5TH=踊H !BH55H=^虊fUHHt f %Hu!]H ?mH5H=WH BH5ԜH=8UHHt f &Hu!]H mH5H=,H BH5tH=؉UHHt f Hu!]H 8mH54H=ͥ蘉H BH5H=>yfUHHt f Hu!]H mH5ԛH=m8H BH5H=ޛfUHHt f 'Hu!]H mH5sH= ׈H pBH5TH=}踈UHHt f (Hu!]H mH5H=wH BH5H=XUHHt f )Hu!]H mH5H=LH hBH5H=UHHt f *Hu!]H mH5SH=跇H BH54H=]蘇UHHt f Hu!]H mH5#H=~H PBH5H=-h~UHHt f ?Hu!]H gmH5ÐH=\'~H BH5H=͐~UHHt f *Hu!]H mH5dH=}H QBH5EH=n}fUHHt f @Hu!]H gmH5H=g}H BH5H= H}UHHt f >Hu!]H mH5H==}H 9BH5H=|fUHHt f CHu!]H XmH5DH=ݘ|H BH5%H=N|fUHHt f AHu!]H mH5H=|G|H 8BH5ĎH=(|UHHt f BHu!]H WmH5H={H BH5dH={UHHt f CHu!]H mH5#H={H 0BH5H=-h{UHHt f DHu!]H GmH5ÍH=\'{H BH5H=͍{UHHt f EHu!]H mH5cH=zH (BH5DH=mzUHHt f ?Hu!]H HmH5H=hzH BH5H=IzfUHHt f DHu!]H mH5H==zH BH5H=yfUHHt f FHu!]H 7mH5CH=ܕyH BH5$H=MyUHHt f EHu!]H mH5H=}HyH BH5ŋH=)yfUHHt f GHu!]H 'mH5H=xH BH5dH=xUHHt f HHu!]H mH5#H=xH (BH5H=-hxUHHt f FHu!]H XmH5ĊH=](xH BH5H=Ί xfUHHt f IHu!]H mH5cH=wH 8BH5DH=mwUHHt f JHu!]H OmH5H=gwH BH5H= HwUHHt f Hu!]H mH5H=<wH 0BH5H=vUHHt f KHu!]H OmH5CH=ܒvH BH5$H=MvUHHt f Hu!]H mH5H=|GvH 8BH5ĈH=(vUHHt f Hu!]H _mH5H=uH BH5dH=uUHHt f @Hu!]H mH5$H=uH IBH5H=.iufUHHt f LHu!]H _mH5ÇH=\'uH BH5H=͇uUHHt f MHu!]H mH5cH=tH (BH5DH=mtUHHt f NHu!]H ?mH5H=gtH BH5H= HtUHHt f OHu!]H mH5H=<tH BH5H=sUHHt f PHu!]H ?mH5CH=܏sH BH5$H=MsUHHt f AHu!]H mH5H=}HsH BH5ŅH=)sfUHHt f Hu!]H /mH5H=rH BH5dH=rUHHt f QHu!]H mH5#H=rH BH5H=-hrUHHt f RHu!]H mH5ÄH=\'rH xBH5H=̈́rUHHt f SHu!]H mH5cH=qH BH5DH=mqUHHt f Hu!]H mH5H=hqH BH5H=IqfUHHt f Hu!]H mH5H==qH BH5H=pfUHHt f Hu!]H mH5DH=݌pH BH5%H=NpfUHHt f Hu!]H mH5H=}HpH BH5łH=)pfUHHt f THu!]H mH5H=oH BH5dH=oUHHt f UHu!]H mH5#H=oH BH5H=-hoUHHt f Hu!]H mH5āH=](oH yBH5H=΁ ofUHHt f VHu!]H mH5cH=nH BH5DH=mnUHHt f WHu!]H mH5H=gnH hBH5H= HnUHHt f &Hu!]H mH5H==nH BH5H=mfUHHt f XHu!]H mH5CH=܉mH XBH5$H=MmUHHt f YHu!]H wmH5H=|GmH BH5H=(mUHHt f OHu!]H mH5H=lH ABH5eH=lfUHHt f ZHu!]H WmH5#H=lH BH5H=-hlUHHt f [Hu!]H mH5~H=\'lH (BH5~H=~lUHHt f \Hu!]H GmH5c~H=kH BH5D~H=m~kUHHt f ]Hu!]H mH5~H=gkH BH5}H= ~HkUHHt f ^Hu!]H 'mH5}H=<kH BH5}H=}jUHHt f BHu!]H mH5D}H=݆jH BH5%}H=N}jfUHHt f _Hu!]H mH5|H=|GjH hBH5|H=|(jUHHt f `Hu!]H mH5|H=iH BH5d|H=|iUHHt f aHu!]H mH5#|H=iH PBH5|H=-|hiUHHt f bHu!]H omH5{H=\'iH BH5{H={iUHHt f cHu!]H mH5c{H=hH 8BH5D{H=m{hUHHt f dHu!]H OmH5{H=ghH BH5zH= {HhUHHt f eHu!]H mH5zH=<hH (BH5zH=zgUHHt f Hu!]H PmH5DzH=݃gH BH5%zH=NzgfUHHt f fHu!]H mH5yH=|GgH 8BH5yH=y(gUHHt f gHu!]H _mH5yH=fH BH5dyH=yfUHHt f hHu!]H mH5#yH=fH PBH5yH=-yhfUHHt f iHu!]H omH5xH=\'fH BH5xH=xfUHHt f jHu!]H mH5cxH=eH `BH5DxH=mxeUHHt f kHu!]H mH5xH=geH BH5wH= xHeUHHt f lHu!]H mH5wH=<eH XBH5wH=wdH7HW@Ðf.tfFI<UHHSHHrHuH]fH舁HHt@7rHH@.fBDuHB0HHHvoHHH@HHHvWHHHtjxuVf.B.vHBHHHwH]1H #H5gH={cH mH5uH=\cH H5uH=J=cDH BH5uH=ucHHuHBHHHHvB.wff.UHHtWH.w]蚅Ņ@UHAUI?ATSHHHL9oIH5~IT$(uuH{HuLH5}H{H?H+GHv;H5}H[A\A]]HrL+oHI9sH=2!e\ff.UIIHSHIyHLFHRHI2JH9I9AsIzH9IzH9sgH?L)H9L}HKH HHpH9HHPHSHPHS@H0H@HH]11LljHKH HHpH9uHPHzHPIHSLDLDLCIL)I)ʃv1҉уM M 9r[f.fDHIzH9@HPHzrSHPIHSLDLDLCIL)I)ʃ1҉уM M 9rD@u.PS@T>fT9HPPST>T9HPxH=bfDH?UHH+GHHvH5K{1]H=bff.UHAVI?AUATSHHL9wtfL-_ILzHLHBtH{HLH+GH9r*zH{L9wtLz[A\A]A^]H= a1ÐH,UHAVAUATSf~ HHT-F H37HcH>@H[A\HA]A^]H[A\HA]A^]H[A\HA]A^]mH[A\HA]A^]UH[A\HA]A^]=XH[A\HA]A^]%H[A\HA]A^] H[A\HA]A^]PH[A\HA]A^]H[A\HA]A^]H[A\HA]A^]舾H[A\HA]A^]H[A\HA]A^]}蘽H[A\HA]A^]eH[A\HA]A^]MHHI:It$(H1[A\A]A^]薷H[A\HA]A^]c>H[A\HA]A^]H[A\HA]A^]莶H[A\HA]A^]薨H[A\HA]A^]>HHIIt$0H1[A\A]A^]!H[A\HA]A^]YԛH[A\HA]A^]AH[A\HA]A^])蔁H[A\HA]A^]|xH[A\HA]A^]iHHI=It$(H1[A\A]A^]whH[A\HA]A^]JfH[A\HA]A^]H[A\HA]A^]H[A\HA]A^]gH[A\HA]A^]OH[A\HA]A^]7"H[A\HA]A^]H[A\HA]A^]2H[A\HA]A^]ZH[A\HA]A^]H[A\HA]A^]jH[A\HA]A^]H[A\HA]A^]zH[A\HA]A^]wH[A\HA]A^]_H[A\HA]A^]GHHI4ID$(H(H0HHP[A\A]A^]H[A\HA]A^]H[A\HA]A^]H[A\HA]A^] H[A\HA]A^]rH[A\HA]A^]H[A\HA]A^]w"H[A\HA]A^]_JH[A\HA]A^]GH[A\HA]A^]/H[A\HA]A^]H[A\HA]A^]JH[A\HA]A^]H[A\HA]A^]ZH[A\HA]A^]H[A\HA]A^]H[A\HA]A^]H[A\HA]A^]oH[A\HA]A^]WBH[A\HA]A^]?HHI,ID$0H%H0HHP[A\A]A^]HHItGIu(1Ht5Me8AE0M,M9u%IM9%I4$1HUu[1A\A]A^]H[A\HA]A^]~IH[A\HA]A^]fH[A\HA]A^]N9H[A\HA]A^]6!H[A\HA]A^]IH[A\HA]A^]H[A\HA]A^]H[A\HA]A^]H[A\HA]A^] H[A\HA]A^]H[A\HA]A^]H[A\HA]A^]vAH[A\HA]A^]^HHIKIu(1HMe8AE0M,M9u#IM9#I4$1HuKH[A\HA]A^]H[A\HA]A^]H[A\HA]A^]H[A\HA]A^]GH[A\HA]A^]tH[A\HA]A^]\WH[A\HA]A^]DH[A\HA]A^],H[A\HA]A^]H[A\HA]A^]H[A\HA]A^]H[A\HA]A^]'HHIMe(AE$M,M9u"IM9s"I4$1H-uoH[A\HA]A^]\7HHIIMe(AE$M,M9u"IM9"I4$1HucH[A\HA]A^]H[A\HA]A^]/H[A\HA]A^]H[A\HA]A^]?H[A\HA]A^]H[A\HA]A^]tHHIaIt$(H1[A\A]A^]=HHI/ID$(H!H0HHP[A\A]A^]HHIFID$(H H0HHP[A\A]A^]҇H[A\HA]A^]H[A\HA]A^] H[A\HA]A^]zH[A\HA]A^]bH[A\HA]A^]JHHI7ID$(H H0HHP[A\A]A^]H[A\HA]A^]mH[A\HA]A^]H[A\HA]A^]}H[A\HA]A^]HHIID$(HiH0HHP[A\A]A^]zeH[A\HA]A^]R荾H[A\HA]A^]:H[A\HA]A^]"}H[A\HA]A^] ŹH[A\HA]A^]荸H[A\HA]A^]H[A\HA]A^]蝷H[A\HA]A^]%H[A\HA]A^]譶H[A\HA]A^]zH[A\HA]A^]b蝴H[A\HA]A^]JeH[A\HA]A^]2荲H[A\HA]A^]H[A\HA]A^]蝱H[A\HA]A^]襯H[A\HA]A^]-H[A\HA]A^]赮H[A\HA]A^]ݭH[A\HA]A^]eH[A\HA]A^]rH[A\HA]A^]ZuH[A\HA]A^]BH[A\HA]A^]*%H[A\HA]A^]MHHIVIu(1H@Me@AE8M4M9umIM9]I4$1H]uHHIIt$0H1[A\A]A^]"荨H[A\HA]A^]Z赧HHIGIt$(1HIt$0H1[A\A]A^] H[A\HA]A^]4H[A\HA]A^]輥H[A\HA]A^]DH[A\HA]A^]̤H[A\HA]A^]TH[A\HA]A^]ܣH[A\HA]A^]idH[A\HA]A^]QH[A\HA]A^]9tH[A\HA]A^]!H[A\HA]A^] 脡H[A\HA]A^] H[A\HA]A^]蔠H[A\HA]A^]輟H[A\HA]A^]脞H[A\HA]A^] H[A\HA]A^]y4H[A\HA]A^]a輜H[A\HA]A^]IH[A\HA]A^]1lH[A\HA]A^]H[A\HA]A^]H[A\HA]A^]褙H[A\HA]A^],H[A\HA]A^]贘H[A\HA]A^]H[A\HA]A^]褖H[A\HA]A^]q,H[A\HA]A^]Y贕H[A\HA]A^]ACH[A\HA]A^]kBH[A\HA]A^]SAHHI@It$(1HIt$0H1[A\A]A^]vH[A\HA]A^] vH[A\HA]A^]eH[A\HA]A^]}EHHIMe(AE$M,M9uyIM9kI4$1H%ugDHHIYMe(AE$M,M9u#IM9I4$1HusOCH[A\HA]A^]BH[A\HA]A^]FH[A\HA]A^]DHHIMe(AE$M,M9uIM9sI4$1H-uߺH[A\HA]A^]\H[A\HA]A^]D_H[A\HA]A^],H[A\HA]A^]oH[A\HA]A^]H[A\HA]A^]迧H[A\HA]A^]臝H[A\HA]A^]/H[A\HA]A^]|H[A\HA]A^]{H[A\HA]A^]l'yH[A\HA]A^]T/wH[A\HA]A^]H[A\HA]A^]=H[A\HA]A^]=H[A\HA]A^]?H[A\HA]A^]|׉H[A\HA]A^]dH[A\HA]A^]L'FH[A\HA]A^]4H[A\HA]A^]H[A\HA]A^]?H[A\HA]A^]xH[A\HA]A^]kH[A\HA]A^]]HHIIt$(H1[A\A]A^]:UH[A\HA]A^]rH[A\HA]A^]ZH[A\HA]A^]B H[A\HA]A^]*H[A\HA]A^]H[A\HA]A^]蕱H[A\HA]A^]H[A\HA]A^]襪H[A\HA]A^]-H[A\HA]A^]赠H[A\HA]A^]}H[A\HA]A^]jH[A\HA]A^]R荞H[A\HA]A^]:H[A\HA]A^]"蝝H[A\HA]A^] H[A\HA]A^]mH[A\HA]A^]蕖H[A\HA]A^]݄H[A\HA]A^]nH[A\HA]A^]mH[A\HA]A^]zZH[A\HA]A^]bNH[A\HA]A^]JIH[A\HA]A^]2mIH[A\HA]A^]HH[A\HA]A^]}HH[A\HA]A^]GH[A\HA]A^]FH[A\HA]A^]UFH[A\HA]A^]CHHIMe8AE0M4M9uIM9I4$1Hu>H[A\HA]A^]4迾H[A\HA]A^]@[A\A]A^]f.MeHAE@M,M9uIM9tI4$1HyuMeHAE@M,M9uDIM9tI4$1HAuH1[A\A]A^]&RH5BH=;MePAEHM,M9u0IM9I4$1Hտu{ff.UHAWAVIAUATISHHF`HtH0HPeILP@1LHvADŽEnpI^hIIL9t'HsHt1L=tQHI9uAFtDL1KPHL,AFtLvKHHI9tH3LLuE1HD[A\A]A^A_]ÐfUHAWIAVAUATISHuE1HD[A\A]A^A_]AAGtL1JPHL4AGtLJH fDHI9tH3LufDUHAWIAVAUATISHduE1HD[A\A]A^A_]AAGtL1dJPHL4AGtLKJH fDHI9tH3LufDUHSHHvFH'.HHHH]UHATSHLgHtNxwCHHx LHtTIt 1HHHH)Htxw[H@ HA\]fDK-H tmH5@H=1J-%fDUHATSHHOH}PHLat-t@P1f@@TL$ Hx?KHt5Jt!1HHH)HHtBwHB[HA\]3@n$ff.UHATSHLgHt^HQwMHHx JHtDIt 1HHHH)Ht'XSw[H@ HA\]f.,,#H1Ht HHHDHÐHHtHƒHtHt-fHu1HfDHt H@HHtHƒHuHtH@UH H5RH=OmH',H1Ht HHHDHÐH1Ht HHHDHÐHHtHHHD1Ðff.UѸHHAWAVLpHAUATISLHHwPH7J6H!H)HIHGHH)H9r H?O4IKA9GILLEDKLEINjCHPH9 HSL<‹SKHHH9IML;CLCM5LL!IM9GL#H[A\A]A^A_]LǾLECKLLEINjCHHPH9HHC@L8L@SHKLHHH9CHMM!MMM9HL[A\A]A^A_]DHIL'H[A\A]A^A_]Hs H{*CLEfHsPH{@)CHLEEH cH5H=)~  H :H5VH=j)H H57H=K)f.UHAUATISHHHHcHHLpFMH-L(H@L`HHHHDHHtlHHH8G 9CtCHLHCH[A\A]]fD@HHHt^HHuueHH[A\A]]@HH[A\A]]H RH5fjH=j'H H5gNH=h'KH H5CNH=h'H H5$NH=h'HUHAVAUATISHH FFu!f<@uF<tHvXHe[A\A]A^]He[A\A]A^]H51t H.HLM=t9H(IHH9u@HI9tH3L u1He[A\A]A^]Hv8HS@qtH41t H .HL<tH#(IHH9u3HI9#H3Lu1H(41t H-HLo<WCHUAPHL,1Ct H;AHI9Hf.HI9H3Lu1H31t H-HL;CJH@PHL,1Ct H@HI9HHI9H3Lhu1_H31t H,HLL;4H&IHH9u@HI9H3Lu1H21t H,HL:H4&IHH9uD@HI93H3Lu1He[A\A]A^] HHe[A\A]A^]FHe[A\A]A^]EMH11t Hw+HL<:$H%IHH9u@HI9H3Lu1He[A\A]A^]DCdLkhMtM9uIM9IuLu17H'11t H*HLn9VH$IHH9ufDHI9H3L u1H01t H2*HL8HG$IHH9uWHI9CH3Lu1He[A\A]A^]lAHe[A\A]A^];@He[A\A]A^]>]H01t H)HLL84H#IHH9u@HI9H3Lu1He[A\A]A^]He[A\A]A^]3He[A\A]A^]"He[A\A]A^]He[A\A]A^]p{H"IHH9u HI9H3L`u1WHvH1BH.1t Hl(HL17H"IHH9uHI9H3Lu1HF@HH0HPUCBH;PHL,1Ct H;HI9HHI9H3L`u1WHv8,DH-1t Hn'HL36H!IHH9uHI9H3Lu1He[A\A]A^]H421LHWH!IHH9u'HI9H3Lxu1oHv(t5\H IHH9u@HI9H3L(u1Hv($5 Ht IHH9u@HI9sH3Lؿu1Hv(4H$ IHH9u4@HI9#H3L舿u1Hv(4lHIHH9u@HI9H3L8u1/He[A\A]A^]4H+1t HF%HL 4H[IHH9ukHI9[H3Lu1Hv03H IHH9u@HI9 H3Lpu1gHv0l3THIHH9u@HI9H3L u1He[A\A]A^]GHv0 3H[IHH9ukHI9[H3Lu1Hv02H IHH9u@HI9 H3Lpu1gHe[A\A]A^]$DHe[A\A]A^]8He[A\A]A^]B1He[A\A]A^]6He[A\A]A^]5He[A\A]A^]4H)1t H)#HL1C\H6PHL,1Ct H6HI9.HfHI9H3Lxu1oH)1t H"HL\1DHIHH9u@HI9H3Lu1H(1t H/"HL0HDIHH9uT@HI9CH3L註u1Hv(1H.Hs01LpH(1t H!HL_0GHIHH9uHI9H3Lu1DHv(1蕨H'1t H!HL/H,IHH9u<@HI9+H3L萺u1He[A\A]A^]JHe[A\A]A^]cIHe[A\A]A^]rHH&1t H| HLA/)HIHH9uHI9H3Lu1H&1t H HL.H,IHH9u<@HI9+H3L萹u1Hv(1rH&1t HHLa.IHIHH9uHI9H3Lu1He[A\A]A^]BHe[A\A]A^]>HLH0HPLHt%1t HHL-H IHH9uHI9 H3Lpu1gHmLH0HPNLFH$1t HpHL5-HIHH9uDHI9H3Lu1HvHHSPaHp$1t HHL,HIHH9uHI9H3Lhu1_He[A\A]A^]<?HL(LAEAIIMDI M9LLu1He[A\A]A^]\:HL4Hs@L+HIHH9uHI9H3Lhu1_DHe[A\A]A^]w"He[A\A]A^]fCHe[A\A]A^]EBHF@H0HPJ H"1t H7HL*HLIHH9u\@HI9KH3L谵u1HM"1t HHL*|HIHH9u@HI9H3LHu1?HvHHSP _(HIHH9uHI9H3Lu1H!1t HHL)H,IHH9u<@HI9+H3L萴u1Ln8AEMtIM9uSDIM9tEIuLu1JHvX1ݡ5Hs`Ht1L¡Hs0HeL[A\A]A^] H 1t H,HL(HAIHH9uQHI9CH3L訳u1HE 1t HHL(tHIHH9u@HI9H3L@u17H1t H_HL$( HtIHH9u@HI9sH3Lزu1Hv@HSH\SHK(H LHCPHMUfoEHEHD$$\H |H$1t HHLk'SHIHH9uHI9H3L u1DH1t H:HL&HOIHH9u_HI9KH3L谱u1Hv8|Hs0LH(1t HHLo&WHIHH9uHI9H3L u1DHv0'Hs8LӵH1t HHL%H*IHH9u:f.HI9#H3L舰u1DHv8OgHs@1LQH1t H{HL@%(HIHH9uHI9H3Lu1DHv8迴Hs0LHk1t HHL$HIHH9ufHI9H3Lhu1_DHv8/GHs0L[3H1t H]HL"$ HrIHH9ufHI9sH3Lخu1DHe[A\A]A^]9H_1t HHL#HIHH9ufDHI9H3LXu1OHv817HL誵"Hs@L&#HvIHH9ufDHI9sH3Lحu1ÐfDUHAWAVAUATIHSHHdH%(HE1{!CH?I|$H9G1H5'HLnHC0HHHHH8HL}HEH(E1A1ɺ LfoxH(HEE%HELpLuL`HHu ML8IIMH`LH LhB0H(H}H9t"H A11H FLuHHHpLuHH9BHUHPHUHPHUHH@@H?H9EOH5PL/&HHPH(HqHQH@HH9H@HAHPH?AI|$HHHAH+GH1H@H9%H@H(H9tHPHpH}L9t HEHpH`L9tHpHpCDjI4$Hà }c~=}='|v9?Bkv RH=ɚ;V pL}1LuLLuPuH}1A11H sLILpHHHpL`HH9wH`HPHpHPHh@I|$H@HhHH`H?H+GH9$H`L9tHpHp@H}L9t HEHp*H?I|$H+GHDHEdH+%(LH5!H[A\A]A^A_]#HC0HHHHH8H!+uLH%H?I|$H+GHHEdH+%(H5f@HpH`H81HH H`HH8HpHLRL8H`fD fDHL(H1HQJHMHʃ1@ul@uV:A8HMHʃ1@@i:A8\D :fE 8H뚋:A88A8TD 8fE 8H88A8 A1A׃L9M>D9rMH*A1AL(L>M:D9rMH:A81D :fE 8H(A1A׃L9MD=D9rMDHH`LH HEdH+%(u H=H :H56H=?:HEdH+%(uH=ˤHEdH+%(uH=oHEdH+%(uH=HEdH+%(sH=veH'FH#FH:FHEHJFH"Fff.UHAWAVAUATISH?H8HHdH%(HE1HH+GH!H5sHHP("I|$HH5I|$H?H+GHH5HLHPH HHt@7 HHtJ@. HL=C.vHCHHHwHHHt@7HV I?I|$L9oHHHI|$@I< HWu3I)Հ I v~ H5|I|$H?H9GtQHSHEdH+%(y H8[A\A]A^A_]HrHH+GHH9HEdH+%(5 H=I<$HI<$IH@0I;E8 H0HI$HHt@7 $HHL@. DI<$Hs0HHt IU0HI;E8~ H0I<$IHM)I  Ic I I' LHKY8m4.H?BHnHHHHH HwHPH@1HHH@H@HLNHo Aƃ  c = =' AvHL9tHHpb H HH9tH0Hp? H`L9tHpHp# H}HH9t HEHp H}HH9t HEHp H@HH9tHPHp LHHLIZC.HCHHHwMmM9M)I LIc3II'LHKY8m41f.H?BHHHHH؃H HwHEH}-HIH}HHH}LIA11H ʮLHHEHLGHWHEHL9ZHEHGHEHGHEH?HGGH+ELHHEH5LHHLpHxHHL`HH9H`HPHpHPHh@H8I|$H@HhH?H+GH`H9NH`L9tHpHpr H}HH9t HEHpU H}HH9HEHp4 pJHH11L`vH0HpHPH HHH9HIIHA1AσL>M:D9rHLHxfp^fDp >HMH1t 8A8tD 8fE 8Ht8A8HQMH@HHOLL9,:HMHʃa1@t :A8@tD :fE 8H:A8yLHHMЃ1@t :A8@tD :fE 8H:A8LHHMЃ1t 9A8tD 9fE 8Ht9A8HP+I|$HGHp&A1AǃL>M>D9rMHWA1A׃L9M:D9rHLHA1A׃L9M?D9rMHxA1AσL>M:D9rHLHIH5cI|$BL+oI H5%I|$kapHpHpH|HMH1t 2A0tD 2fE 0HA2A04HHLsa1t tD fD HsgH BH5CH=l1HM L 9rHHLrA1AփL 7M 7D9rMHXI:+2H {tH5H=HEdH+%(uHEH=%H HEdH+%(uH=HEdH+%(uH=L`HEdH+%(fH H=HHEdH+%(9HEH=Hy4H H5H="HEdH+%(H=G6Hn5HV5H5H5H5H5H5Hp5H=5H5ff.fDUHSHHHH`HH]HHv fUHAVAUATSH@HudH%(HUHHHw/f.HUdH+%(H@[A\A]A^]HHHx5w@HHH}HcH>@HHHp \f.kwfD[HHHp,g;H8HHCHH0+HHp1H HL It$ AD$It$@HuHL It$ It$(HuHL(IuUAEMe0Mt0M9oI4$HtzIM9,H}L(IEHEL;(tIuHtCMe0EmAMM9ufDIM9I4$Hu1L It$(@HztIt$ HiL It$(Ht1Hh~tIt$0Ht1HP~u1e@H@Hp0(HH0͏8L It$dHH0HL L>@1L It$ Ht1H}It$(H~HL It$ "AńAD$Mt$0H@M$M9uDIM9LHuW2L It$(HHL It$ "AńH3L0u'L1LHnVfDL1LHnfDUHAWIAVAUATISHTt^IwHHv,HHt HHHv1Lnt(L"1t LHLiAńuE1HD[A\A]A^A_]DAGtL17PHL4AGtLH fHI9tH3LufDHu HJff.UHAVAUATISH{uE1[DA\A]A^]LH%tAD$D҃ t" tL^1HHltDL1t LrHH7AńvAD$mLPHL41AD$t LHI9=IIM9(I4$H~ufDIt$H҃ t u1H4lAD$DHvf.UHAVAUATISHZzuE1[DA\A]A^]LHՃtAD$Dt$It$H҃ t tHv1HktL1t L-HHAńtAD$tLPHL41AD$t LHI9PIfDIM98I4$H}u fDUHAVAUATISHZyuE1[DA\A]A^]LHՂtAD$Dt$It$H҃ t tHv1HjtL1t L-HHAńtAD$tLPHL41AD$t LHI9PIfDIM98I4$H|u fDUHAVAUATISHH&HHtHHtH0HPL+tgHt2HCxujf)EHuHUHL[A\A]A^]%fDHL]tHs@LAńu6fDE1HD[A\A]A^]DHo)Mf.CtHPHL41Ct HxHI9tH HI9tH3LD{u{f.UHAVAUATISHHuE1HD[A\A]A^]LHtID$xf)EШt Ho)MHuHUH$tI$Ht!tHtH0HPHxIt$@HAń`AD$WLnPHL41AD$t LRHI9'IIM9I4$Hzuff.UHAWIAVAUATISHF`tHLH0HP t(Lo1t LHLAńuE1HD[A\A]A^A_]f.AGtL1PHL4AGtLfHHI9tH3LH fHI9tH3L qukfUHAWAVAUIATSHHHF0HHH0HPtbAE$E1HUD9IE(JH Lx LdM9u:f.IM9t'I7H|uE1HD[A\A]A^A_]HEII9t)AE$DI}0蟢HH4RL1t L4HHAĄtLJIIH9uuf.IM9^IuHouFUHAWIAVAUATISHHF(H$HH0HPNuE1HD[A\A]A^A_]DIG(HHHHHHHH8WHt1@tHp0LtL1t LHLAńdAG\L1PHL4AGt LHI9u,HI9H3LXnuI(迠HQfUHAWAVL}IAULMATIHVPSHLH8dH%(HE1gHSpH]LHgLLOLHDHEdH+%(uH8[A\A]A^A_]aHufHWUHHHHv9HHHt(zuHtxu ]1]Rff.HUHATISHHvHv HtHv[A\]DHCHHHwHs@u([LA\]6fD[L1A\]"fH H5 H= f.UHATSLeHLHHu.HtHpHH H[A\]LH¸HtHrHHH[A\]fUHAWAVAUATSHH@HHdH%(HE1HHH跜6HkH@HcH>@H|P4P5t"kSHTP4wHp HAHEdH+%(HĨD[A\A]A^A_] Hx3A{HVx2tH xBH5H=MDHLx1=HBHH0HP}A=DKHHx0+HA D軓Hx/t;Hx.Hp1HWAf IIH=@&9'{IIHx%HHhAĄTA}%I} HJt11HHHH)A}%hIu HH@AːHH@*+K@ۏHHsx(LeLLHqAfD;IIH @&'I|$ H Jt)1HHHH)AT$&@It$ HHHAیIIHx"u/Hx mHJt)1HHHH)A|$"tBf+HH A請H@ HH`APۏH8IH*x,Hp HAĄAE<,EuEHME1H0DIM9AEH8Jt<,AEI9s KHHAoL0)MID@HuH0HEVpufE1p蛎HH @* +pHA1f蛍H x)=@7 Hp0D苋IIH x$u3Hx ]H Jt)1HHHH)A|$$^fDӊIIHS x#u3Hx H3 Jt)1HHHH)A|$#3&fD;H x-xH IrBH5H=f;IIH xu3Hx mH Jt)1HHHH)A|$NfD胅IIHJ xu]HBH H0HPHA}u2I} H Jt!1HHHH)A}"<@|IIH @ f |HE x 3IIH| xm Hp @f< HRAHt5H AĄA}, AEAf< I}(IH K 71HHHH)A} Iu(HHVAfDxIIHH xu3Hx uH Jt) 1HHHH)A|$fDwHEHUH' @twdH gBH5H=AwHpHxH @   kvH`HhH PЃ<v QH /fBH5;H=duHPHXH) @<`<iH neBH5H= FfDtIIHN @;H dBH5H=+IIH x HxHJt)1HHHH)A|$ It$HHA[HfxH iBH5H=YfkwIIH x u3Hx H Jt)1HHHH)A|$  fDvHx PH eBH5]H=vIIHxHx IHwI 41HHH)A}Iu HHADSuIIHxu3Hx HJt)1HHHH)A|$fDvHx H dBH5eH=ɽf;vHHWx HHM^ADqHEHUHxH}HHA|@kqH}HEHUZHHAOxHDx5HRHp HHAKxHHx|1HHKAS~IIH@ifxIIHxHRHt$Iw HtHAAOMw0E1H0HHMH8u!|@H0III9`AKD hAwI9AoH)EIvHEHuH8fuVfD{xIHxHp(Ht1HrJA|$bIt$ H1Aqf;yHHyAPxHEHUH@ms{HH{AuIHxHp 1HIOA|$It$(HfAfDstHHtA{vIHHxu#Hp Ht1H6IA|$tQIuHAĄ1AEI}(IvHkAHrH1HvIu1HH`AD$ 5H}藋HHAH}+HHAĄ}HEHp1HCHAcHpHHAĄAHxHPċHHYAĄHX딃u4I|$ HJt)1HHHH)A|$׷HpHtcHR!Iu(@4HZ(hH`HHAĄjHhE1I} AI<2H `H5H=H fBH5fH=ʷuH gBH5BH=k覷H gmH5#H=臷H dBH5H=#^H odBH5H=?*H cBH5H=ܵH dBH5H=^)H 2bBH5VH=躶H bBH57H=`蛶H aBH5H=A|H `mH5H=]訳sH H5H=/%苴H [BH5H=肵MxC^H 7PmH5[H=迵jU軳H TbBH5(H=Q茵w"-H ]BH5H=YH *]BH5H=:H c^BH5H=H \BH5H=H ^BH5tH=ش$ff.UHSHHuHUHt4HFHHHHHvHtH}jvH]H}GHHH]fDUHSHHHUdH%(HE1Ѓu+HHt^HUdH+%(ukH]@PwHU HtH2HBHUdH+%(u5HH]H@Ht HpH}HuHi蒴ff.UHAWAVAUATSHdH%(HE1>IH'IHHcH>HEdH+%( ?HvHeL[A\A]A^A_]AHEdH+%(?HeL[A\A]A^A_]遝HEdH+%(<HeL[A\A]A^A_]ؖHEdH+%(>HeL[A\A]A^A_]/HEdH+%(i>HeL[A\A]A^A_]醖HvH><{3趚Hv LA 01HEdH+%(>HeL[A\A]A^A_]HEdH+%(>HeL[A\A]A^A_]HEdH+%(P<HeL[A\A]A^A_]͕HEdH+%(;HeL[A\A]A^A_]餕HF0Q3H@3HEdH+%(;HeL[A\A]A^A_]鵦HEdH+%(B=HeL[A\A]A^A_]<HEdH+%(=HeL[A\A]A^A_]HEdH+%(=HeL[A\A]A^A_]HEdH+%(:;HeL[A\A]A^A_]HEdH+%(:HeL[A\A]A^A_]阔HEdH+%(%<HeL[A\A]A^A_]oHEdH+%(<=HeL[A\A]A^A_]FHEdH+%(:HeL[A\A]A^A_]HEdH+%(:HeL[A\A]A^A_]HEdH+%(?:HeL[A\A]A^A_]HFHtH0HP\HH}Lp蛷HUfomHEH]HUL})pHxH91tLH0LL>Hx-HpHHpH9uI9uWHEdH+%(:HeL[A\A]A^A_]HEdH+%( 9HeL[A\A]A^A_]ŒHEdH+%(8HeL[A\A]A^A_]霒HEdH+%(;HeL[A\A]A^A_]sHF(L}HƒHI4HLLpIHUfo]HEH]HUL})pHxH9\/tL輱H0LL<Hx6,HpHHpH9uI9uf.HUdH+%(9He[A\A]A^A_]HEdH+%(7HeL[A\A]A^A_]pHEdH+%(k7HeL[A\A]A^A_]GHEdH+%(8HeL[A\A]A^A_]~uHF(HtH0HP#HH}LpHUfoeHEH]HUL})pHxH92.tL[H0LL];CHx*HpHHpH9uI9uHEdH+%(6HeL[A\A]A^A_]ˤHEdH+%(J6HeL[A\A]A^A_]HvH-3@#3H3HEdH+%(y7He[A\A]A^A_]HEdH+%(8HeL[A\A]A^A_]颏HEdH+%( 6HeL[A\A]A^A_]yHEdH+%(~5HeL[A\A]A^A_]PHv(HS0SHH}Lp(HUfoeHEH]HUL})pHxH9}.tL蛮H0LL9Hx*HpHHpH9uI9uHEdH+%(4HeL[A\A]A^A_]{f) Ft oV0) H H(LXHCS(H LHH(HC 8H0fo0H@HD$$H C2H҃HD082@ Ll@2AIM I M92LL[Tu1HEdH+%(4HeL[A\A]A^A_]gHv螁HH}LpCHUfomHEH]HUL})pHxH9,tL趬H0LL7Hx9)HpHHpH9uI9uHEdH+%(4HeL[A\A]A^A_]閌HEdH+%(4HvHe1[A\A]A^A_]*7HEdH+%(y3HeL[A\A]A^A_]AHF-H3LlHXI9uT@HI9CH3L8u12F tHFH0HP}HH}Lp輯HUfoUHEH]HUL})pHxH9)tL/H0LL16Hx%HpHHpH9uI9uxHEdH+%(2HeL[A\A]A^A_]HEdH+%(2HeL[A\A]A^A_]閘HEdH+%(h1HeL[A\A]A^A_]齊HEdH+%(0HeL[A\A]A^A_]锊HEdH+%(1HeL[A\A]A^A_]kHEdH+%(2HeL[A\A]A^A_]HEdH+%(1HeL[A\A]A^A_]HEdH+%(A0HeL[A\A]A^A_]HEdH+%(_1HeL[A\A]A^A_]ljHEdH+%(1HeL[A\A]A^A_]NHEdH+%(1HeL[A\A]A^A_]uHEdH+%( 1HeL[A\A]A^A_]LHEdH+%(0HeL[A\A]A^A_]#HEdH+%((1HeL[A\A]A^A_]骖HEdH+%(0HeL[A\A]A^A_]шHEdH+%(.HeL[A\A]A^A_]騈HEdH+%( 0HeL[A\A]A^A_]鿉HEdH+%(p0HeL[A\A]A^A_]HEdH+%(.HeL[A\A]A^A_]HEdH+%(.HvHeL[A\A]A^A_]2F'AE1DIM9'CA9/JDLH0HPu1HEdH+%(Q/HeL[A\A]A^A_]7HEdH+%(/HeL[A\A]A^A_]HEdH+%(?.HeL[A\A]A^A_]HvHS8oC HC0H LHE)pHD$$H HH}LPتHUfoUHEH]H`L})PHXH9*tLHH0LLJ10HX%HPHHPH9uI9uHEdH+%(-HeL[A\A]A^A_]'HEdH+%(,HeL[A\A]A^A_]鮓HEdH+%({,HeL[A\A]A^A_]ՅHvHtL0jHs@H.>.LL[0AH LLH=0#HEdH+%(,HsHHeLL[A\A]A^A_]0HEdH+%(,HeL[A\A]A^A_]HEdH+%(h,HeL[A\A]A^A_]HEdH+%(,HeL[A\A]A^A_]zHEdH+%(+HeL[A\A]A^A_]顄HEdH+%(t*HeL[A\A]A^A_]xHEdH+%(+HeL[A\A]A^A_]OHEdH+%(;,HeL[A\A]A^A_]֑HEdH+%(*HeL[A\A]A^A_]]HEdH+%()HeL[A\A]A^A_]ԃHEdH+%(+HeL[A\A]A^A_]髃oF HF0H H`)PHD$$H $HCHO$LhM|M9u:$@IM9)$IuL/u1q@Hv_wCLk0M|M9u4%IM9#%IuL'wu1!@HEdH+%()HeL[A\A]A^A_]鯂HEdH+%(#*HeL[A\A]A^A_]鶑HEdH+%(J*HeL[A\A]A^A_] HFH0HPmHH}Lp2HUfo}HEH]HUL})pHxH9k!tL襡H0LL,HxHpHHpH9uI9uH&LHuAHH}Lp耥HUfoeHEH]HUL})pHxH9 !tLH0LL+HxNHpHHpH9uI9uuHvLL +u1HEdH+%('HeL[A\A]A^A_]HEdH+%(2&HeL[A\A]A^A_]HEdH+%(P'HeL[A\A]A^A_]HEdH+%('HeL[A\A]A^A_]DHEdH+%(%&HeL[A\A]A^A_]kHvH'>'HEdH+%(i'HeL[A\A]A^A_])HEdH+%(&HeL[A\A]A^A_]HEdH+%(D%HeL[A\A]A^A_]銌HEdH+%(=(HeL[A\A]A^A_]aHEdH+%('HeL[A\A]A^A_]~HEdH+%((HeL[A\A]A^A_]HEdH+%(&HeL[A\A]A^A_]6~HEdH+%('HeL[A\A]A^A_]齋HEdH+%(4'HeL[A\A]A^A_]}HEdH+%(7(HeL[A\A]A^A_]kHEdH+%(V&HeL[A\A]A^A_]}HEdH+%('HeL[A\A]A^A_]HEdH+%(@&HeL[A\A]A^A_]@}HEdH+%(k'HeL[A\A]A^A_]NJHEdH+%(I#HeL[A\A]A^A_]|HEdH+%(&HeL[A\A]A^A_]uHEdH+%(&HeL[A\A]A^A_]|HEdH+%('HeL[A\A]A^A_]#HEdH+%($HeL[A\A]A^A_]*HEdH+%(%HeL[A\A]A^A_]щHEdH+%( %HeL[A\A]A^A_]{HEdH+%(&HeL[A\A]A^A_]H}fHu1Lx&^Hu1Lb&1HEdH+%(W%HeL[A\A]A^A_]HEdH+%($HvHe[A\A]A^A_]}oHEdH+%(%HeL[A\A]A^A_]ĈHEdH+%(#HeL[A\A]A^A_]˃HEdH+%($HeL[A\A]A^A_]rHEdH+%( HeL[A\A]A^A_]zHEdH+%($HeL[A\A]A^A_] HEdH+%("HeL[A\A]A^A_]GzHEdH+%(6$HeL[A\A]A^A_]·HEdH+%(m#HeL[A\A]A^A_]饅HEdH+%($HeL[A\A]A^A_]yHEdH+%("HeL[A\A]A^A_]yHEdH+%(#HeL[A\A]A^A_]*HEdH+%(o"HeL[A\A]A^A_]QyHEdH+%(^#HeL[A\A]A^A_]؆HEdH+%( HeL[A\A]A^A_]xHEdH+%("HeL[A\A]A^A_]醆HEdH+%("HeL[A\A]A^A_]xHEdH+%( #HeL[A\A]A^A_]4HEdH+%()!HeL[A\A]A^A_];HEdH+%(!HeL[A\A]A^A_]HEdH+%(!HeL[A\A]A^A_] xHEdH+%(>"HeL[A\A]A^A_]鐅HFHH0HPrHH}Lp豛HUfoMHEH]HUL})pHxH90tL$H0LL&" HxHpHHpH9uI9umHEdH+%(!HeL[A\A]A^A_]鴄HEdH+%(I HeL[A\A]A^A_]vHEdH+%(`!HeL[A\A]A^A_]vHEdH+%(HeL[A\A]A^A_]vHEdH+%( HeL[A\A]A^A_]HEdH+%(iHeL[A\A]A^A_]7vHEdH+%(X HeL[A\A]A^A_]龃HEdH+%(OHeL[A\A]A^A_]uHEdH+%(HeL[A\A]A^A_]lHEdH+%(HeL[A\A]A^A_]uHEdH+%( HeL[A\A]A^A_]HEdH+%(#HeL[A\A]A^A_]!~HEdH+%(HeL[A\A]A^A_]ȂHEdH+%(THeL[A\A]A^A_]tHEdH+%(8HeL[A\A]A^A_]vHEdH+%(/HeL[A\A]A^A_]tHEdH+%(HeL[A\A]A^A_]$HEdH+%(HeL[A\A]A^A_]KtHEdH+%(HeL[A\A]A^A_]"tHvAHH}LpHUfouHEH]HUL})pHxH9otLqH0LLsYHxHpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]HEdH+%(AHeL[A\A]A^A_](sHEdH+%(0HeL[A\A]A^A_]鯀HEdH+%(1HeL[A\A]A^A_]rHEdH+%(HeL[A\A]A^A_]]HEdH+%(HeL[A\A]A^A_]rHEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]{HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]qHEdH+%(HeL[A\A]A^A_]gHEdH+%(HeL[A\A]A^A_]{HEdH+%(nHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HH}Hp~HUfoMHEL}HULm)pHxI9tH^zH0LL`FHxu!HpHHpI9uI9uHvH譑HpHx뉾HxHpHxiL9i_vvvvvvvvvvvvvvvvvvvvvvvvv}vxvsvnvivdv_vzvUvPvKvFvAvr9r4r/r*rf.UHAVAUATSHpdH%(HE1HtYHIIԃHtpHBAL$ HPH9PI$L,AT$AL$ HHH9JAD$HUdH+%(/Hp[A\A]A^]HIHLmLmHUHHHuLELe@~HHHHTLHDu葼H}toEJHHH9t0HH9s'DH H0HHHrHHH9rMH}t#Ht@tUHH9rKMuݸL9VIt$LoAD$)fTpH U!H5H=±oHOUHAWAVAUATSH(dH%(HE1HtWFHbwIHnTIHcH>FHPLtPI9t$@H31LAĄtHI9uAHEdH+%(HeD[A\A]A^A_]DHv1EtqH{(qHHEdH+%(HeL1[A\A]A^A_] FLfLtM9u+ @IM9 I4$1LuE1NHv1tH{ hpHHEdH+%(pnDHv1}tH{(`pHHEdH+%(8FLf@Lt@M9uX f.IM9A I4$1LuHI9u*CHHELeHDHEH1H9tL^gH01LaHUu HEHHEH9uHuDHvL~HEHULeHEHUrfDHlbHs1LHs(1LCL4Nd3@MM9ufIM9I4$1LuuHs1L^AĄCL<Nt;(MM9u}fDIM9gI61Lu=CL4Nd3MM9uIM9I4$1LuCL4Nd3MM9u %fIM9tI4$1LuCHHLdM4M9uAIM9.I4$1LUu|CHHLdM4M9uIM9I4$1L u4CHHLd@M4M9uIM9I4$1LuCHHH\(L4L9u%HI9H31L~uCHT@HL$L9uHI9H31L>ueCHT@HL$L9uHI9H31Lu%CH@Ld@M4M9uIM9I4$1LuHs1LHs(1LCL4Nd3@MM9uJIM97I4$1LMutHs1L6^Hs(1L HCL4Nd3`MM9uIM9I4$1LuHs1LHs(1LCL4Nd3hMM9uIM9I4$1LmuHs1LV~Hs(1L@hCL4Nd3`MM9ulfDIM9tZI4$1Lu(CHHH\@L$L9u[HI9KH31LuCHHLd`M4M9u?IM9'I4$1LuuCHHLd`M4M9u6IM9I4$1L-uTCHHLd@M4M9u.IM9I4$1Lu CHHLdhM4M9u %fIM9tI4$1LuCHkLdhM4M9ufDIM9I4$1LeuCHkLd`M4M9ufIM9I4$1L%uLCHkLd`M4M9ufIM9I4$1Lu CHkLd@M4M9uhDIM9tWI4$1LuCHHLdhM4M9uifDIM9tZI4$1LiuCHHH\@L$L9uHI9H31L&uM{0HaIII4$1LIM9uHaIII4$1LIM9uHaIHH31LHL9uCHHLd`M4M9unIM9tZI4$1LIupCHHH\`L$L9uHI9H31Lu-CHk(H\`L$H31LHL9uHHUHAVIAUATISF H^LlI9u0HI9tH3L1u[A\A]A^]AF@t)AF %ItHt[L1A\A]A^],@[A\A]A^]f.f.UHAUIATSHHHF8uQf)EHuHULteHC8HHtvHH@ HtyH0HLHP[A\A]]E1HD;`s3H@DLAH4HC8tfH1[A\A]]o)Mju!HDHs0HL[A\A]]eH + H5~H= Wf.UHATISHtHt:S(t Cat [A\]@H8h[L1A\H]nfHFxu fDUHAUE1ATISHHHD;hsH@DLAH4HCxuH[A\A]]ÐUHAVAUATISHHrHCxf)EШt Ho)MHuHULAńtOCJuHD[A\A]A^]ÐHhZIHH9uHI9tHCLH0HP܋uHE1[DA\A]A^]Ð@UHAUATISHdH%(HE؋%wU%w}HvH}lHuHEdH+%(HL[A\A]]ϊ u;FH^H@L,I9L9tfDHLEtHI9uHUdH+%(u^H[A\A]]fHEdH+%(u;HvH1[A\A]]L@HvHEdH+%(uH[A\A]]cAVH SH5H=UfUHAUIATISH(dH%(HE؋%\ %HFHofH~)EHt)HUH̟AE%SIuH}"kHuHEdH+%(%H(L[A\A]]f uCFH^H@L,I9L9u$@HI9tHLu1 @HUdH+%(H([A\A]]DHFHƒHHt^H0HPHEdH+%(ujH([A\A]]шHvHHuOHEdH+%(u;H(H1[A\A]]<@HvHEdH+%(uH([A\A]]`1T\SKH SH5~H=RSH H5`yH=R@UHAWAVAUATISHH8HF8u5f)EHuHUL՝uQE1HeD[A\A]A^A_]@E1HD;hH@DLAH4HC8tfDSHK(H LHHMUfoUHEHD$$͝H AƄmHaH5@tWLh MtNAEtFAIIMfDI M9t'LLuo)MHC8HH-HHP Ht&H2HBLH讆HC8tHHp(Ht1L'C<#H(eHH‹CT %L@UHHt!H OH5H= BfHHuHvHHHzuHW]>@UHHt!H OH5nH=2BfHHuHvHHHzuHW]$>@UHHt!H OH5H=KAfHHuHvHHHzuHW]=@UHAWAVAUATSHHuHUH4F,uXIH}lLHvADŽuE1HD[A\A]A^A_]DLuMAFtTEnAAtW1LhtHA9t;HEHtHuAF9sIt0LN`HA9uƐLAL,HI9t @H3L]N+HI9uL@H1HLNA!SAff.UHHt!H bOH5>H={@fHHuHvHHHzuHW];@UHHt!H ROH5H=?fHHuHvHHHzuHW];@UHHt!H BOH5~H=B?fHHuHvHHHzuHW]4;@UHAUATSHHFHt t^eHrI1IuH1[A\A]]fDIu1LtCuHs HL[A\A]]gLH BH5QH=-Qh>cSfUHHt!H OH5nH=2>fHHuHvHHHzuHW]$:@UHHt!H OH5H=K=fHHuHvHHHzuHW]9@UHHt!H OH5H=r=fHHuHvHHHzuHW]d9@UHHt!H OH5NH==fHHuHvHHHRwHW]8ff.UHAWAVAUATSHHFIIPIH~HHHHHHH9PAWAGfHPHYHjIL1HHHAGH)уw&IwHLfqAWЃvNf.H9oA_fE1>AGfA9KDLH0HPpt;IAGD9tEvH >BH5MH=NV;fDH1[A\A]A^A_]=H[A\A]A^A_]ø HEH]Mt$HI\$HID$tfHH H|H| IN8HH)H)1L8L99rIMH It Ht INLHH)H)փ1҉׃L>L99rnH}oH#DH}Hu1AIG HHEIG0HLL4EHEIO Hu1LAIHHEIGHUHLDHEIIfHHU D0D2IMAM ALLHqqH9HFHEHK(LC0LSHsHSC H8I$H81[A\A]A^A_]M$HHm۶m۶mL)HHHHI$I$IH9L9HH9HEHN(LF0LVL~LvF E1E11Lf.oHH0H8H8oHoPBJRHJH9uHm۶m۶ HCL)HHHH!HH)I\pMtL)L]HL:L]M$I$M$HHI$I$IH9HGLI)ILLEHMLUHuLML]fBL]HuHMLEHLULMHIEI$IHN(LF0LVL~LvF L9HX8f.IkHI$I$IH9HFLk8QH=y+-f.HGH9GtÐkf.UHAVAAUIHATISHHH@H9HGHH9H988H)HHHHHH)HqHHH~HHH H H;Y@sHHH9tDHFIEEtIEHFH+^I]IE[A\A]A^]ID$I|$H9^f1AEAE[A\A]A^]fLXfDUHAWAVAUATSHHHUHHpdH%(HEHH@H9HGHWH9H)H988HHH;C8LeH}LmLe(H}F:HEIHHHMULHEH{8H[0LuHLm@HHL;kuHsMtLL*.uM9tHELHpq7HC(HpHHUdH+%(_HĈ[A\A]A^A_]fLHu1;HEHHEHEHuLg>HEHUHEH{8!HuH}i:91H{ HHs(HLRHH}HL9t HEHp6H&12Lk0HC HxMt:@MMmI|$ID$H9tID$HpT68LG6MuHC(H{ 1H{'HCLkHC8HC0HhL9u,fL Mt]HEI(IHI$L9hIE@IuiI}HE!81HxIHs(LILL0Hu8=IUHIHxH@ID$IuHXH$HCHHS8H{@ID$(Hs(HP92H`LC K Mt$0HHHI$HL HC8f.M9PHELHp41rHLHCHSdfH}L9HEHp41!H`<H`HfDHtH2HBLH;tLHULLt9HII9uH[A\A]A^A_]f1ٔ H1[A\A]A^A_]H ImH5=H=!ff.UH 4 H5H=HiUH @H5hH=H9UH SH50H=ĩH UH H50H=YHUH |OH5DH=HUH )H5H=HyUH H5PH=yHIUH =H5 H=HUH BH52H=HUH dCH5CH=CHUHHt!H jOH5H=fHHuHvHHHR4wHW]nff.UHHt!H BOH5NH=fHHuHvHHHz5uHW]@UH 4mH5XH=HfUH |BH5(H=QHfUH H5H=8HYfUH mH5H=aH)fUH ,BH5H=HfUH \mH5hH=HfUH BH58H=aHfUH mH5H=HifUH ,BH5H=H9fUH \mH5H=AH fUH BH5xH=HfUH BH5HH=qHfUH mH5H=HyfUH LBH5H=HIfUH mH5H=QHfUH BH5H=HUH H5X&H=@HUH |H5(&H=@HUH IH5H=1HYfUH LmH5H=aH)fUH BH5H=HfUH mH5hH=HUH 4H58%H=?HUH  H5H=HiUH \H5H=H9UH H5$H=1?H fUH LH5xH=3HfUH mH5HH=HfUH H5H=!3HyfUH mH5H=HIfUH \H5H=2HfUH H5H=2HfUH H5XH=a2HfUH H5(H=12HfUH DH5H=2HYfUH |mH5H=aH)fUH H5H=1HfUH H5hH=q1HfUH ,H58H=A1HfUH dH5H=1HifUH H5 H=0H9fUH mH5 H=AH fUH $H5x H=0HfUH \H5H H=Q0HfUH mH5 H=HyfUH H5 H=/HIfUH $mH5 H=QHfUH H5 H=/HfUH H5X H=a/HfUH mH5( H=HfUH LH5 H=/HYfUH |H5 H=.H)fUH mH5 H=1HfUH H5h H=q.HfUH LH58 H=A.HfUH H5 H=.HifUH H5 H=-H9fUH H5 H=-H fUH ,H5x H=-HfUH dmH5H H=HfUH H5 H=!-HyfUH H5 H=,HIfUH $mH5 H=QHfUH tH5 H=,HfUH mH5X H=HfUH H5( H=1,HfUH LH5H=,HYfUH H5H=+H)fUH H5H=+HfUH H5hH=q+HfUH ,H58H=A+HfUH dH5H=+HifUH H5H=*H9fUH H5H=*H fUH H5xH=*HfUH LH5HH=Q*HfUH H5H=!*HyfUH H5H=)HIfUH H5H=)HfUH ,H5H=)HfUH \H5XH=a)HfUH mH5(H=HfUH H5H=)HYfUH <H5H=(H)fUH tH5H=(HfUH H5hH=q(HfUH H58H=A(HfUH <H5H=(HifUH |mH5H=qH9fUH H5H='H fUH H5xH='HfUH DmH5HH= HfUH H5H=!'HyfUH H5H=&HIfUH mH5H=Q HfUH LH5H=&HfUH |mH5XH= HfUH H5(H=1&HfUH mH5H= HYfUH tH5H=%H)fUH H5H=%HfUH H5hH=q%HfUH H58H=A%HfUH LH5H=%HifUH H5H=$H9fUH H5H=$H fUH H5xH=$HfUH $H5HH=Q$HfUH dH5H=!$HyfUH H5H=#HIfUH H5H=#HfUH mH5H=! HfUH \BH5XH=HfUH mH5(H= HfUH LBH5 H=!HYfUH BH5 H= H)fUH mH5 H=1 HfUH BH5h H= HfUH mH58 H=HfUH DBH5 H=1 HifUH tmH5 H=qH9fUH BH5 H= H fUH mH5x H=HfUH DBH5H H=q HfUH tBH5 H=A HyUHHHt9P4t5t D]H 'BH5 H= 'H mH5 H==UH 4mH5x H=HfUH |mH5H H=HfUH BH5 H=A HyfUH mH5 H=HIfUH \BH5 H= HfUH mH5 H=!HfUH BH5X H= HfUH mH5( H=HfUH TBH5 H=! HYfUH mH5 H=aH)fUH BH5 H= HfUH mH5h H=HfUH <mH58 H=HfUH mH5 H=HifUH BH5 H= H9fUH mH5 H=AH fUH <BH5x H= HfUH dH5H H=HfUH |mH5 H=HyfUH BH5 H= HIfUH mH5 H=QHfUH LmH5 H=!HfUH BH5X H= HUH H5( H='HfUH dmH5 H=HYfUH BH5 H= H)UH iH5H=IHUHAWE1AVAUIATSHH8HUDfdH%(HE1EuIE9H+LHL4AuJD LHHEtZI6H?HF(Lƽu1HUdH+%( H8[A\A]A^A_]fDHu1L ttIE9VfHH@8HHHH@ H8Hp衳 HHEHULH\LuCu$MtAFatnMPAFƒw3AF%t7DpAIIM9HELJ4 蓼uLL$IL9u<@IM9t/I7LuHfDL0HtHUHLrRC tH}蕵LH0HHULH[rHHULHƃ E1I]1Ɂ`PwH5HcH>fPE1 wFI$Hr1L0I؍HPx@ vHcAHVA@<*'1<.u @HB<.wIrxw/H5THcH>I$HPLB%BDDž(H9$ Hc(HH@L4EMHLLAV($(9IHAEt-<%uLLH)A}%u"ILAEIuLLH)A} I$HHPILHHPILL`A$AD$c #A$HEdH+%( H8[A\A]A^A_]DI$LpMAF 9fHI$LpMAL4AƆ B$O BI$HxLO@I$E1HHLI@I$H@ADDDdI$LBMA@ൃA@@EHBLHHHHLrMAF$OAAFAƆ0I$LBMA@ൃA@I$HPLB% B`I$HPLB%BBI$LBMA@@A@I$HPLB@BI$HPLB@BI$HPLB@BpDžI$HHLH@t IHI$LBMA@ൃ@A@DC<*PH{ 1f0HPp@ vHcHI$H@ITHc(HDDpH@HH8PHcDI$HxLHHcD(HAHPe@LMLA~8u$LI LP0I$HHLHƃ{AL$OAƆ0Bf.IH8uEDHH HP0I$DHcHPLAƆdHPHHH_H5fHEHFEH1fEHHEHpH@HNHPHHH1HHfof)`H@)PHHHH)p)H0HDžHDžHƅHXHHHHXHH'I$HHpL0MHLHAVLL@HDž8L0L0ƅ@MoHpLHxLL9LCHLD11I)H8H01Ht%fH:+u  H0HH9uH8HLH0L9tH@Hp6HfoHH@)PHHH9tHHpHHHHXHHHHPH@HPH]HHEEDHc(H9$QHHH@(HH8PHcDHcI<-H10fDIH 8uHDH9H HP0I$DHcHPLBAƆL@MALAƀ p@O pIHm8t!AƆHLDHH HP0AƆDIH8ubDLH(H( HP0I$LDHHLHHcAƀCHSHӃ0< wCH0< v1lMMNA~8t2AFY#AI$H){8tEAƄ$xLYI LP0##AƅAH"H HP0AƄ$H OH5H=lH 0H5H=H H5H=viH LH5fH=JH 1H5GH=H+H H5(H= HEdH+%(uxH yH5H=HD H@ H HK H @UHAWAVAUIATLgSHHxx|dH%(HE1HG(LgHhHG8HGGH`HG(HG0G8EHELwLH|HHp{ H{HUHEI9Le}L9fHnHKHCECHlH}HMHEH}L9t HEHp}IML}IUEL}HEH1 @HH9t<2/tH9HHHpLer HEH}HUL9fHnEL9HUHEEH~H}HUHEH}L9t HEHpHux11*HpHH5^zZUH{(HE~EH9`L9EHS8HC(C0HoH}HUHEH}L9t HEHp%H}L9t HEHpHEdH+%(Hx[A\A]A^A_]DLwHhhLL]HhLIHpI9WHtH-LHUH{HSH}HEELeLeLzL9tfHnHCECLeLeLf.HtHLiHUH}HUH}L9t#HC(EC0LeLeLHhH9pfH~HtHtcfH~L~EH{(fH~fC0H}1EHUH}cEHUH{HHE~EH{(HSHEdH+%(uHH= 1H5 eH H @UHSHHPHH?dH%(HE11uHXHHUdH+%(uH]ff.UHAWAVAUATSHH $HH $H(dH%(HE1HLH LHLH{@LxHLL{p#{`ItI9tuLML1H{h1LHH1ILH{ 1Dc`zC`E~DD9c`bH{hMtLLoHLHnHH9IHHfD1HUdH+%(H( [A\A]A^A_]ÐL-aH5uLUHS(Hs LE H5uHI.i8IHHLLHIEH@MMA~8t8AvCLCH fDLFL`I LP0DIEHxLw bmHEdH+%(uT@UHSHHuHdH%(HE1tHM1H9uHUdH+%(uH]HUHAVAUATLeSHLLk H uH5(tdH%(HE1NLH5tLNLs@LH5tLNHCxC`HHHChHHCpCxHHǃƃH7HEdH+%(u H [A\A]A^]趿IIIfHH5byf.@tUH8HH5*HAVAUATISLHHHH?M$M$M9HLL)HHHHHt HHHLLe& HILH" HI9tSfDoGLHfH~H;ws'HGfDoHPHHH0HP@H;prHLAI9uAD$@[A\A]A^]LLe" ؐfUHAVIAUIATISIIH9HH)HHHH~}HH)HrHH~"HHHHHHL;bsHHH9t9HFHItIFIEL+fMfIF[A\A]A^]ff1AAF[A\A]A^]UHAWIAVIAUEATSHHH HUwdH_HLf HHt~L;cuHsI>Mt L>uH{(HuHA[LA\A]A^A_]HvI>i1H{HHsHLOHtHHuH1[A\A]A^A_]ÐHUHAVAUATSHHGXGHPSLLM9tqHm۶m۶mLL)HHHHHt HHHLL4& H~CILHC I9t@HH8DC I9uH[A\A]A^]fHLL[A\A]A^]C LkPLc AMIT$0ID$Mt$tAH9(1LI|$H5zHLOCXH91LI|$H5iHL辅CXfDH=IHv@Lg IT$0Ml$I;T$1Lux0I|$H5H[CX=I|$({I|$(0I|$(f.I|$(HRLH}膿H}؅:DI|$(HLH}VH}؅DI|$(HVLH}&H}؅>&@UHAWAVAUATSHH8dH%(HE1GXHuHUEPvIEt{Xt"HUdH+%(H8[A\A]A^A_]HK0HUH H Lc LkPIT$0Mt$I;T$1LyI|$L}L5LLLÃLc IT$0I;T$Ml$1LHC IL$LhL9tHSPLLLtCXHuH=-XtLg IT$0Ml$I;T$tc1L1I|$HUH5DYCX@I|$(HLH}^H}DI|$(HtLH}2H}tzDIL$(HHLHMHMfHC IL$(LhfDI|$(fDI|$(*IUHAWIH(AVIAUATISHHU%t ILPI_MoI9tYLIfDHI9t:L9{uH;MtLL3uHuHLH[A\A]A^A_]H1[A\A]A^A_]ÐUHSHHHW0HG8H9tL L9rH;rrHH9uH]1ÐGXtH3H]HBHO`IHhHHL5HА@UHAWAVIAUIATISHdH%(HE1IIHm۶m۶mIEMfH)IFHHHHHH)Hw8HH~#HHH<H)HIL$IT$HH9A}*AD$PAT$9HHH9HHpmI$IT$pHI$lHL LIHIHH|H|I|$HH)I)у<1ƒI H 9r!LHIL1HH;INH;H1IV@MfIM,H;LL{AL谮N HLI~8HH;HL-HL;HIHr@H?@8@mH|7f|0UfIIWpHUILI3IwI|3H|2IwHH)I)ӃM؃L1҉׃M 8L >9r1ID$I$LPI$LPhHHSpHUHwLI:H8ML:LL8H{HH)I)d1AO N9rHD3D2HCHH9HGL$RILHUUUUUUUH9HGLPKunF uhFArXA9rSVrKA9rFVAAr;E9r6HvfnfnIHfb1HfA0fEPIxfA@ @f.Ðff.XfXfUHSHH~H{8HCHH9t HCHHpʛH{HC(H9tHs(H]H髛H]fUHATISHBHHt.1H;G0u{(u8HG H9Cu HG(H9Ct$[A\]DH2H? t 1[A\]A~D$AD$C0UHATIHSH9Hħt1[A\]fLcDUH H5H=)HɊfUH |H5H=H虊fUHATM SzpHtYx5HcɺufHH9tA<uLH[A\]Mt+LcLH[HA\]顏[LA\]d@HHXs H[A\]gfDUHSH_HH;5tH>HDHH]f.UHAVIAUHuATISH`dH%(HE1蓝u1LmfHL蕢HHt]LH袑Ht݋UHuL讥HHtLޥuHEdH+%(u9H`H1[A\A]A^]EDHEdH+%(uH`1[A\A]A^]ff.fUHAWAVAUATSHHPH(H H8LHD3dH%(HE1HEHDž@HDH@HP腡H@HHH@肐HtŋEt uHEDeE1H`H34H@L+IHwIOH1HHIIH)H9rLXL`HH8D4HHXH ZYIM9HDL՜Ht`HXHP解IHt8tHRHhHHtdHH#A tyLpLL@HDž8L0L0ƅ@M'HpLHxLL9LCHLD11I)蹂Hc8Hc H0H 9HN҂H0L9tH@HpHfoHH@)PHHH9tHHpˆHHHHXHCHPLLPH?HH'HEdH+%(u,H[A\A]A^A_]fDHL~gyIHH"IHff.xLfDIPI0\}ff.UHSHHHPH8t6C PS tH]f.HHH]H@C ff.UHAUIATSHLgMt6LM$$H{HCH9t HCHp0HMuIEI}1I0H2xI}IuIEIEL9tHH[A\A]]鲆fH[A\A]]Ð@UHAWAVAUIATSHHHH~~IIH9tIHpHIIH9tIHp%I}hIExH9t IExHp I}HIEXH9t IEXHpI}(IE8H9t IE8HpׅMuI]I9IIf.AD$PAT$H;HCH9t HCHp聅HI9HHtHH)VH{pH{0Ht Hs@H)8Lc(MtID$IT$L9t`Hq8`dL6WI]HtOIu HHH)[A\A]A^A_]ʄf.ID$I$LPI$LPfDH[A\A]A^A_]ÐUHAWAVAUIATSHHHH~k|IIH9tIHp(IIH9tIHpI}hIExH9t IExHpI}HIEXH9t IEXHpуI}(IE8H9t IE8Hp跃MuI]I9IIf.AD$PAT$H;HCH9t HCHpaHI9HHtHH)6H{pH{0Ht Hs@H)Lc(MtID$IT$L9thHQ8`dLWI]HtIu HH)踂HL[A\A]A^A_]靂DID$I$LPI$LPfDUHAVIAUATSLoMDMMmI\$(HtdHHtHH)$H{HH{ HC0H9t HC0HpH;HCH9t HCHpHہI|$ID$H9tID$Hp辁8L豁MXIFI>1HrIFIF[A\A]A^]ÐUHSHHH8HH~HHGH{HsH9tH]H)fH]f.UHSHHHHE~HHGxH{HC8HsH9t H΀HH]@鼀ff.HtgUHHSHHHH@H9uPH}HHHGH{HC8HsH9t HVHH]@D@H]UHAWAVLPAULATSHLHHL=z~|H|dH%(HEH||L)HfHnIGfHnH{fofoflH)fHnfl)|H*~f1EHEH1fEH{HEL`I|$LPLLpL7H{fof)`H@)PHHHH)p)IGLLHXHXHDžLHDžƅHwHfoH0HHH Dž(H08*LHCHCHCMHpLHxHL9LCHLD11I)YwHzfoHH@)PHL9tHHp}HyHHHXzID$LPLLPH(|HHHEdH+%(u-HH[A\A]A^A_]@HHs;OnI9I%HIH]ff.@UHAUATISHHLoH~H1I9tH[A\A]]MtI<$LH'sH[A\A]]ÐfDUHAWAVAUATSHHL,MtlI]IIIIHK0*fH3HtXHN01IHIt$I9uBHI9uIPH;SuHtI8HsLErLEȅuHL[A\A]A^A_]ÐE1f.UHAWAVAUATSHHL,MtlI]IIIIHK0*fH3HtXHN01IHIt$I9uBHI9uIPH;SuHtI8HsLEqLEȅuHL[A\A]A^A_]ÐE1f.UHAWAVAUATSHHL,MtlI]IIIIHK(*fH3HtXHN(1IHIt$I9uBHI9uIPH;SuHtI8HsLE+qLEȅuHL[A\A]A^A_]ÐE1ff.UHHHAUATSH]HXH7dH %(HM1HOH]HH9fHuHpHuL@ H}HuHx0HLH(H@@HuI9LEL@0LEL@@LMHx @0L LELBH@(M9HJLHHHJHHLLHBHH LJ H9IHz0-L9LR(LX0LH LP(LJ0LH0H HJ LZ0HB(HJ@HH@HHMII95H9|oELBH BH(HELEHEHB HMIH9H9oMHz0HJ J(HHEH}HEHEH}HB@H9t HEHpxxH}H9t HEHpbxHEdH+%(HX[A\A]]@L9gHJ(LH HH(HJ0HH0Hz HH9o]HJ Z(HuHuHIf.H9GoUH RH]H]HLGIHA|E1At DE AAtFfG IA_B4C4 QMQIIAE1At EE$AAtG,fG,IABGG4f.LJMH9\Mt@IqEAAEtDRDPA,LRMLHBDH fHMIHt>Hȃ)tMA L LELLHJHEJDHMHHt?HȃgtMAULB H}HLHJ(HE3@Hz(Lj L` IM9pHtAH @tA9A:LP LZ(LLHx(9LHJ #fDEE1AEAN$N$E9rN$IfDE1AAN N D9rL3H\I MbMII I| I| LL)I)DكK1AO\O9r.fDHEMHIIIHLILLL)I)1ɉσM:M99reHEMQIIIHLILLL)I)D1AȃO O 9rfDLJMLHEO\N\ LYIL)E I)AAA1AʃO,O,D9rfA A Hz(HH @EAHMHB @JHLJEAHMHDLLMA LALL LEMALALLB H}DRDPGTFT LR=A9A:A| A| LP LZ(VA| fA| LP LZ(=LfALL LERLfALLB H}GTfFT LRcff.ff.UH5H~]fUHAVAUATSHHH?dH%(HE1u,HUdH+%(aHĐ[A\A]A^]fLkLcM)L nHHLLLHdLPDpLLA1pLwAŅx:Lbt[LHDbHt{D-H-y'~87lHhHH nH81a~8 lLHcIHmH81aq~8kH&HHmH81uaDhSaUH5?H,s1Htx‰]f.UHSHHuH]ÐH߾SpH]ɅUA@L@HAWAVAUATASH]HHhdH%(HE1nH52HfHHDžxILxLpHDžpXHpH5!H*rHt&H߾ | 1HItHpAH5HqHuSL LL|HuHpwL>aHEdH+%(u>HhD[A\A]A^A_]D H | 1HsAA_ff.UHAWAVAUATSHH $HXLx@dH%(HE1LAIIL@LImLLo1HtOƄf/uƅHMLPLLH1lXZHEdH+%(uHe؉[A\A]A^A_]^ff.fUHAWAVAUATSHhHuH5_0HUdH%(HE1XdHHHEHELuHELeHE@H}Hٺ LzH2H}Ly|IHtLmAU uHuUzU8"tU\HUHEHfDIUItDP uLL |H}IH PL9u HBIu,HxULM1zLMHU8"HxHEHHWHtDP u LMH}rvH}LMHtHMHELLDH}sH^1HUdH+%(uHh[A\A]A^A_]Ã\ff.f1?UH5THSHHs H57Hst|H5)HstdH5 HstLH5Hst4H5Hhst H5HPsH]fff.@UHAWAVAUATSHXHH=HH5k-dH%(HE1haH IE1HILLHquHHLHߺyHHJ0H9rHHBHBB<0wHHrLjLR҈HYHH8fHLAUMmDG tQLiH҈t@HIYHHH DIA}uMH4LDHHLHHDL([1HUdH+%(u|HX[A\A]A^A_]DL7[uALiMuf.AGIt<]ut A[E1L-LuYfDUHHAUATSHHH=%mLcLkM9tqH988LL)HHHHHt HHHLL H~;ILH) I9t@HHHd I9uH[A\A]]@HLL[A\A]] ff.UHAWAVAUATSHH $HH $HdH%(HE1AIviHHpH0HHH%H H)HH9tHH$H9uH)Hq/LI1qH8HEb~H= 11p(DžH[HHD(E1H1sIHmHld.so-1.I9LLRLLHމp( ^#H ML1L; HdHce}H0L%W}H@HM,"tW%=tK@IM9tOI<$HLmuAD$<uۉt~t uI|$dH8HEdH+%(H8He[A\A]A^A_]LL(gLLHPWL WHL=dH8@H0HHHXHHH%HH)H9tpHH$HLAx.7.06A@ IH@H4H~HHW0H9"LL`L H)Hu5HCHHHH%HH)H9t4HH$HLË([b{H%H)HtHLMc͹1L@L H(LvbLH5;&GZIH2HMHHLa 18bMHٺLK HH1bLLLLDH5 L1ZLLmH LmHtRMHHDA tDIFIDA uH5D L)eHt,LLeHYH(LeHAGLLLYTHUMxH<DLLH4^DHHyLED nyLLMHHLIA~EnI IE~HI`LID$`E|$ID$L9uLHLLLHl(CY?IRfiUHAWAVAUATSHH $HLAdH%(HE1LHcLHHIL1_LLmHt+H^L{0L#LL$cH)HL9uL1LHLS;_H5#L WIHHXƅH@HxH H`H8HhH0HPHHHpH(DHH81H5#L@(LL H0WLLjZYHt tQwLQ<HZL HEdH+%('HeL[A\A]A^A_]D L[iHtNMHHDB tfIFIDB uL1DLH ] LL5 L 1]LL2aHuMH5LaHt@-<DFHHuDLzf.LHcUPHv\L$DE1#OU11HAUATSHgQ1ljNIHII9;1E1AعL kIUIYHHL(DD`AELMHL9IDfDJ9rqHtl8PKudHHL I9uVfxpucfxu\f;p uVHE1AD@ AD9r(Eu#AMtK H؉sH[A\A]]HHxI9uDLLegH}d1HH[A\A]]D1TLL10gff.UHSHHwH?gHH]dUHSHHH?HtZCt?t*u{SfHCH]H{wDH{cDUHAWIAVAUATSH(Dw_ HuHUEEGH.A9EDErwM/Lto]DEȋu1H;PKuVDc1LA@E9r@u!9UHATSHH $HdH%(HE1HH`HH=LBLLHIHLDHHbPaP`P1`FH HLHUdH+%(uHe[A\]fD8@UHAWAVAUATSHH $HXfdH%(HE1IHHH=2HIHDž)AH8HL@LLLHHH5DžA1BHcHLLHL1S+E1LAFZYHLxsEu>HfoID$1A $HUdH+%(uWHe[A\A]A^A_]DHHH*tHLMtfHd6UHAVAHAUIATISH1u [1A\A]A^]fLH5tLDLH[A\A]A^]UfHAWAVAUATSHhHudH%(HE1HEHEHEHE)E)EHL}HIILMgA$L]uCHuLE1MLL諫LQHEdH+%(u|Hh[A\A]A^A_]ÐAT$HMLHLxLxuHuH}MLAL>H}Lxffu5BIH1HHtHtHSH5a@fBIHH1eDUfHAWAVL`AUILATSHHHdH%(HE1)`HDžpL`HXL Gxx1L=dHL LHHHuH;Ht؋UHXLOHHtLNOuHUHHIUHUH@LHRHHUdH+%(uHĘ[A\A]A^A_]\3ff.UHAWMAVAAUIATSHH0HHdH%(HE11AH8H5fHH0HDž(HHHHH LD ʉH 0H HHxyH toHHHxUHHMH(H IHEdH+%(u'HD[A\A]A^A_]f.A1UfHAWAVAUATSHHXHPdH%(HE1Hp)pHH@HE"HpHhH>LE1LeHhIIuiIL;hsULDHmFHtHEL!L9uHPHUHuH}HXЅyDžL DžLH@zHEdH+%(uLHĘ[A\A]A^A_]0ff.UfHATSLeLHpdH%(HE1HE)ExBH}Hu5:LHHt%EHUdH+%(uHp[A\]f/@UHAWAVAUATSHHdH%(HE1HYfI/IAIMLAAHHL=ILcMbH5LFFHHCHHHPHH:H5<fHEHFEH1fEH|9HEHpH@HNHPHHH1HnFH':HHH@HHI9fHnHHfHnHflHH)Pf)`)p)BIH7HDžHDžHƅHXHHHHXHHE~b9HHH H HH5H8H(~6;Dž:H8)@*VLHHHDžHHHƅMEHpLHxL9LCHLD11I):5Hs8H~H@HHB6HfHnHfl)PH9tHHpr;HS7HHHX8HHHHPH@HPH9HHFHH:HHCHH9tHHp:LBLcMH5JL;LsLDMtjMt@LX|1HUdH+%(HH[A\A]A^A_]DHLH5CLLsLcMuMtL9BHCf.HCH{HHDžH5ߜHCxWHHtKHC>f.LBIjf.HH-0LcI*HvHvHKvHvf.UHSHH1tHU9H]UHAVAUATSHH $HdH%(HE1IH=m4Ht8IL:LCHHIM)u/;u"1HUdH+%(urHe[A\A]A^]@LsfAULAVL1\7ZY=wLtL7DL`:IpB)fU/HSHHVBHHtuH]1DH]fDHH];7ff.UHS]UfHAWAVAUATSHdH%(HE1H@)@HHHDžPÅ{H@E1HDž H8H8LI@IHHuLQ/HtԋEt uHE1H0fHL-HHtHKH01HHIH9rE1L`fDIM9sLDH HHtyHxH1X2LLHEdH+%(u`Hh[A\A]A^A_]1LL3uHuHUH}=HHufDf"@UHAWAVAUATSHH $HXLHHH5LLdH%(HE1ðHL_2L{L9L;OHƄ2HIHwkHSHCAHHH9tHHpc0HEdH+%(HXH[A\A]A^A_]H1H4HIHHCArpHILHIDITITI)C >L)HHL;@HCHCHC*HDAu*EtAAtECD4fCD7@EACD4CD7w Hl@UHATSFHt?HC=FHH5Ku H5)HHD H[A\]@L%FL't1H= .L[F69@UHAWAVIAUIATSHHdH%(HE1HEHH-H?H+EHHH59LeHpHPLeHH9HMHHHM@H0IuH@IMH?H)HUH9HEHHH9LpHpHPL`HH9H`HHHpH0H@@H?HhH9H`H5HH9LPHpHL@HH@H9jH@HQHPH?H1AH)I6HAINHHH9%H@HHH8L0HpHL HH@H97H HQH0H?H(H)H1HAAH@H H55HH8HKHxHpH HH9 HHPHSH8H HsH@@L9tH0Hp+H@L9tHPHp+H`L9tHpHp+H}L9t HEHp+H}HEH9t HEHp+HEdH+%(HH[A\A]A^A_]ÐHMH1t 9A8tD 9fE 8Ht9A8HPHMH1t 9A8tD 9fE 8Ht9A8HP)HMH1t :A8tD :fE 8Ht:A8HA^fDHMH]1t :A8tD :fE 8Ht:A8HAfDHVs75p@st_tftHp@HpHsLD7LD1HsIHH)I)ȃr1AɃON9rHpqA1A׃L>M?D9rMHfA1AσL>MD=D9rMD H:A1AσL>MM>D9rMH|p҉sttHpHEdH+%(u5H@H=HHEdH+%(u H=ݸHEdH+%(uH`H=HHEdH+%(uHEH=HxHEdH+%(uH H=gHOHeHeHeHseHseUHAWAVAUATSHHLbL*HH`H}It$dH%(HE1HEHHHEHEE#H?H+EHHH52H?H+EL9HLL2H?H+EH_HH52HMHpHMHHHHH9AHUHPHUHPHU@H@HSHH3H?H+EH9HEHHx2HpHpH`HHHHH9H`HPHpHPHhH@@HH?H+hH H`H5HHh1HHH~HNHPHHH9HHHFHCHH>HFHHHFH`H9tHpHpK%H}HH9t HEHp.%H}HH9t HEHp%HH?H+AHHH50H`HHDžH@HHƅH@HHDžLDž@H¾;L2HaHL)IHL9HL)H@LPHHLH9L@HGHR H@F Aŋ9) H@L9tHPHp#H HH9tH0Hp#HHEHHEHsHELH?H9EHH5.H?H+EH9HHL.H?H9EHH5.HHHHpH]HH9~HUHPHUHPHUH@HHH@H?H+EH9XHx".HHHHpH`HH9 H`HPHpHPHhH@@HH?H+hHHhH5(-L@HHHHpH9 H@HPHPHPHHH@H@HHHH@H?H+CH9H"-H@L9tHPHpF!H`HH9tHpHp#!H}HH9t HEHp!H}HH9t HEHp HHXH9tHHp HHPH9tHHp H`HH@HH{8j SCH`L'HHRD eHHDžHPHHƅHXHHDžƅ1H5 LHHH¾;LD.IHHH5LIHH¾;L.IHHL)IHL9HL)H0H HLH9H HGHpH{ H o LH51LIHH HH9H0HpfrH?9AAAADHA OAc[AzA'bDAAv>A?B=AAv"A6H=ɚ;: D`HCt%-HHE0!DDAH}}6H11AH w HHpHMHHHH9AHUHPHUHPHUH@@HHH+EHHHxH5)HHpH`HHHH9sH`HPHpHPHhHH@H`H@HhHH+AH9)H(H`HH9tHpHpH}HH9t HEHpH}HH9t HEHpi9`fHHEHHEHsHELH?H+EH /HH5'H?H+EH9HHLr'H?H+EHHH5B'HHHHpH]HH9HUHPHUHPHHU@H@HUHHuH?H+CH9iH&fAʼnAH؃  c  ' Av;?BAv!H=ɚ; D`LCt%-HLHEDAH}2A 11H LHHHHpH]HH9 HUHPHUHPHUH@@HH?H+EHHxH5j%HHHHpH`HH9HH`HPHpHPHhHH@H`H@HhH?H+AH9!H$H`HH9tHpHpH}HH9t HEHpH}HH9HEHpfDHI)HD艅ID$H9WHH)HHH9HhH`HGHH H߹HH5iHHPHH`LHHEHhH9HFHHH; HLHHlHhH9NH`HHHHHEHHH HHHQH߻ 1LH5}^HtH`HH9ZHpHpEHX H HP0|fAzDADA DA JDLHHMЃZ1@t :A8@tD :fE 8HV:A8If.LHHMЃV1@t :A8@tD :fE 8H:A8uf.HIIHʃ1@t :A8@tD :fE 8H:A8fDHIIHʃS1@t :A8@tD :fE 8H:A8fDHIIHʃ1@t :A8@tD :fE 8H:A8xfDHMHʃQ1@t :A8@tD :fE 8H:A8fHIIHʃ1@t :A8@tD :fE 8H:A8fDHIIHʃ1@t :A8@tD :fE 8HI:A8u9H5L+u&H5LuH5zLtH5LH5"LH5)L̕H50L赕H5L螕uvH5L苕ucH5LxuPH5Leu=H5LRu*H5ٺL?uH5̺L,H5LHH@H9tHHpHH?H+AH%HH5VHEdH+%(HH[A\A]A^A_]A1A׃L9M:D9rHLHA1A׃L9M:D9rHLHxA1A׃L9M:D9rHLHA1A׃L9M:D9rHLH|A1A׃L9M:D9rHLH A1A׃L9M>D9rMHA1A׃L9M:D9rHLHA1A׃L9M:D9rHLHLH޹1L1LH5HHxLHH)HHHCHH H}OHEH00 5HI HHDž8fDH8LH988LHfuHX tQHDH(DHH9(t3LiH0HuL[; HH(HxH{H3 HH HHuHLEH)H9HFHH9HHH Hx AAAAAAAAH52LuQH5%Lאu>H5LĐuH5L豐NH5LZ :H5LF LHHMЃ^1@t :A8@tD :fE 8H:A8uLHHMЃ1@t :A8@tD :fE 8H:A8HAs?NHKtjLfLHNHNHHKLDLD HKIHH)I)Ѓr1AуON 9rHNA1A׃L9M:D9rHLHA1A׃L9M:D9rHLHtH5Lώu9H5"L輎u&H5L詎uH5L薎tH5ܳLC H5Ltu=H5Lau*H5LNuH5L;H5L NHKLLHNCHEdH+%(*LH5H=_ 1@HEdH+%(L LHEdH+%(H H5H= 1DHEdH+%(LH5,H= 1HEdH+%(uxH=[JHEdH+%(u]H=@/HEdH+%(uBH=%HEdH+%(u'H= HEdH+%(u H=HEdH+%(uH=ϙHEdH+%(uHHH5WHHH= 1HEdH+%(uHH5&H= 1HEdH+%(nH=Q@HEdH+%(OH=2!HEdH+%(/H=HEdH+%(H=HEdH+%(H=ԘHEdH+%(H=HEdH+%(H=HEdH+%(H=wfHEdH+%(uH=XGHEdH+%(VH=9(HEdH+%(7H`H=HhHEdH+%( HEH=HxHEdH+%(H=×HEdH+%(H=HEdH+%(H=tHEHEHEHhEHDHDEHjEH EHREHrEH"EH"EHEHDHEHHLH-EHKDHHLHKDHEHEHDHHLHDHDHDHCHHtHwHH)DÐff.UHHHAWAVAUATSHLoL7LL)HH9SHIIL)M9H4H9rfH1E1LMLL)AM, HnH~HLLLEG LEMumM$Ml$I\$H[A\A]A^A_]ÐHHHMHU HUHMIH{LLHMLM HMIHIIt$LLEL)]LEv@HrHH9HHFHwDH}HLHEu LEHH9HGH;H=5DUHAWAVLAULATILSHHdH%(HE1LhL8H@11ffUHEHHfEHHHxHEHAHHHHHDžHAHPLH H@LLL@HHHH@HLL H3LBHLzLH1$HƅfLH0LHHH`H|ID$HDžHXA$Hh,LHHRD J1Ҿ-L{IHu2HF |It$I;t$HIt$HHLH`H9HFH H HL9tHHp{HIL9HH`LHL H苣 HAL9t*HHpf.HIt$|D9It$I;t$uHXLXfDHH0H9tHHpHH@HHHH@HH;HHH8oH@HHHHPHHH8HH@HHHDžHH HEdH+%(u=HĨL[A\A]A^A_]H|LA|Aw 0HEdH+%(uHH5L1H=9 H>H>H>H>H-?H>H>UH HrHAUATLeLmSHLH8dH%(HE1Lm. LHH}L9t HEHpHEdH+%(uH8H[A\A]]H>ff.@UH HrHAUATLeLmSHLH8dH%(HE1Lm LHSH}L9t HEHpHEdH+%(uH8H[A\A]]+H>ff.1H9WtHtUH?HZ]ÐfUHAWIAVIAUATSHHHL'dH%(HE1MA$< eLmADLmMu HLeILL I2HNH H<LDpHO`L9ILE|M9HcoEHHHHt2pLG`DhHtgHMHuHEH}L9t HEHpHEdH+%(HH[A\A]A^A_]fM9t+oMHcLG`HLhLmLmLfHuHD`II9Ht@Ha@tUALO`LULLHwh1HM DHWH:}L::A$I$A$ADŽ$HHML,L9t&fI@I}IU(H9t IE(HprL9muADŽ$~>IH@`I$@HPH@H HP@H9uI$I$H I$I$ I$HI$M'^DHEIIqITHITLMH)I)DЃ1҉уM L9rkHEdH+%(ufH= @EAHuHO`F@LkUAATATLO`LUATfATLO`LU5;;f.UHAUATSHHtwH91HCfCL#MHCHI9rH:L9A$M$HLI9t,H@H{HC(H9t HC(HpRI9uI$I$ H9tH0I$I$H9tI$Ml$`fH H;HCH9t HCHpL9uHL羠[A\A]]:J:L:H[A\A]]ff.UHAVAUATStHPIpItHdžXHxHLHGHHwLfGƆxdž I9t#H@H{HC(H9tHC(HpI9uAdžL[A\A]A^]E9DUHAUIH=ATASEHDHt|H5HH?uDHL[A\A]]@H5_HtMH5RHuZDH5HHDtHL[A\A]]HDL[A\A]]fH5Ht%H5ݟH~uD:DD(f.UHAWAVAUATSH^HL~H}H]ML"LrfMMtTMo(LI M9IFHt Lu!LL)H9}HH9~ȅxLMMuH9]tULk(LHs M9IFHt LnuMM)II|DȅxHEH@HfDHEHHEH[A\A]A^A_]f.UHAVAUATSHH0dH%(HEHF@HLN8IM fIHHtHpHH9x sHHuM9tkA;P reIp(IP0LmLuLLuH6 LLHHH}L9t HEHpHEdH+%(uH0H[A\A]A^]HH4fDHN@HAH~8Ht5I@ILHtLAHqD9I sHHuL9tA;R s H@I(LUHAWAVAUATSHHH_dH%(HE1HGHEH9tfILmLuHs HS(LLuL{@H I|$tVLLLAT$H}L9t HEHpHHHEH9uHEdH+%(u#HH[A\A]A^A_]HEdH+%(uc~H3fUHAWIAVLuAUIATSHH}H2HRdH%(HE1HEHLuHHHE: H}HLKH}L9t HEHpH]HtI9_PH߉`z`;H cH{zHøH9ptYHpHLIGXIuH]LuIUHH H}HLH}L9HEHp_f.`I9_HtH|`9H HxcH1HIXt I_P9K rHhΉ`> `HHHI|$(H9xtID$8HpHLI\$ H9`tID$0HHpLzDI(IG IL$(L@(HHpHx ID$ I9IFHPHHPH@LHu*LHH@I)II1D&fDHXLI(HpHf.HhHpRDHp @HhΉ`$= `H1;K @I)IpIR1@Lp1~MH)H)H)H)ff.UHOHAWAVAUATSHHxdH%(HE1HWHpHOHO HO8HXHHhHOHHOPHMHMHMGHGHG(G8HG@HGXHw`WhHMH9HEHS(H}HEHs H\ Lc@1LeMt L5HHEAE1LH HHXHxLpML}H`LeLpLMf.MMtRMw(HI I9IFHt LuI)޸I9}HI9~DxMMMuIH`L9ptWIM(LIu L9HFHtLH`H`u"MI)I9}4HI9~DyHEHxHULHE萰 IHEHEI}@IE@HtHPH}HtHPH}HEH9t HEHpeHmHHHH9HHMHMHMHXHHMH9fDHEHS(H}HEHs HL Lc@1LeMt L%HHEAE1LH HH`|HxLp@ML}HpLeLhLMf.MMtRMw(HI I9IFHt LuI)޸I9}HI9~DxMMMuIHpL9htWIM(LIu L9HFHtLHpHpu"MI)I9}8HI9~Dy"HEHULHEHxHx0| IHEHEI}@IE@HtHPH}HtHPH}HEH9t HEHpQHYHHHH9HEdH+%(u/HĈ[A\A]A^A_]ÐLhI@Lp)Hi%Hi%H%H%HN%fUHATSHH@I6 LcMtMI|$L36 H{@Md$HtHPH{ HC0H9t HC0HpUHHHMu[A\]f.@wHHcH>@HQH_HkHoHHYHYHÐf.Ðf.1ÐÐf.fD1fwoH̿HcH>@HHy@uKH@u3HH H@t#HHHIHfrfUH (H5dH=H]ff.UH eH5 H==H-ff.UH eH5H= Hff.UH @H5H=Hff.UHAWAVAUATSHHHHLgL/LL)HHH3333333H9HIL)M9H<H9HvA(E1E1I7LRLHrHxH8LUI9HzLHxH2H}HBBHHxHP L9LL5fH HHHJHxHH H(HzH(HJH9HrHxH2HH9uHxLGAAtEt9@>AtEBLfBLHxILHMHUHuLMLMHuHUHMIL@(IHCL)HMDPL9LEHL'H HHHJHH H(HrH(HJI9tTHHzLPHpH:L9uLVAAlEtDDAtEBLfBLfI)LEID$HMD(MtIvLLMLEL)/LMLEM>MFMNHH[A\A]A^A_]DLLENDNDLZIL)AH)AA HEALE1DUIH1I3E9rLEHELDH9H>DLT9LT>HzHH)AH)AAA1ANND9rHH3333333H9HGHBLBLHx&DZDXD]FTFTH3333333H9HGHMMmI|$ID$ H9tID$ Hp0LM9uIIH9tHIIAH4@HxI~IFH9t`LLM$M9tMLAHLI>LH)H9GIHM9uD0L(IMM9t'@It$I<$IM9uL(H8I9tLHHH9tLLM9t2fDI<$ID$H9tID$HpI M9uLMtHLL)}HHH9tHHpZHHH9tHHp7HPH`H9tH`HpH0H@H9tH@HpHH H9tH HpHHH9tHHpHHH9tHHpHHH9tHHpeHHH9tHHpBHpHH9tHHpHPH`H9tH`HpH0H@H9tH@HpHH H9tH HpHHH9tHHpDhL`IMM9t5fI I<$ID$H9tID$HpPM9uL`HpI9tL0H@HPH9tHPHp H H0H9tH0HpHHH9tHHpHHH9tHHpHHH9tHHpHHH9tHHp^H{pHH9tHHp>H{PHC`H9t HC`Hp$H{0HC@H9t HC@Hp H{Ht1Gx>u HH@H[A\A]A^A_]fH[A\A]A^A_]ÐHpZff.UH,HHATSLgpHHMtI|$ % @LdHmHHH.H߾x[A\]=ff.UHHHATISH HHtH{_ HH[(HuI$茻 I$HtH{ $ @HI$I$H9tI$HpI$I$H9tI$HpmHvLHI$6[LXA\]E@UHAWAVAUIATSHL~8H_HXdH%(HE1HGAƇ H`H9;HELeHhYf.LFLHUL9HHUHVHUHVLv I(HHH9`M}8Ls@Hs LeHS(LpHu HHhH蝿 II;iHhHpIoH}L9uHEHpcHUHz@r0E $DN@EL@97|f|&HxHx4@EMDN@EL=fDL:@MHXHDžPH9I$HI$PLhHIA$I$HHL<L9BLHAH)HPHHt`L`f.H HHJHHH@HPHPH@HJHHoPoX@HJHRЉJHZJH9tZHzH:HHH9uHHHntDDvDLfDLcfA$I$HHL<L9tKH@ILMHPH;HSH9t HCHp;I9uMH@M$HhI9t$LH8L@H8L@HH OM$A$HXtHPHHLA$HsHHLHHHHH9uHSH>IH9LD>LD9LAIL)I)ʃF1ɉσM :M 89r+LLANTNTLJIIL)I)1AO4O49rMMMLNAOT NT LVIL)I)~1M M 9rcH9HƅOH)HHHHP>҉9||GDDDLDLEMDNEL=DL:HEdH+%(u H=| '2H oH5 H=nޫIH I< fDU1HATSHH=yIHCHMtLLHIγ H[A\]H= f.UHHHATSLgpHHMtI|$ Q @L$H-HHH[A\]f.UHĿHHATISH HHtH{/ HH[(HuI$\ I$HtH{  @HI$I$H9tI$HpcI$I$H9tI$Hp=HFLHI$[A\]fUHHHAWAVAUATSHLoL7LL)HH9SHIIL)M9H4H9rfH1E1HLMLL)IM, HmH~HLLLELEMulM$Ml$I\$H[A\A]A^A_]HHHMHU6HUHMIH{LLHMLMHMIHIIt$LLEL)LEw@HrHH9HHFHwDH}HLHELEHH9HGH;H=#Tմ@UHAWAVAUATSH(LH}HuMHEH8LhH}DIGHt[IMw(I_ M9MMFMtH}LH詷uLL)H9}HH9~xIG1HuL@ukMtBHuLHHMWHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:L蒹HMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHAWAVAUATSH(LH}HuMHEH8LhH}DIGHt[IMw(I_ M9MMFMtH}LH)uLL)H9}HH9~xIG1HuL@ukMtBHuLHHM׵HMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:LHMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UH  H5XH=HiUH H5(H=EhH9UH H5H=!H ;ws!GWHHDHHUHDff.UHATSQx89^HcH9HHv[A\]Hf.)HcH;<;@sθHA93HJ#ttH 0 0 HHH⋇HH9CHL$I $HtJH 0 0 HHHHHHHH)H[[A\H][A\]eDHHրI$HfH@H9uI $qH 2H5 H=QyHH5[LH@ilerHHHHH@1HLHHAV衮HY^L9tHHp蓲H`HtGHHHHu/H@Haarch64-Hunknown-H3H3QH l@HH1LHDžL@ڵHfoxHHHHHH@HHL9?HPoH9HPH@HHHHHDžHL9tHHp9H@HHL@HxH)H@H#H8HHHHPH@L`Mt LHuA<$clanl@LH1LL蓶Dž4fL8L!LTHH@HPH9tHPHp%H)AtAcH@HtHPH)үHEdH+%(4He[A\A]A^A_]f.HDž@E11E1HDžPYDHL)LHHHH)H9L9HHH HH9-HL@IHLHHHLLLxIAHLLL]HLL)軮HL@HHHPef.HPHHHH@Hx86_64-uHnknown-lH3H3QH &Hinux-gnuH9AHXHHHH;P HHHHDHHHDžE1L@HLLHH4L@HLHHLPI$ I$ I$ I$ I|$p I|$PI|$0֨A<$LL8LKfDH@HLLLi@L@HLHHLPL@HLL_HHLP}@HHHtEH7 ЃH RtA$pH@HHHHHHDL@HLDHEdH+%(@Hnknown-lH3A Hinux-gnuH3QH s\fDKIH@L蠟Lc\fDLLM9t1DI<$ID$H9tID$Hp$I M9uLMtHLL)LLM9t6f.I<$ID$H9tID$HpĪI M9uLMtHLL)蝪LLM9t6f.I<$ID$H9tID$HpdI M9uLMtHLL)=LLM9t6f.I<$ID$H9tID$HpI M9uLMtHLL)ݩLkxLcpM9t)I<$ID$H9tID$Hp贩I M9uLcpMtHLL)萩H{PH9`t HC`HpvH{0H9ht HC@Hp\ HESA|$gHDž4@hHP HH@H)HT clanBgHG HPL`8@@IHL9uOf. IF Mt&LI~ HIFH)H9sHLL}IL9t`M,$WIH@ I9FuH5PLFI뙐HtLHHI蘯HHIV L9u@HH@ H9Gz HG HDž`ݯIH0HMl$HHoLLID$HI$L`HL`1LLhHhHtLpM$ HPHE1LHp8P@LLLtHHLLHI$ ߮H@HH5LHHYH0f11HHH HH H_H HH1HDž(ƅ0DžƅHDžDžHDžH)H`HHHI=2LL"HH E1H(AH NHH莮HDž0詭IH H(Mt$H`HmLLhID$HI$趩HH1L8HL0HٜH8Ht蘾L MHPHE1LHp8P@ȦLLLHHLLI$H1 GHf11HHHHHMHHH1HDžƅDžhƅHDžDžHDžH`)pۭHHLLLPhxLHH>HH0LѣHHE1HAH kLHH5HDž PIHH0HXkMt$LL8ID$H5I$dL(H(L1LL 莚H(HtMLMHPHE1LHp8P@}HLfHHLHiI1L IFp``sIF HHLLLHp`蛜LLPaHL虩HpH01H0L1HMt6L迢LL0MtL螢LHRHHHcL HHtHPHRLHHMt!I|$ LMd$(OMuH LpMtI|$ H @LHPH`H9tH`HpH0H@H9tH@HpՠL%ޞHID$H薠HwHHH`HHH9tHHpuH١HHtHPHLHH`MtI~ P @L#HID$H`H̝HHHMH HHH9tH0HpʟL2MDDž4@H5J自fH5paoxPHHEfLILLHϟLMxaDž4L%-HH@I$HyMHHITHTHH)I)1҉уI4H49rDž4IHHCII]IEIII]IEHќ111fo[dHLDžHLHHfƅHDžDžHDžH)蕧H8HE1HLHܫHH1ҹHxHPH0BLL踟LpHHHH袥HL9-HH9HGHHDž4Dž4FA$ATTH@HDž4ATfTH@H腻PH ٿVH5]H=&职茻HEdH+%(u#H=FL@蚏IHʺeH fMH5H=&IIIILIjIIIImI^I^I.IIII<IL@AIIIIIyIyI,I>IIIIIIL@@UHAWAVAUATSHHEHHxHpHE HHhHE(DH`HE0LHXHE8HH@HPHE@HHdH%(HE1H@HDž8HH0H/virtualH@Hl/main.cHGƅOHDž ]H H=DHDžHHHƅ HHHDžƅ胔H=CHHmƅHHHHHHDžHHHDžƅHH0L@HHL0HpIH HUH@LH8HH0HL9eHo8H9-HHHH0H@HDž8H0L9tH@HpHƅLHHHLƅLHDžHsTH?H+H9HHL(H?H+HHH5 BHH HHL9tHHp H@hL-H"H5kHLHL.HHHL还HLHHHHHLH52XHLH輋H1ƅ0HHHHEƅ0HHHDžHHHƅ H0(HAE1LpH a>LH0HP+HpH HDžpH HtHPHpHtHPH*@H @HDžfHnfHnH@flH ?fHn)fHnH?H ?flfHnH?)fHn~HfHnH@flfHnH@)fHnH SfHnflH)fHnH ?fHnflH@)fHnH ?fHnflH?)fHnH ?flH H)fHnH ?flH()fHnfl)f)p諛fofoHH=<fofoHfofofofo`h fofo p0x@HPP`XpHxHpVH5<HHDHHDd| LHHLLpHEHH HPfHDHHHHDž`)P 1HxHH8>H0H9MHHL0HxH>H0H9HHHxHPH;Xu#VfDHHH HxH9Xt5HHxH0H;uLLH H9XufHHDž@)0DHpH(HHHHIHHLXLPM9t/I<$ID$H9tID$Hp I M9uLPMtH`LL)HL9tHHpɍHpHtHH)讍HHH9tHHp苍0tHƜ HHH9tHHpKHHH9tHHp(HHH9tHHpHHH9tH HpH HtHPH0HH9tH@Hp譌HEdH+%(He؉[A\A]A^A_]fLpHH1LHLH,H0HHpH@HL腓HpH0fHHLH0H@HHGH.{ HH L9tHHp贋LpHHL臩H?H9HH5'#(LHHHpLpHH9 HpHPHHPHxH@H@HHPH0H?H+xH9mHpHH蜖L`HHHpLPHH9 HPHPH`HPHHPHXHH@@[HPL9tH`Hp_HpL9tHHpCHL9HHp#fDHL9tHHpLLLLH$ L-H5ŶLHL77H5öL#NH5Lf.HxHH5HPH9 HHHxH5HPH9 HHHx'LpH0HLH53HHLHH?H98HH5` aLHHHpLHH9 HHPHHPHHHHH@@脊HH?H+H9^ HHHHΓLHLpHHJHrH9HpHBHHBLLHxHpH HHBBH}HpL9tHHp聇HL9tHHpeH0H@H9tH@HpBHHHPL`HHHHLPHKv HXHPLHƅHsHHDž}H?H+H9Y HHHMH?H+H HH51HHvH%=@HXHPLpHƅHsHHDžx諁H?H+xH9y HHH{H?H+xH HH5;0HHHpEuHHp%=@L9tHHp>HL9tHHp"H8Hƅ0H5/HHPL9tH`HpքH0LHƅHsLHDžRH?H+H9y HHL&H?H95 HH5H@H8H?H+H9HÏHLpHHJHrH9HpHBHHBHHHHxH HBB}HpL9tHHp臃HL9tHHpkH8HHH9HHHpDtHLLH8&~HH-IHH8HH1s0Lf.LH5yHp1L9@fDHL9tHHplH=-}HHH(HHH+H8Hƅ0HH}HL0L@L@?/L9tHHpʁHHGxf{8|HH,IH~H81]r IEHHxHHLw ŏHW+H(H(HHHLHH8H@6H8HHtDHOЃ+tAHH8HHHH0uHHLHMHHLH/H8H@HHLHH8H@sLHLL0LpLLļHxHHMHʃ1@t :A8@tD :fE 8H:A8HHLTH8H@HlHMHȃJ1@t 8A8@tD 8fE 8HE8A88HMHȃI1@t 8A8@tD 8fE 8H8A8HMHʃ1@t :A8@tD :fE 8H :A8LpHPL7HxHLpHPHL :A1A׃L9MD=D9rMDH?A1AǃL9MATfTHH8 HEdH+%(H= nHEdH+%(H= nHEdH+%(HpH= HnHEdH+%(H= nHEdH+%(H={ jnHEdH+%(ukH=` OnHEdH+%(uPH=E 4nHEdH+%(u5H=* nHEdH+%(uHH= HmkHEdH+%(uH= mHEdH+%(uH= mHEdH+%(uH= mHEdH+%(uH= mIMHHIAIHHHHHIIIHHIIIHHHIff.HUHHHHvHHHt1Ҁx ]HE+efDUHAWAVAUATSHHHdH%(HE1FH<H`<{vIQfIoH28.HPHR("HL5Q!ILhMAEP{wIIuA>updavA>inseufA~rtuA|$HSAD$AL$HUEEEIDLd1fEMM1LH}ID$H}HEPH}HH@HEPHH~x%MuML3MeI^MnH1@HHS HCI9HBCBHu@L9AI9( ~LHDL` HlIF(quifHH9SHHfy 7uHfA~te}I;^rHnHP XE1L;c A`LM;nuALH mH5x H= we҆fhM^`H WVH5H=?ezxU@UHAWAVAUIATISHHXdH%(HE1^A1EtHXD[A\A]A^A_]HL\tA$1EfUI$HUEEHtc1H}H}HCHHHHH}HH@HE@NHHx%tNEtE(@H`k8W'PH<Hv<{vwLEEjHHP8.HxeH{HEHUcfIH8EHx_Hx$HP(:mapsufoEHEH5HHE)E@uu6H}H5'uuH}H5 uI$I~LHH@MHuDHHtHPHpH9x rIHM9I;x AEAc^uJqUHATIHSHH0dH%(HE1rHtHUHLu$HEdH+%(u2H0[A\]EHuI$H]؉EcfDUHAUATSHHHHH9tHHpqHHH9tHHpzqHHH9tHHpWqHHH9tHHp4qLLxM9t-I<$ID$H9tID$HpqI8M9uLxMtHLL)pHXa[ L8L0M9t2fDI<$ID$H9tID$HppI M9uL0MtH@LL)upLLM9t.fI<$ID$H9tID$HpDpI M9uLMtH LL)pLLM9t6f.I<$ID$H9tID$HpoI M9uLMtHLL)oHHH9tHHpoHHH9tHHpwoHHH9tHHpToHxHH9tHHp1oLPLHM9t2fDI<$ID$H9tID$HpnI M9uLHMtHXLL)nL8L0M9t.fI<$ID$H9tID$HpnI M9uL0MtH@LL)}nL LM9t6f.I<$ID$H9tID$HpDnI M9uLMtH(LL)nLLM9t6f.I<$ID$H9tID$HpmI M9uLMtHLL)mLLM9t6f.I<$ID$H9tID$HpmI M9uLMtHHL[L)A\A]]SmH[A\A]]Ð@UHHd1Ҁ8.t ]D@uRHxHtP<{v'H $BH5o H=o \;dHt48.t1]H Z#mH5No H=x \H H5/o H=8 \fUHAUATSHHGL(HH LGiLAHEԉU3ifAnHH [A\fnA]]fbfH~fxDUHWH:Hy]ff.UHATSH0dH%(HE1F v HEdH+%(uvH0[A\]HHvHt^<{v %DDHUITtEHsI$H}ЉEHt<{wH}1` {f\CUHATISHHH3rLcHCI$HCoHC(1HC HCHHCXHC`HHC0HC8CHHCPHChHCpHCxƃ諱H;,eH;Jh Ј[A\]I ff.UHAWAVAUATSHHHHW(HdH%(HE1HG0H)HHAI?:fDH^HHHHC(HH@(HHHt H@HpHHHHHHX ID$0H8H8H`HHkLHHEH}HEHL@It$HHEEdL9uHH5tLH+EL9vHLLtLH+EHuHH5`tHML@HMHHHHH9HUHPHUHH}H@Hh@HLEI H9 H`HH9Ms#HpH9HpH9HLL)H9LeLsHPHpHPHH@HH98 H@HHHPHHH0H@@L9HH@H5$HH1sHH0HHJLBH HH9mH HBH0H HHBH BHL(I H9HHH90s#HH9 HH9(HLL)H9L LgrHHpHPHHHH9HHHHHH@@H0LH+H HH52HHqLHLHHJLBH9HHBHH HHBBHLI L9hHHH9s#HH9 HH9HLL)H9m LL$qHHHHHqHHAH9HHQHHH1HAAL9f HH5HHpLpHL`HHqHQH9,H`HAHpH1LH`HAAHHhH+AH9 H*pH`L9tHpHpNdHHH9tHHp+dHL9tHHpdHHH9tHHpcH HH9tH0HpcH@HH9tHPHpcH}HH9t HEHpcH}HH9t HEHplcH`HpH9tHpHpIcHHH9tHHp&cHHH9tHHpcH@HPH9tHPHpbHS(HC0IH)HI9LN$LXtI$LkLPHHƅ0L0HH(H@HHiH;E11H5NgHLBiHHHHJDHHHHH7dH IHHH 1eHHH HHLiH H@HHfDHEdH+%( HH[A\A]A^A_]HH11LeZHPHpH@HHHPH9HLHHMЃr*A1AσL>M:D9rHLH1E$HPf.HH11L YHHpHPHHHH9LHHMЃr/A1AσL>M:D9rHLHfD1HPfHH11LFYHHpHHHHPH9HHHHHH0H@@pLIHLA1AAAL@@H`HHLpL9HHH/LL9 LIHLA1AqAGA%LBa@HMH1HQHHHLL9ILHAT1AAALBLHHMЃA1AσL>M:D9rHLHLHHMЃA1AσL>M:D9rHLHxLHHMЃ1t :A8tD :fE 8Ht:A8HA9A8HP!D 2fD 7HAulr27AND 9fE 8Hu9A89A8HP27L@D 0fD 7HAuT;07AD 9fE 8Hu9A807LB8A8HQD 8fE 8Hu08A807LB5D 0fD 7HAu07AE1AƃH<1I<2D9rH1HHACfA1AǃL>MD=D9rMD1HO,@E1AƃH<1I<4D9rI<1HAeDE1AփH<1I<2D9rH1HHAA1A׃L>M:D9rHLHffD%fDXfDLHHMЃs:1t 9A8tD 9fE 8Ht9A8HPA1AσL>M:D9rHLHHEdH+%(H=LHEdH+%(nH=wLH @H5lH=IHEdH+%(0H=^Y `HEdH+%(H@H=$H LHEdH+%(H=KHEdH+%(HH=HKHEdH+%(HH=HKHEdH+%(uoH=xKHEdH+%(uTH=nL VKHEdH+%(u2H=LL4KHEdH+%(uH=*LeKHH顢HȢH鬢H^HyH鸢H鸢H:H|HPHdH鈢UHAWAVAUATSHHHHhdH%(HE1H0ƅ0H(H HG(HDž(HH@(#HIHHHEH]HHH]HHE A11HH OHHpHPHHH0H9HHHHH0@H}H@HHH9t HEHpUIW(IG0H)HAHDžE1H?L@Hg"HH5faHHxHHHM"LWHIHV H4 AHHID$( H LpH@HHPIHH@AL* HH1XH@HHHPIvL \LH@LHB(ID$(fH8 LhHIEHMAL HH1XHEHHHEIuL}[LHELeH11B AH !\MHHHJHrHEHH9HEHBHEHBHEHHBBH+EH HHE H5HH`7_HHpHHJHrH`HH9H`HBHpHBHhHH BH`HBLhHHI H9vH@HH9ps#HH9sHPH9SHHL)H9L`H@LHT^L0HHHpL HH9H HPH0HPH(HH@@HH+(HH H5\HHX]HHHHJHrHHH94HHBHHBHHH HHBBHH+H9HHHpA]HHHHJHrHHH9eHHBHHBHHHBBH+H HHH5HHP\LHLHHJHrH9HHBHHBHH BHHBLHI L9 HHH9s#HH9 HH9]HHL)H9LL[HHpHPHHHH9HHHHHH@@H0HH+HHH5HH8e[LpHL`HHqHQH9H`HAHpHAHH+(H1H`HhAH9%HZH`L9tHpHpOHHH9tHHpNHL9tHHpNHHH9tHHpNHHH9tHHpNH L9tH0HpuNH`HH9tHpHpRNH}HH9t HEHp5NH}HH9t HEHpNH@HH9tHPHpMHHH9tHHpMH@HPH9tHPHpMDIW(IG0HHH)HH9@LN$LCtI$MoLPHLrHHH@LƅHH@SHhLHEHHENtH@IuHHHEHHH+EHHH5dXHH+EL9=HHL>XH9]HH5CXHMHpHMHHHHH9q HUHPHUHPHUH@@HUHHH+(HuH9+H HHWH}HH9t HEHpKH}HH9t HEHpKHH+(AHHH51W@HPHDžHH@HHDžHEDHH3fDHxH1NHHHHLL0RHHzDIAFPHIuAEEH`fH@H11HHL`CL0HL HHJHrH9OH HBH0HBH(H HBBfDHHx11LFCHHpHPHHHH9LHHMЃr/A1AσL>M:D9rHLHfD1  { HPQfL"E _IHHpHHHMFL8KHHH H AUHHID$(HHHt H@HpHL`HpLHH`7 HHEHHEHsHELCH?H+EHHH5QSH?H+EH9HHLSH?H+EH H H5 qSH]HHHpH]HHH9HUHPHUHPHU@HH}H@HLEHhI H9H`HH9Ms#HH9HpH9 HH?L)H9HEHH`RHHPHHJHrH@HH9H@HBHPHBHHH HBBH?H+HHH@H5iHHRL0HHHpL HH9 H HPH0HPH(@HH H@L(HI L9g HHH90s#HH9XHH9 HH?L)H9H HHXEQHHHHJHrHHH9y HHBHHBHH HBBH?H9{HH5HHPPLHHHpLHH9 HHPHHPHHH@H@HHHH?H+CH9HH.PHL9tHHpRDHHH9tHHp/DH L9tH0HpDH@HH9tHPHpCH}HH9t HEHpCH}HH9t HEHpCH`HH9tHpHpCHHH9tHHppCHHH(H?H H+CH9HHNHH0H9tHHpCH H(H9tH0HpBHEdH+%(Hĸ[A\A]A^A_]DLHHMЃ&1@:@b:A8UfH@HHLL9LHHMЃ.1@@8A8f.LHHMЃ1@*@ 8A8f.LHHMЃF1@@p8A8f.HHHLL9HMHȃU1@!@B8A85LHHMЃF1@@xt8A8gf.HMH}1"HQHMHʃ1@t :A8@tD :fE 8H:A8LHHMЃA1AσL>M:D9rHLH`H@HpHfDL"L5 WD :fE 8HD@:A8@fD 8fE 8H@8A8@f.D 8fE 8H'}@8A8@\f.D 8fE 8H@8A8@f.8A8HQD 8fE 8Hu8A8D 8fE 8Hu@8A8@TfD 8fE 8H=@8A8@f.9A8HPD 9fE 8HuU9A89A1A׃L9M:D9rHLH1@fDA1AǃL9M:D9rHLH1@9^fDA1AǃL9M:D9rHLH1@fDA1AǃL9MMD=D9rMD1H_|@HpH1?HHHHHLCHHDA1A׃L9M>D9rMHfDfDHhHfDHIIHx1t 9A8tD 9fE 8Ht9A8HPHHp11H HX4HHHHpHHHH9HHPHHPHHH@@(DHEH11LH`3HPHHHpH@HHH9H@HPHPHPHHHH@@H@HMHȃm1@t 8A8@tD 8fE 8H8A8tfHHHHH9HMHʃ:1@t :A8@tD :fE 8H:A8HMHʃ1@t :A8@tD :fE 8H:A8H`HHHH9drHIIHʃ91@t :A8@tD :fE 8H:A8fDLHHMЃ1@@eA8A84fLHHMЃU1@@`8A8SA1AσL>M:D9rH0L HZ7A1AǃL9M>D9rMHlA1A׃L9M:D9rHLHA1A׃L9M>D9rMHA1A׃L9MHFFH`HhH@HHaH`L9tHpHpe"H}L9t HEHpO"H}HEH9t HEHp5"A$ L HH5SL H(A 1H LWHHH@sMt$HLH蛵HƺLL~H(LMt$H H)LRHHL/H HH9tH0Hp;!H@HH9HPHp!HH5AR|HMHE1t DEAtFfGIt BCHFHMHʃsP1@t :A8@tD :fE 8H9:A8,1H;Z 'A1A׃L9M?D9rMHA1AуLMD9rM H*e@#HEdH+%(uH=6%H3mH3mHDmUHAWLHAVAUATISHHXdH%(HE1HGPHtfL HHHtHHHPH9X sHHuI9t:H;^ r4HEdH+%(HX[A\A]A^A_]f.1ƅA$fI$HDžHt1HHLHCLLHLHH@HH8 0A$!HCLHbLHH@HLHH@<H{H<{v@(H{ H{H{Hn lH{HI|$@Hio HtKHu I9Dž(Hk%HLHX H_ID$hH'Hy'H0LHDž(H HHHƅ0HDžƅHHDžƅID$H HLHHHHH$HLUH HLHHHl&LH H 良HHIt$LHH ƅHHHr"LLSMH LHHHL诩LH HH{!HH{HHHOHCHLLHH HHHuL`LH5cLlH5KL=HH@HHH HHHgHLL LHA$ HgHH5KHHLLHЬ@ID$H(HLHHHL H$L蜭HE1LHLAL} HH5HHPI|$HHHk H5L"HID$LLHsHHHMm1H;Z THH5JMHHH5H'AƄ$HI$5 FH\fHH LHHH5fHeHeff.UHAWAVIAUATISH8dH%(HEHHt>HxHHHtHPHHL9` rHHHuH9tL;f MHEHHpHHxLA,HLeHHDžxL=nIHHDIxA}LHAEIcL>fDHH9tM9uIdžAƆfDHEdH+%(,He؉[A\A]A^A_]IE(HIŋ<,IDHIuLD<IL9uHpxHHHHH9t4HH9s+H H0HHHrHHH9r勍xHpHDHH|HH9$+xûIu0L}tyDžAEu"(@9(IE8LAUH4%uL7 DHp!L L L$tH@L! HXHPL fo@H@HH`H0H) H(H9$tLiH0LNFH(!H HH H9uH9uAE tIELH0HPH@L< HXHPL fo@H@HH`H0H) H(H92!tLH0LiaH(@H HH H9uH9uL@ Lq L" L L L L L׹ Lȹ LI LZ sL蛹 dIuLh`AEI}HMlL9HH0H'>uHvLHHI9uL L L L LY LJ L軸 IELH0HP葌yH@L HXHPL fo@H@HH`H0H) H(H9/"tLH0LH(yH HH H9uH9uLη L迷 L谷 yL衷 jL [A}u IE(HtH0HPL\DH@LH`HPfo@H@HH LXHH0) H(I9Yt HH0LH(pH HH I9uH9u]L蝶 fL莶 WL HIEHtH0HPLP8H@LHXHPL fo@H@HH`H0H) H(H9tLH0LH(H HH H9uH9uML荵 VL~ GLo 8L` )LQ LB L3 L$ L L L I}HHHLH@L豴 zIu(IU0L誸rH@LHXHPL fo@H@HH`H0H) H(H9tL H0LH(H HH H9uH9uAEeI} HDžID(HH'HHHH9LHHHuHHLHHGHH0Hg!HFP!L[L IE0HL L貲 {L裲 lLԢ ]L腲 NLv ?Lg 0LX !LI L: L+ Iu LH@LAHXHPL fo@H@HH`H0H) H(H9LtLH0LnfH(H HH H9uH9uLE L6 L I}LHL蝤 IuLIuLLȰ IuLEH@LHXHPL fo@H@HH`H0H) H(H9tL&H0L H(eH HH H9uH9uLҥ Lӯ L԰ LŰ ~LV oIELHH0HPx`H@LHXHPL fo@H@HH`H0H) H(H9tLH0LH(H HH H9uH9uuLe ~L覮 oL藮 `L舮 QIELH0HP^FH@LHXHPL fo@H@HH`H0H) H(H9tLH0LH(!H HH H9uH9u[H@wHHLh`HPLQ!DL\ %LM LΨ L/ L L LR LC L4 L% L Lǭ L踭 qL詭 bLڣ SLˣ DL輣 5L譣 &LN L? L0 L L L L L IE(LH0HPH@LHXHPL fo@H@HH`H0H) H(H9tLtL1H0LH( H HH H9uH9uL Lާ Lϧ L L豧 zL袧 kLkH@LHXHPL fo@H@HH`H0H) H(H9tLH0LH( H HH H9uH9uL L豦 zL袦 kL蓦 \L脦 MLu >Lf /LW LH L9 L* L L L轤 L认 L蟤 L萤 L聤 Lr {Lc lLT ]LE NL6 ?L' 0L !L L L Lܣ Lͣ L辣 L诣 L蠣 L董 L肣 Ls |Ld mLU ^LF OL7 @L( 1L "L L L Lݢ L΢ L迢 L谢 L衢 L蒢 L胢 Lt }Le nLV _LG PL8 AL) 2L #L L L Lޡ Lϡ L L象 L袡 L蓡 L脡 Lu ~Lf oLW `LH QL9 BL* 3L $L L L Lߠ AoE IE0H LH)HD$${H IUHtOHBHL(IuLL& L LHLH@L&HXHPL fo@H@HH`H0H) H(H9 tLnH0LSKH(H HH H9uH9uL* IuHtLIu@HT >F LLHLIuHLIuLH@LHXHPL fo@H@HH`H0H) H(H9\tLH0LH(8H HH H9uH9uLם Lȝ Ly IuLoL藝 `IuIUL萡XAoE IE0H LH)HD$$ۡH H@LpHXHPL fo@H@HH`H0H) H(H9 tLH0LH(<H HH H9uH9u4@L0 9L! *HHH H(*HZLH H(^HLH H(HLH6LQH H(HL,H H(9H_LH H(H^LH H(HLH H(H^LH H(HLsH H(HLNH H(fHL)H H(}HLH H(%HLH H(HZLH H(HILH H(HHLpH H(LPH:aH9KLLuH9LEH@8HHHH@ H8Hp LH@HHXHLH@HAEH:H@ƒH@%+HDžHHHHHH48LQIHHHH9uH@HHH@f H9H9HHL݆ LYPLGL5L#HxL H H(?HLH H(bLL=LL`LLmL[LIL7SH9HH9u6H9$H9H9H9H9-H9H9H9H9H9H92pH@LHXHPL fo@H@HH`H0H) H(H9tL1H0LH(u)H HH H9uH9uHvL{H H(뀾L^H9qrsHnI}IHH8CL"HmHLMfDE1H;Z A_EL牍L"ALtLljLL8WV1LƉLufAH]IH1HLDžƅ(LLI@HEHHH@HELH8!Lu+HUdH+%(Hh[A\A]A^A_]ID$LHE腾HHH@HErLHH@<vIELLHLfnfnfbfH~wƅHHHH@HH{LHI@HEĽH8}LeMtHEHtI9rH:L90A$M$HLI9t,H@H{HC(H9t HC(HpI9uI$I$ H9tHI$I$H9tfI$Ml$`fH H;HCH9t HCHp3I9u޾L!1;f.E%DuLuEI>DAHHx I>tI'DptHǀXHPA$M$AƄ$xADŽ$ HLI9t#H@H{HC(H9tHC(HpEI9uADŽ$1L1DuH}1HEfEM%DxgHuDH]HH H1M%Dx-D*:J:L:1 5aUHAUATSHHGL(HH LGLAHEԉU3fAnHH [A\fnA]]fbfH~fUHAVIAUIHATSHHpdH%(HE1LAH851HHHEfUHPEHH)HA9HJH9ZH8Ht<{v @IUHuE11vUtO<}DeA@wjHEHH cH5H= v H}fHHUdH+%(Hp[A\A]A^]DLmL,D)Ѓ?wLA)A@HEHH}HxHxDH = H5i H= mH H5 H= IH * pH5.l H=6|*H s H5 H=Ņ H]HA@wPH@HAT$D)HHtHAT$H?)ƒ@@D)HHHH#tPLmLAD)Ѓ@ALA)A@wIHHtHÍPfLmLAD)Ѓ@LxH  H5 H=4 H h H5 H= H%H%UHAWAVAUATSHdH%(HE1F v/HUdH+%(HĘ[A\A]A^A_]DIH~HH<{v ֮fD[IH8.uHxH<{w.IH8EbHxGTVH@HH@H@8QH9}HHH9 H1Hf~ uH9H HHB@HHHfy uy$HA(8packfxetMl$MAE.yLcLH,!H{HI>lLIAEDI6LAIFLHLHƅHHH‹HHHHH@LHH#LLLLLLHLLpIF(LeH8*HLHHHMLH5LHIM9H5LLH`HHIrL@HHLLLXM' H5QLLH HHIHLLHLpIL`GaL%LLxLnLHLHLLHLI`LLL+L`HL LHLL`H5^vLHHHHPHLLHLHxH`HHXHHHpHtHhSH{MfLLtHfnfnLfbfH~HLLL# I~lH[HPHHfDufHH9HHfy uHxIH}HIE0HEHH0=I'_HHx fnlI>fnfbfH~ytIHpHǀXHPIxAHMHDžHLLfAƅxADž I9t#H@H{HC(H9tHC(HpI9uADžH1AMtEA$<{sLHLH߉bm H1XXY[YH[HH~HzHzHvHvHvHvHvHvHvHvHvHfDUHAWAVAUATSHdH%(HE1Ff<t*HUdH+%(BHĈ[A\A]A^A_]IHHbIH8.uHxH<{v 襦D+IH8EuHxGrWH@HH@H@8H9HfHH9)H1Hrf~ uH9 H HUHB@HHH;fy uy$HA(8packfxetM~MAG.LsLſH-I<$L IAGDPI4$LH HH HLHHx{ LLHLL^ I}L@螾HLLpHHjID$(LmH8iHLHHLIGxHx8H;AHx <H 软H;AtIfAnfAnֹHǀXfbfրpHPI$xA$HM$HDžHLLfAƄ$xADŽ$ I9t#H@H{HC(H9tHC(HpI9uADŽ$HHHH9tHHp軽1@Ls(HL)HHHHH9zL9HH9bE11HHL,LlHMJHK(Lk0LC8fDH9t+o]HSp[xHHEHEHHUHHt>HPЃptUHKpHuHHHSxHEnDHCHspHSxLLHHLHE踫 LLLLHLHݷHHLDIuHs8LHL)LHL臺HL5H]HH9HGHHIA1AσL>MD=D9rMD HA1AσL>M>D9rMHHs8L)LHEHyHHLITHTHH)I)M؃1҉уI4H49rEHUHCpHH9HGHHbUHTTHKpHuHHTfTHKpHufE@HEdH+%(uH=K@?HEdH+%(uH=1I HEdH+%(uH=IHg HK H H H/ H7 H7 Ha @UHAWAVAUATSHxdH%(HE1FL$M2A$<{v 觐ILI"HH48.=HxH[HHH@2P{wHPHHDžHH@ƅPbH HH^ CbHzH@HH@H@8?H9Y H@HH9H1H;.f~ kuH9ufDHHH.fx kuP$H@(H5UeHHHHǺHjL調UAEAUfH@HDžH)LdAEIMLHL9I<$ϥLHIGLHHL#HHLuHƅHLHHLl LIL9kHLtH5dLH H2IG(LuH8:LLHH@HHH`LH5cHHSH5_H$L@HL肶H@LHHYLL HHH`LLHLIT$I4$у IL$(IT$ LHX HHH膫HHIL$HH IT$@HHH HH5]=HHHH蔵IL$HIT$@LLLLL HH5cHHHH>HHHHȫH輫L贫H訫H蜫H蔫L茫LI_L@LHBHLGHLLH HJ)CH@HHHƅHEdH+%(,Hx[A\A]A^A_]DLL@@~Lp@H LHHHLHDžHHHHHHƅHDžƅHDžƅHL·HLH5GZLLHHH>H5#ZL"H5\ L6 LH5y\L H5n\ LǯHH5]觯MHH5F 臯N#LH5GLdH5HLHH5KL,+HHH5KHHH!.HH5KЮ{/HH5K 谮5HH5zK萮2HH5 HHm 0H5HHQ/H5GH5w:HH5G:HH5>f9HH5]խ9HHH5CHHH虭8HH5[ yo8HH5[Y&8HH5[97HH5[ 7HH5[K7HH5[٬7HH5[蹬6HH5[虬p6HH5[y5HHH5[HHH=z5HH5[15HH5B4HH5sBݫ4HH5W[轫4HH5<[HHLQHH5ff>HH5[LLH5XL貣H`HHH HhH`H诪H藤L菤LLHHHk HHLH HL臢H?L7xXLHH LHuLH]ƅfDLأḤHH责H訣H蜣HtH脣Hp<3HEdH+%(}$]H5a H=ZuDHdxpDy@uHH9HH!fy kuHH{LpHHHHHHi L1I_ HcHLhƅHH‹HHHHHoLI_HHLƅXH‹XHHHH"LH5< LL)HUcLHǠHH`HHLơLH5 LHL艠HH@LHH٪L聡HH5TL蛤H5TLHLHHHAHHHHt HH5V衝HHH(H L謤H萞H脞H|LtHHH5NHHHtH5 QL H5ULH5QLHHHHߝHӝHHfnfnLI_fbLLfH~uHLLH4 <=,1Hc.IGHL0HPAą}IGAHDpA-H%A9A91DH%A9H@H9LiHH LHHDHHgH@[ƅVH{LؒHHHHHԎ L1I_vHΗHLH`HHHƅhhHHӦHHH57HHA}LH5 LL諞H\LHIHHHH蠤LHLH5 LfHL HHLHH[LHH5LLH5 NL辙H`HHHH@HHHHIB H5MLLlHH LHH輣HL蝘HQHEH=L5HH5MLOH5LMLHHUHHHH HH5M赘HHH(H LH褙H蘙H萙L舙H5LLYHHH5hLHHHşHH5LLWH5aPLHH]HhH`LHLHnxHgH5OL袗H趘H誘H螘H蒘H膘HHCH5KL蔛H5OL5HHH蓡HhH`L=1HH5NLH H~IG(LuH8膎LLHH@HHOH`LH51NHHH5IHpL@HLΠH@LHH襕LLVHHH7K@L8LHLIT$I4$n IL$(IT$ LH HHHҕHH3IL$HIT$@H LHHLY H(H H诜H蓖LLI聖HyLqHH5LLHS`臙H5LL(LH荟HKHHS@LLLL H5MLHHRH(H HHܕLԕH3LI_+H胑HL舿ƅxHHLxHp薠HL跓LoHH5HL脘H5 L%HHH胞HhH`L-HL HH5HL'H52LLȓHH-HhH`LךH返L跔HHLH g k HUHuL蚚L肔LEI?軟Hx !H& 豉I?A薟tIM$fnfAnHǀXfbfրpHPIxAHMHDžHLLfAƅxADž I9t#H@H{HC(H9tHC(HpI9uADžHH H5JLHHʙ{ L1HH@H¡HLaLuHH@H5ILHH5 L躑H`HL@HHLLH角L蟒HH+H NH5YILXH{LHHHHH L1I_HHLHHHHƅHHLMgMHEL6H^fnfnLfbfH~腻HHHLƅHH腜HH5DLL舔H5DL)H`HH臚H@H(H HHHI HiRLLHԏHH LHH$HLH蹐H譐H衐L虐HH5SDL賓HLXHHH趙HhH`L`HHAL9LH4H@HH@}nH8HH 1HHٵ1LϵHLĵHEH`HH#nHHH蟕H菇H致fE1HL)HHHH HHH@0HH LHp(FH5BLHHHHHH~!HH;k H迎H賎L諎H蟎HCHHHHHDžHH; IGHHP蒌HHH H(yD;UDHۛK1H%A9rԃL1I_L-HHHwHL|HƅH‹HHHHHxuLI_HHL!HƅHHIˋLLh%LI_tḦHLѶHƅHIHLLp՗LI_$H|HL聶LƅHHދLL舗HxH5?L蒏HM@LH0HH`IH苕H5?LLL@HLcL H(H LLLM H5?LL賊HHIHH5?LL舊LHLLHHLLLM H5c?LL6LHL蔔LHHLLLM HLLH`HHFL@HHHLHLl H5BHH薉H HLHHL҈H芊H~HrHfHZHNHBH6H*HHL HHpHhHxډHHH_H5@LH HTH]藘H߅OЉH@HHH蚇HAdžH{HL1I_LHHHۄHLHƅH‹HHHHHxٓLI_(H耄HL腲HƅHHIɋLLh艓LI_H0HL5HƅHIHLLp9HHLz H`LH5/<HHH59HHH@HHL HHHLHME H;LLHlHHIHǐH5;LLALHL蟐LH(H LLLM H5;LLLHLMLHHLLLMs HLL衅H`HHL@HHHLHL% H5=HHOH HLH規HL苄HCH7H+HHHHHHHׅH˅LLAqHHLHZxHHLLH9I?诐Hx -HH8 HzI?AHHnfnfAntIfbE1E1E1fրpLXHPI$xA$HM$LHLLfDžAƄ$xE$ I9t#H@H{HC(H9tHC(HpΈI9u1A$HL輎HHLL1MgL@HHH腐LהfnfnLfbfH~ʭHLHL LI_荑E1AH:HySHAzH5:LHHhH@H5m:HH蚆LuIWpHH5^:LlH5i>L L`HLkHKHLH@LHH L%4HL辁HH HHLHK(HS HLLD H59HHnHHHHŋHHHHhHLH@H4H(HLH5Q9L 1 HUHuHHLHLLHS@H55L蜀LHLHKhHS`LLLL- H58L^HH迊H(H HeHILAH9L1HH57]HwH5k8LHHeH@HyLuIWpHH57LH5;LL`HLLىHKHLH@HH HH5Y26H HHH草LHK(HS HLL HH53~HHHHLH{HH`HHHLzH{|Ls|HH5W0LHL2{HHH萅HhH`L:H"|L|L1HH@LHEhZH8{HH`QZHHց0HsH辠f1HH)R~HHHH HH@0HH@HHHH LHp(tH5/LzHHvH HHHH HH_W HzHzLzHzHCHHH HHDž HH;IGHHPxHHH HLH{LpHHH@HHHl L1I_rHuHLϣƅ8H‹8HH HHքHH5 L|H5 ;LxH`HHH؂HLwHuyLmyHH5Q-L|H5-L(xHH荂HhH`L7HyLyH yHxHHH H5 H= =mH{L]oHHH@HHHVk LMgHL1H fnfnLfbfH~0ƅHH‹HLH HH;HH5X,LHB{H5n9LvH`HLH:HLvL1I_L5HHHsHL脡HƅxH‹xHHHHH}LMg̽HăL赽H݅fnfnLfbfH~HƅHLHˋHHHHHLLi H`LH5*HHH5(HHuH@HHL HHHLHL H5 *HH0uHHHLH(H HLHL H5)HHtHHH<HL!tHuHuHuHuHuHuLuHHLH 6xL HUHuLx{L`uHTuHHuHHH{LkHHHHHg LMg`HXL1LHtfnfnLfbfH~蛞H`HHLƅhhHHHHH5(LLwH55L@sH`HHH}HL|rH4tL,tL1蒺H*H@LHEzRH8sHH`cRHHyBHkHИf1HH)dvHHHH2HH@0HH@HHZzHLHp(膂H5.'L'rHH|H HHHHHHqO HrHrLrHrHCHHHH1HHH9IGHHPpHHH H{LhHHH@HHHd L1I_莸HmHLƅXH‹XHH HH|HH5T LtH(3LHpHH`HHzHLoHqL~qHH5b%LtHL=pHHHzHhH`LEw HEdH+%(MXHLLHˁHLHW HHH H9{HHHH5&HHLs|HH5l&HHLsSHH5-&HHLs*HH5%HHLWsHH5%HHL.sĵH p MH5 H= 0dH VH5 H= dHH5$%HHLrgHH5$HHLr>HH5$HHLkrHH5j$HHLBrHH50$HHLrHH5#HHLqHH5#HHLqqHH5C#HHLqHHH5#HHLuqHH5"HHLLqHHLH&CxHu2HLH~HLHF HxHH5"HHLpHH5"ptHH5!HHLpHH5!{p8HH5!HHLRpHHHHH5H\HHHHHHLHHHHHHHHHHHHHHHHHEHHSH~HHHJHUHjHJHJHJHOHOHOHKH^H^H^HDHL=HL{HH(HjHLoHLPHyHHUHHUH(HpHHH]H]H]HHnHnHnHnHHgHlHlHnH&H&H&H&H&H&HHH=HH=HHHHFH1H1H-HHHHHLmHHH޿HL׿HHHHH HL鈿HHHHHHHWHWH魾HL馾HHHHHHHHzHLHL郾HHHHHHHHHHHHHHHHHHLyHH@HHH@HռH鼻HHHHuHHHHHH_H_H;H陾HTHLHLHL|HHHHHHHHHHHHHHHHHHHHʹUHAVAULuIATSHH VNdH%(HE1FHEHT L$H1HEII9tL[H01H HUuBHEHHEI9uHuHEdH+%(H LH[A\A]A^]fHv*LrHEHUI9tHkfDLYHEHU@fDHEdH+%(uH 1[A\A]A^]Wf.UHAVIAUIATISH>mLHx WI<$ApmfnfAn̓tfbfրpIHǀXHPI$xA$IM$IFHMfLfAFAƄ$xADŽ$ I9t#H@H{HC(H9tHC(HpeI9uADŽ$L[A\A]A^]4@UHAWAAVIAUMATMSHHHuS[HLaHuHLsxLHHshLHIT$HI4$D{pHT HLHHE LH0HPHaT @lHPf@H@ HP(HP0H@8HHHHHEǃHHEHǃHHH(H0HE(HǃHHHE0LǃHǃ Hǃ8ǃ@HPH[A\A]A^A_]IIؾI׾ff.UHAVIAUATSHHHL kLhHIIQj<wtM1ۉ[A\A]A^]@<wMHHPHÄtMtIHPH0L9uLZu뵺]H5 H=u$^ff.UHAWLAVIAUIATSHH_HLffDu C A9E|HC1HtHHS(I9sHCHuHބuqL9r1I9uPA}9{ }G@EI9ul0Hu~jHU}LAoEHH@ oXIF(HH[A\A]A^A_]I9^tH[HHP(HrL;f(rEuF A9EEp@L;t LfLELNf.UHAVAUATSHpdH%(HE1HtYHIIԃHtpHBAL$ HPH9PI$L,AT$AL$ HHH9JAD$HUdH+%(/Hp[A\A]A^]H9)LmLmHUHHHuLELe@~HHHHTLHDuqH}toEJHHH9t0HH9s'DH H0HHHrHHH9rMH}t#Ht@tUHH9rKMuݸL9FhIt$LxPAD$GDQH E H5 H= PHUHAVAUATSHpdH%(HE1HtYHIIԃHtpHBAL$ HPH9PI$L,AT$AL$ HHH9JAD$HUdH+%(/Hp[A\A]A^]H9'LmLmHUHHHuLELe@~HHHHTLHDu1H}toEJHHH9t0HH9s'DH H0HHHrHHH9rMH}t#Ht@tUHH9rKMuݸL9FfIt$LxNAD$EDOH E H5 H= NHUHAVAUATSHpdH%(HE1HtYHIIԃHtpHBAL$ HPH9PI$L,AT$AL$ HHH9JAD$HUdH+%(/Hp[A\A]A^]H9%LmLmHUHHHuLELe@~HHHHTLHDu1`H}toEJHHH9t0HH9s'DH H0HHHrHHH9rMH}t#Ht@tUHH9rKMuݸL9FdIt$LxLAD$CDMH E H5 H= LH3UHAVIAUIATISH>bL&Hx LI<$AbfnfAn̓tfbfրpIHǀXHPI$xA$IM$IFHMfLfAFAƄ$xADŽ$ I9t#H@H{HC(H9tHC(HpZI9uADŽ$L[A\A]A^]PUHAVIAUIATISH>aL,Hx KI<$A|afnfAn̓tfbfրpIHǀXHPI$xA$IM$IFHMfLfAFAƄ$xADŽ$ I9t#H@H{HC(H9tHC(HpYI9uADŽ$L[A\A]A^]@UHAWAVAUATSHHH=^qdH%(HE1H1H(HHDž(&HEH}1HDž0H0HHHE ]H0fo\Hd_kernelHEHUHUHH H0HEH=pHt HpHUHHE1H 1RH0H`1HDž0<LpHHL`HJ\H0HxLeH`HH5) HpH HHE H4H)H)<HH0H`HhH`LhLuLeHHEKt5HEHHEHHErSH?H+EL9fHHLEcH?H+EL9THHLcHEH`HUL9fHnEL9nHpH`hH^H}HUHEH}L9t HEHpVHHWH`HE11HhGOHHWIHHƅ0Fƅ0mHHdH8AH LNH`L9tHpHpVH}HH9t HEHpUHEdH+%(H[A\A]A^A_]fLHL0JHAx7HpHKE1LHSHTPH8f.HEHEHHEHbpf_probHEHobe_readHEHEEH)fHbpf_probHEH98Hobe_readH9H$HAH 1:NDH`hLeLeLfHtHtML[HUH`HhH}ffD1HlHDEHUH`HEdH+%(u'H={jGHEdH+%(u H=`OG*EHcHcH?UHAWAVAUATSHHXHdH%(HE1Cp<HH JQf1DžHHQ1ƅH1H0HHHDž Dž(HDžH)\HHHSHHGHMHHHHMHHH`HHH9fHs HS(HHHHEA HC@HuHUHHEHpHHH`A HHLHMH`LhHLLHMIMd$MtUMt$(HI|$ I9IFHt LeHuI)޸I9}HI9~DxMMd$MuIHL9tLMu(LIu M9IFHtHGu!LL)H9}CHH9~ȅy.HHLHHH7 IIE@ƅL@HLHHWH`HhLeL}HLL}HL? HLLYH}L9t HEHpxPHHt HPLFH@HPH9tHPHp=PH`HH9tHpHpPH}HH9t HEHpOHuEHH9EHHHPHshHDHHxhHGH9G t?HdMHHHWHEdH+%(uVHX[A\A]A^A_]@L"HHH8PHTHHDK@H齪H鹪H鵪H鵪H鵪HfUHAWAVAUATSHHH dH%(HEHF0HpHpHH(L ID$HHHH(k(H8FID$H(HI(L0MJA~+tE1DkAD HlIH0 A|$$H@( 8maps M LSHZIHt@7OHfHDžHH)fHHHHH1fH8HƅDžHDžDžHDžƅHDžƅHDž0HDž8HDžPHDžXHDžpHDžxHDžHDžH) )@)`)aH>L(HL: HLLH*FLGH LLH@HHHg; HHHLHLHH2; H0H(HHjHL9tHHpKHL9tHHpKH`H(H5HHTiH LHH@HHH: HHHHHHHHP: HH(HHiLI I?IWH9t IGHpJH(I9uHHHLIH9 HLHiLFH1HHkH1HHkLHIH@.)IE0HHHH1H8-OH H8IE0HHH`HH0*FIU(HL;H ^L;HH5HhH`Kt#6 f.AE.,IEIIHwLAT$$It$(Lr7 H1LH5HHDžƅ9IHh L(HPLHLLELLBL8DL1LLELL]BLDHDAąg H(1 H4Dž4XHHDHH(I0 D'@1H5 L9ƅHDžIHHIHIT$LHLDL(L1LLDLL`ALCH5$LuH5$LvtHH=HBH5LDH5L- H5L H5LZ H5L, H5LDH5LH5LrH5LDH5Lu H5L^f)H fnHLHLL`A$@PfnHA$@fbHHfօHZ5H(LK5HH85fnfnHDfnfnHHfbHfbfl)!JI$H(DL`HH@LHu\ @HH!HPHHD;h IHfDHC0HHHHL A|$%ID$ HHL(L LID$HzH8U ID$LH\H8H] +JHYQHH@7 G{OH@HH@H@8 H93HDHH9H1H f~ uH9upHL"M fA|$ uIT$(AD$$H`H5QH`HhvEt"H LH0PHHH5JDAf.HEdH+%( HD[A\A]A^A_]ID$H(HHH x%uLn8IHH x%#FHRH HJfzkeHJyyHHIE0HHHPL H I?H#I)HB Hx 3I?AHtIfnfAnHǀXfbfրpHPI$xA$H`M$HDžhHLpLfxAƄ$xADŽ$ I9t#H@H{HC(H9tHC(HpXAI9uADŽ$H`E1HGHmax_entrH9xriesHH LHfHLHL I>GHx H$1I>AGfnfAn܃tIfbfրpHǀXHPIxAH`MHDžhHLpLfxAƅxADž I9t#H@H{HC(H9tHC(Hp?I9uADžHEE1Ht;Hh;H\;H HuhHH9SHHfy uHDžQL0GHH H HqH9EAHcH LHduzE1ɀxE H`H H`< DH`HH H\DLH HHH@HxxdH9L9L9H9H9H9H H H{E1Lx9Lp9HI9t E;l$ EHDh H@8fHC(HCXHCHHHC0C8HCPCXCxHHǃƃǃChL9pE;l$ ;HL9`t"LU6HD;h H@HHLHI2HH@((A$HI$6I|$HHHIT$hHAD$xIT$p_6H(I|$(HK6H#_H7H HAHxxHLHH*H6 DžHCH@H H [HI86XIwL@MAE< ~ADH@HH LdmAu(HD肈 IHuH;CIL9 H1E;l$ @~HL9` tLX0D;h }I|$tIHHx(rL` E;l$ c1L dM&H " H5< H=_ R*HzleafHHIE0H'1+%r{JMH mH5p< H= F )=HHH0:AIH@`IHHH@H HH@H9uIIH\II IHPIL@H nv MH5_ H=e )L::1AAIAEHHH9t@L(MMIH HH@H{F4I9uMH ML(1AN*zLLL9HhH+`L2HOÀHHH H8HH@E1ff%f=AAHH8H腾H@ff%f= Dh Q: 5H5L_qH5LH'1ɀHHL>H H8=Hx 'Ht 'AH H8=fnfAn僸tIfbE11E1fրpLXHPIxMH`LhLpfDžxA AAƇxHLI97H@H{HC(H9tHC(Hp6A,H5L t21ҀHS7H5KLŸ(H5FL许H5?L藸H54L耸H5)LipH5LRBH5L;H5L$H5L [HhH?:7*LLCL(LPLLML *H HHH@HxxKAńunH6HH H H HH@HXxL(Hp LqrLLHLEH HH@HXxL(Hp L(rLLHH l AH5uS H=FZ 1LL::EIAEMAIIHIL9OI@IIW(H9tIG(Hp-׀L HLHID$Hxxu ID$HHHxxtIHLtH(Hp HqHH HzƅH64HH H  jL1MLAHHI]H^HcHʇHhH駈H鮈HˆH(HΈH HHZH邉H2H醉H:H؈HH>HHgHiH HHڈHH҆H麆H9HgH鯉HHH順HHH钆H3H ff.UHAWIAVIAUMATILSHHHH&HWGHHGpH{PLLJHLLLApHE1LLLpH[A\A]A^A_]IyIȈI@UHAWAVIAUATSHXINHdH%(HE1IF@fHnH~IfHEH)E0Iv`HILH8HHH]HuH9L#HH]8G0foMHLeHEfLHHEHE)M)Et/I]LeH]I9tH;HtHPHI9uH]HtHuHH)'LeH]I9t@H;HtHPHI9uH]HtHuHH)'HEdH+%(HHXL[A\A]A^A_]@LuIHM)LHH9L9tlHH9HM'E1E11LH HHHHH9uL)I\MtL)LLE&LELeH]LEHrCHH9HGHHEH}.LEHuN$8IIL9rHXHHEHEdH+%(u5H= HH9HGHHEۭ覭qH7H8HLILHUHAVAUATISHH FFu!f<@uF<tHvXHe[A\A]A^]AHe[A\A]A^]H#1t H(HLtYCtH0PHL,1Ct H0HL9tH @HI9tH3L輴u1He[A\A]A^]Hv8HS@tH#1t HHLOtHIHH9uHI9H3L8u1H"1t H*HLWH?IHH9uHI9H3Lгu1H="1t HHL脞CRHj/PHL,1Ct HP/HL9$HHI9 H3L@u1H!1t H/HL\HDIHH9u@HI9H3Lزu1HE!1t HHL茝HIHH9uL@HI9;H3Lpu1He[A\A]A^]dHe[A\A]A^]sHe[A\A]A^]2uH 1t HHLLH4IHH9u@HI9H3Lȱu1He[A\A]A^]He[A\A]A^]K薯HLS'H1t HuHL:HIHH9uf.HI9H3Lu1_DKHL&8H`1t HHL觛HIHH9ugHI9SH3L舰u1DHe[A\A]A^]He[A\A]A^]He[A\A]A^]%@HL%uH1t HHLLH4IHH9u@HI9H3Lȯu1DHe[A\A]A^]ǖHe[A\A]A^]VHe[A\A]A^]EHe[A\A]A^]4He[A\A]A^]郖HIHH9ufDHI9H3L u1gHvH\TH|1t HHLÙ+HIHH9uHI9sH3L訮u1HF@HIH0HPC2HJ*PHL,1Ct H0*HL9HHI9H3L u1gHv8TH|1t HHLØ+HIHH9uHI9sH3L設u1HF`HtH0HPHHP@LHDspLkhIMM9t"IuHtLIM9uHfIHH9ufDHI9H3Lu1?H% LH*"H IHH9uzf.HI9cH3L蘬u1Hv(dHIHH9u$@HI9H3LHu1Hv(|HdIHH9u@HI9H3Lu1?Hv(Ė,HIHH9u@HI9sH3L訫u1Hv(tH IHH9u4@HI9#H3LXu1He[A\A]A^]H1t H6HLcHK IHH9uHI9H3Lu1'Hv0謕H IHH9ul@HI9[H3L萪u1Hv0\H IHH9u@HI9 H3L@u1He[A\A]A^]dHv0cHK IHH9uHI9H3Lu1'Hv0謔H IHH9ul@HI9[H3L萩u1He[A\A]A^]THe[A\A]A^]He[A\A]A^]BHe[A\A]A^]He[A\A]A^]pHe[A\A]A^]H1t HHLޓFCH$PHL,1Ct H$HI9~HfHI9cH3L蘨u1H1t HHLLH IHH9u @HI9H3L0u1wH1t HHLLH4 IHH9u@HI9H3Lȧu1Hv(HHs0LH 1t HHLSH IHH9uHI9H3L8u1DHv(ogH1t HHL֑>H& IHH9ufDHI9H3L踦u1He[A\A]A^]He[A\A]A^]{He[A\A]A^]H1t HtHL9HIHH9ufHI9H3Lu1_H1t HHL̐4CH!PHL,1Ct H!HL9lHHI9SH3L舥u1Hv(H1t Hf HL+H{IHH9uHI9H3Lu1WHe[A\A]A^]He[A\A]A^]SHe[A\A]A^]bHe[A\A]A^]qHvHHSP4H$1t H HLkHIHH9u+HI9H3LPu1He[A\A]A^]čH pLAEAIIMDI M9LLu1'He[A\A]A^]$_Hs@L苎HIHH9uKHI9;H3Lpu1Hs@L,H|IHH9u@HI9H3Lu1WHe[A\A]A^]He[A\A]A^]SHF@H0HP3HC1t H HL芍HIHH9uJf.HI93H3Lhu1H1t HW HLHlIHH9u@HI9H3Lu1GHvHHSPh0HIHH9uHI9sH3L訡u1H1t H HL\HIHH9u@HI9 H3L@u1Ln8AEMtIM9uODIM9tAIuLu1JHvX?7Hs`HtL&Hs0HeL[A\A]A^]H.1t HHLuCCH[PHL,1Ct HAHI9H HI9H3L8u1H1t H'HLTH<IHH9u@HI9H3LПu1H=1t HHL脊HIHH9uD@HI93H3Lhu1Hv@HSHкSHK(H LHCPHMUfoEHEHD$$H \H 1t HHLˉ3HIHH9uHI9{H3L谞u1DH 1t HHL_HIHH9uHI9 H3L@u1Hv8tHs0Lh`H 1t H HLψ7HIHH9uHI9{H3L谝u1DHv0Hs8LsH 1t HuHL:HIHH9uf.HI9H3Lu1_DHv8GHs@L;3H[ 1t HHL袇 HIHH9ubfHI9SH3L舜u1DHv8_Hs0LH 1t HMHLzHbIHH9ufHI9H3Lu1?DHv8'Hs0LH; 1t HHL肆HIHH9uBfHI93H3Lhu1DHe[A\A]A^]鷊Hv81HLlHs@LXH@IHH9uHI9H3Lؚu1ÐfDUHAWAVAUATISHdH%(HEHHpPH~HIH(MLELHI$H(Ht<CwI|$H褦HCHHHwLI\$.IHuD@IEIIHv/AEwI|$LBtLHSLI\$PM$IHuQLHe"IFIIHv4AFwI|$LץtLLfDHEdH+%(H[A\A]A^A_]HLkx HPH0IDH8L9u41fDRfffIL98HMu;  HCxL;0IF0HHHHHHAHHHHHHHz hHHHHHHx u@ff%f=CHH H H0H(IDžPLXL98HI$LXI$HPDžXHDž`H LhLpHDžxHH LQ HH@IHRHuLhHfHHRHuHpI$H`HxM9tYH@H0ID$ H8AoE H0H8)@L(IL9uH`H MlHEHEH}HHH ^ HEH}HH u&Hstruct bH3Hpf_raw_tH3OH fHHMH9HHGHMHH H}H}HH9t HEHp:H},@Hstruct pH3Ht_regs *H3OH uM$HEH9HEHpfHracepoinH3WHt_args *H3OH +Hstruct tH3HracepoinH3WH HEHpNnt__A{H}bfHAH}HEoHHtvx*H 4 H5%5 H=N5 9H D H5 H=* H C o H5O H=0D ,H%fHf<@uF<tHvXHe[A\A]A^]He[A\A]A^]Hf1t HHL]t9HIHH9u@HI9tH3L<$u1He[A\A]A^]Hv8HS@tH1t HjHLtHIHH9u3HI9#H3L#u1H1t H HLWHIHH9uHI9H3LP#u1H1t HHLHIHH9ud@HI9SH3L"u1H1t H7HLC H PHL,1Ct H HI9HHI9H3LX"u1H%1t HHLHIHH9ul@HI9[H3L!u1He[A\A]A^]He[A\A]A^]He[A\A]A^]bRuH}1t HHLtLHIHH9u@HI9H3LH!u1He[A\A]A^]He[A\A]A^]6H1t HhHLH}IHH9u-DHI9H3L u1whHp1t HHLg?HIHH9uHI9H3L8 u1He[A\A]A^]lHe[A\A]A^];He[A\A]A^]H1t HGHLH\IHH9u @HI9H3Lu1WHe[A\A]A^]$He[A\A]A^]He[A\A]A^]He[A\A]A^]He[A\A]A^]THIHH9ukHI9[H3Lu1HvH1jH1t H,HLyHAIHH9uHI9H3Lxu1?HF@HH0HP CHzPHL,1Ct H`HL9tHHI9[H3Lu1Hv8H1t H}HLHIHH9uBfHI93H3L u1DHv8>wHs0LcHk1t HHLb:HIHH9ufHI9H3L8 u1DHe[A\A]A^]H1t HqHLHIHH9u6fDHI9#H3L u1H1t HHL|TCHPHL,1Ct HHI9HHI9H3L( u1H1t HwHLCJH"PHL,1Ct HHI9HHI9H3L u1_Hv@HSH0HSHK(H LHCPHMUfoEHEHD$$%H  H1t HHL HIHH9u[HI9KH3L u1DH1t H*HLwH?IHH9uHI9H3Lp u17Hv81HLR= Hs@LHIHH9unfDHI9[H3L u1Ðff.HUHAVAUATISHH@FFu!f<@uF<tHvXHe[A\A]A^]He[A\A]A^]H&1t HHLCt9HIHH9u@HI9tH3LWu1He[A\A]A^]Hv8HS@ttH1t H*HL?CtHCIHH9u3HI9#H3LXWu1HH1t HHLBWHIHH9uHI9H3LVu1H1t H_HLtBHtIHH9ud@HI9SH3LVu1Hu1t HHL BH IHH9u@HI9H3L Vu1GH 1t HHLAHIHH9u@HI9H3LUu1He[A\A]A^]He[A\A]A^]He[A\A]A^]EHe1t HHL@tHIHH9u@HI9H3LUu17He[A\A]A^]He[A\A]A^]4HLH1t H=HLR@HRIHH9uBfHI93H3LhTu1Dc{HLphH01t HHL??HIHH9uHI9H3LSu1DHe[A\A]A^]G2He[A\A]A^]1He[A\A]A^]/蠓HL譳Hm1t HHL?|HIHH9u@HI9H3LSu1?DHe[A\A]A^]-He[A\A]A^]F.He[A\A]A^]5.He[A\A]A^]$.He[A\A]A^]c-^HLHKIHH9u;HI9+H3L`Ru1DHvH1EmH51t HHL=DHIHH9u@HI9H3LQu1HF@HH0HP=CjHPHL,1Ct HHL9u1DH1t HHL/*C-HPHL,1Ct HHI9Hf.HI9H3L>u1?Hv8mH1'HLwHs@L)H膾IHH9uvfDHI9cH3L=u1ÐfDUHAWAVAUATSHdH%(HE1>IHIHHcH>HEdH+%(=HvHeL[A\A]A^A_]jHEdH+%(>HeL[A\A]A^A_]6HEdH+%(<HeL[A\A]A^A_]&HEdH+%(1=HeL[A\A]A^A_]k4HEdH+%(<HeL[A\A]A^A_]r&HvHm=<{2£Hv L6i@/1HEdH+%(<HeL[A\A]A^A_]&HEdH+%(<HeL[A\A]A^A_]%HEdH+%(y;HeL[A\A]A^A_]%HEdH+%(;HeL[A\A]A^A_]%HF02Hx2HEdH+%(C;HeL[A\A]A^A_]魘HEdH+%(t<HeL[A\A]A^A_]$%HEdH+%(P<HeL[A\A]A^A_]$HEdH+%(<HeL[A\A]A^A_]$HEdH+%(c:HeL[A\A]A^A_]$HEdH+%(:HeL[A\A]A^A_]$HEdH+%(a;HeL[A\A]A^A_]W$HEdH+%(L<HeL[A\A]A^A_].$HEdH+%(9HeL[A\A]A^A_]$HEdH+%(:HeL[A\A]A^A_]#HEdH+%(9HeL[A\A]A^A_],HFHtH0HPށXHH}L`HUfoeHEH]HpL})`HhH9D0tLH0LL%fHh/-H`HH`H9uI9uTHEdH+%(8HeL[A\A]A^A_]"HEdH+%(8HeL[A\A]A^A_]"HEdH+%(8HeL[A\A]A^A_]"HEdH+%({9HeL[A\A]A^A_]X"HF(L}HƒH84HLL`NHUfoUHEH]HpL})`HhH9.tL辺H0LLdHhh+H`HH`H9uI9u@HUdH+%(9He[A\A]A^A_]HEdH+%(!7HeL[A\A]A^A_]X!HEdH+%(\7HeL[A\A]A^A_]/!HEdH+%(8HeL[A\A]A^A_]!~uHF(HtH0HP+HH}L`HUfo]HEH]HpL})`HhH9g-tL`H0LLrc,LLCX HLLH%XHEdH+%(m-HsHHeLL[A\A]A^A_]WHEdH+%(3+HeL[A\A]A^A_]HEdH+%(*HeL[A\A]A^A_]HEdH+%(#,HeL[A\A]A^A_]20HEdH+%("+HeL[A\A]A^A_]YHEdH+%(,HeL[A\A]A^A_]0HEdH+%(*HeL[A\A]A^A_]HEdH+%(k+HeL[A\A]A^A_]/HEdH+%(n,HeL[A\A]A^A_]HEdH+%()HeL[A\A]A^A_]HEdH+%()HeL[A\A]A^A_]coF HF0H HP)@HD$$ʅH HCHa$LhM|M9uL$@IM9;$IuLwu1A@HEdH+%()HeL[A\A]A^A_]HEdH+%((HeL[A\A]A^A_]HEdH+%(`)HeL[A\A]A^A_]/HEdH+%()HeL[A\A]A^A_]-HFH0HPlpHH}L`1HUfouHEH]HpL})`HhH9 tL衪H0LLT}HhH`HH`H9uI9uH"LH1HH}L`|HUfoMHEH]HpL})`HhH9H tLH0LLSHhRH`HH`H9uI9u-HEdH+%(&HeL[A\A]A^A_]HEdH+%(.(HeL[A\A]A^A_]3,HvLgS1CLkH\I9uIL9IuH&>uHvLLSu1tHEdH+%(&HeL[A\A]A^A_]HEdH+%(&HeL[A\A]A^A_]HEdH+%(&HeL[A\A]A^A_]HEdH+%('HeL[A\A]A^A_]+HEdH+%((HeL[A\A]A^A_]CHvH&>&HEdH+%(&HeL[A\A]A^A_]QHEdH+%(S%HeL[A\A]A^A_]HEdH+%('HeL[A\A]A^A_]b*HEdH+%(&HeL[A\A]A^A_]HEdH+%((HeL[A\A]A^A_]*HEdH+%(&HeL[A\A]A^A_]7HEdH+%(b'HeL[A\A]A^A_])HEdH+%(%HeL[A\A]A^A_] HEdH+%('HeL[A\A]A^A_]l)HEdH+%(o&HeL[A\A]A^A_]!HEdH+%(&HeL[A\A]A^A_])HEdH+%(i%HeL[A\A]A^A_]A HEdH+%(&HeL[A\A]A^A_](HEdH+%(%HeL[A\A]A^A_] HEdH+%(B&HeL[A\A]A^A_]v(HEdH+%($HeL[A\A]A^A_] HEdH+%(&HeL[A\A]A^A_]$(HEdH+%(%HeL[A\A]A^A_]HEdH+%(:%HeL[A\A]A^A_]'HEdH+%(I$HeL[A\A]A^A_] HEdH+%(%HeL[A\A]A^A_]'H}臨Hu1LNsHu1LN1@HEdH+%($HeL[A\A]A^A_]'HEdH+%(#HvHe[A\A]A^A_]齁HEdH+%(%HeL[A\A]A^A_]&HEdH+%(#HeL[A\A]A^A_]HEdH+%($HeL[A\A]A^A_]r&HEdH+%( HeL[A\A]A^A_] HEdH+%(P$HeL[A\A]A^A_] &HEdH+%("HeL[A\A]A^A_]gHEdH+%(#HeL[A\A]A^A_]%HEdH+%(!HeL[A\A]A^A_]#HEdH+%(#HeL[A\A]A^A_] HEdH+%(/ HeL[A\A]A^A_] HEdH+%("HeL[A\A]A^A_]*%HEdH+%(!HeL[A\A]A^A_]Q HEdH+%("HeL[A\A]A^A_]$HEdH+%(!HeL[A\A]A^A_]HEdH+%(4"HeL[A\A]A^A_]$HEdH+%( HeL[A\A]A^A_]HEdH+%("HeL[A\A]A^A_]4$HEdH+%(A!HeL[A\A]A^A_] HEdH+%(h!HeL[A\A]A^A_]#HEdH+%(; HeL[A\A]A^A_] HEdH+%(!HeL[A\A]A^A_]#HFHH0HP fHH}L`ѤHUfoeHEH]HpL})`HhH9stLAH0LLSJHhH`HH`H9uI9uHEdH+%( HeL[A\A]A^A_]"HEdH+%(HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]HEdH+%(XHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] "HEdH+%(HeL[A\A]A^A_]4HEdH+%(HeL[A\A]A^A_]!HEdH+%(PHeL[A\A]A^A_]HEdH+%(+HeL[A\A]A^A_]i!HEdH+%(HeL[A\A]A^A_]HEdH+%(yHeL[A\A]A^A_]!HEdH+%(8HeL[A\A]A^A_]HEdH+%(_HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]s HEdH+%(DHeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]! HEdH+%(RHeL[A\A]A^A_]HHEdH+%(YHeL[A\A]A^A_]HvxHH}L`HUfo]HEH]HpL})`HhH9tL苜H0LLFgHh>H`HH`H9uI9uHEdH+%(THeL[A\A]A^A_]HEdH+%(cHeL[A\A]A^A_]"HEdH+%(HeL[A\A]A^A_]HEdH+%(MHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]WHEdH+%([HeL[A\A]A^A_]~HEdH+%(NHeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]HEdH+%(4HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]aHEdH+%(#HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%('HeL[A\A]A^A_]6HEdH+%(.HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]kHEdH+%(HeL[A\A]A^A_]HEdH+%(&HeL[A\A]A^A_]HFH0HP^HH}L`^HUfomHEH]HpL})`HhH98tLΘH0LLBHh H`HH`H9uI9uHEdH+%(HeL[A\A]A^A_]>HEdH+%(HeL[A\A]A^A_]eHEdH+%(IHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(/HeL[A\A]A^A_]HFH8HpLAHH}L`͛HUfomHEH]HpL})`HhH9` tL=H0LLOAHh~H`HH`H9uI9u~HEdH+%(HeL[A\A]A^A_]HEdH+%(yHeL[A\A]A^A_]HEdH+%(@HeL[A\A]A^A_][HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]YHEdH+%(HeL[A\A]A^A_]pHEdH+%(HeL[A\A]A^A_]HEdH+%()HeL[A\A]A^A_]HEdH+%(hHeL[A\A]A^A_]eHEdH+%(HeL[A\A]A^A_]|HEdH+%(HeL[A\A]A^A_]HEdH+%(!HeL[A\A]A^A_]:HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]oHEdH+%(HeL[A\A]A^A_]HEdH+%(HHeL[A\A]A^A_]HEdH+%(+HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(wHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]'HEdH+%(HeL[A\A]A^A_]NHEdH+%(HeL[A\A]A^A_]HEdH+%(oHeL[A\A]A^A_]HEdH+%(JHeL[A\A]A^A_]HF(H0HPX}HH}L`ȖHUfouHEH]HpL})`HhH9tL8H0LLJ<HhH`HH`H9uI9uyHEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]VHF0H0HPVPHH}L`蛕HUfo}HEH]HpL})`HhH9YtL H0LL;HhH`HH`H9uI9uLHEdH+%(HeL[A\A]A^A_]{HEdH+%(QHeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_])HEdH+%(_HeL[A\A]A^A_]HEdH+%(fHeL[A\A]A^A_]'HEdH+%(&HeL[A\A]A^A_]HH}L` HUfoUHEH]HpL})`HhH9tL{H0LL9WHhSH`HH`H9uI9u@HIL辦H`Hh7HAL薦H`HhmH<LqH`HhH7LLH`HhpH2L'H`Hh!HLH`HhMHLݥH`HhHhL踥H`HhHL蓥H`HhH~LnH`HhHLIH`HhHL$H`HhHLH`HhH LڤH`HhHL赤H`HhaHL萤H`HhLLpH`HhLPH`Hh'L0H`HhLH`Hh4LH`HhI9iHEdH+%(w HeL[A\A]A^A_]&6I9I9rI9dI9VHHHEdH+%(# HeLHL[A\A]A^A_](fL+H`HhL H`HhLH`HhLˉH`HhL諉H`HhgL苉H`HhLkH`HhLKH`HhJL+H`Hh!L H`HhVLH`Hh HLơH@HHI9I9NI9fqI9HcI9UI9GI99I9+I9I9!I99HH}L`趍HUfo}HEH]HpL})`HhH9tL&H0LL83Hhu!H`HH`H9uI9ukHvLuH`Hh뉾LXH`HhiI9iCtEAD$Cf)t o[0)HHLa5HCS(H LHH(HC (H fo H0HD$$$aH C H҃HD08@ Ll@AIM I M9LLu1 HH}L`͋HUfoeHEH]HpL})`HhH9tL=H0LLO1Hhu!H`HH`H9uI9uH`Hv]舞H`HhHHII1LH茎LLHƋC$EEL1#fD&H`Hh LH@HHLnHHHH}L`zHUfo]HEH]HpL})`HhH9tLH0LL/Hhu!H`HH`H9uI9u/HvL9H`Hh뉾LH`HhiI9iI9I9LkWOHwM^AE<{HhH`Lp1Ɉx1fDž`t/IEHHHHHH@HHHHHHjz%`uat tAD$L{AT$AL$MA<{"1LUH}1҈MfELmEF.IGH}HE%jH}HH@HEjH8}g}]HH}H`HEfomLmL}Hp)`H`HhI9tJu;H0LL-pHhu H`HvHHQL9uH؁聒\{WRMHC>94/*蕗` {vH 0 H5Ӑ H=ܳ 7~RMHC>94/*%  ~~3f~~~~~~~趚~~H - H5!. H=J. }}~~~~~~z~u~p~k~f~a~\~7M~xC~>~9~4~/~*~%~ ~~~~ ~~~}}}}}}}}}}}}}}}}}}}}}}}}}}{}v}q}l}g}b}]}X}S}N}I}D}?}:}5}0}+}&}!}}}} }}}||||||||||||||||||||||||||||w|r|m|h|c|^|Y|T|O|J|E|@|;|6|1|,|'|"||||| ||{{{{{{{{{{fHGLGHtAHVLfDu>9x |HH@HtH9P(sH@HuI9t HA(H9sLf.H9uA 9LMLfDILÐUHAWAVIAUATISHH^(LlHL9u7HI9t'H3LguE1HD[A\A]A^A_]LЇ1t LRHLAńtAFtL1PHLWtLb{1t LtHLAńhAG`L1艈PHL4AGt LpHI9u0HI9 H3Lh u I(@HQhfUHAWAVAUATSHdH%(HE1>P IH{eIHHcH>HEdH+%(AHvHeL[A\A]A^A_]FHEdH+%(@HeL[A\A]A^A_]3HEdH+%(>HeL[A\A]A^A_]D(HEdH+%(AHeL[A\A]A^A_]K1HEdH+%(n@HeL[A\A]A^A_]'HvH@<{'4THv Lv/fD1HUdH+%(c>He[A\A]A^A_]HEdH+%(i@HeL[A\A]A^A_]k'HEdH+%(c>HeL[A\A]A^A_]B'HEdH+%("?HeL[A\A]A^A_]'HEdH+%(I?HeL[A\A]A^A_]&HF04H4HEdH+%(K?HeL[A\A]A^A_]AHEdH+%(?HeL[A\A]A^A_]&HEdH+%(g?HeL[A\A]A^A_]_&HEdH+%(>HeL[A\A]A^A_]6&HEdH+%(<HeL[A\A]A^A_] &HEdH+%(3>HeL[A\A]A^A_]%HEdH+%(^=HeL[A\A]A^A_]%HEdH+%(=HeL[A\A]A^A_]%HEdH+%(|=HeL[A\A]A^A_]i%HEdH+%(=HeL[A\A]A^A_]@%DvE1Eu1fDIE91HC}LHHuJD HHH@HHhx.H@H2H<HF<L[{HFHtH0HPoHH}LpNpHUfomHEH]HUL})pHxH90tLkH0LLcHx-HpHHpH9uI9uZHEdH+%(3<HeL[A\A]A^A_]#HEdH+%(<HeL[A\A]A^A_]#HEdH+%(8HeL[A\A]A^A_]o#HEdH+%(:HeL[A\A]A^A_]F#HF(L}HƒH5HLLpnHUfo]HEH]HUL})pHxH9./tLojH0LLHx+HpHHpH9uI9uHEdH+%(}:HeL[A\A]A^A_]o"HEdH+%(:HeL[A\A]A^A_]F"HEdH+%(9HeL[A\A]A^A_]"~uHF(HtH0HPrmBHH}LpmHUfoeHEH]HUL})pHxH90.tL:iH0LLLHx*HpHHpH9uI9uF@2Hv H9<{g1wCS@@%@Lt HI HD HHHI9MDM>HM8A<{j)H S+ BH5v H=w ;dHEdH+%(8HeL[A\A]A^A_]r HEdH+%(8HeL[A\A]A^A_]I HvH2@2H2HEdH+%(4He[A\A]A^A_]bdHEdH+%(8HeL[A\A]A^A_]HEdH+%(7HeL[A\A]A^A_]HEdH+%(7HeL[A\A]A^A_]Hv(HS0~HH}Lp?kHUfoUHEH]HUL})pHxH9.tLfH0LLTHx)HpHHpH9uI9uKHFWHuH?UHE!HEdH+%(5HeL[A\A]A^A_]HEdH+%(4HeL[A\A]A^A_]jHvHH}Lp&jHUfo]HEH]HUL})pHxH9W-tLeH0LL;Hx*(HpHHpH9uI9u2HEdH+%(V4HeL[A\A]A^A_]HEdH+%(4HvHe1[A\A]A^A_]HEdH+%(3HeL[A\A]A^A_]DHFz/H5LdHXL9uHI9sH3L訆u7F tHFH0HPIhHH}LphHUfoUHEH]HUL})pHxH9)tLdH0LL#Hx%HpHHpH9uI9uF<uGHH}LpgHUfoMHEH]HUL})pHxH9'tLhcH0LLz Hx$HpHHpH9uI9ufDHEdH+%(.4HeL[A\A]A^A_]/HEdH+%(2HeL[A\A]A^A_]/HEdH+%(x1HeL[A\A]A^A_] HEdH+%(2HeL[A\A]A^A_]HEdH+%(l1HeL[A\A]A^A_]HEdH+%(2HeL[A\A]A^A_].HEdH+%(0HeL[A\A]A^A_]gHEdH+%(=2HeL[A\A]A^A_]>HEdH+%(0HeL[A\A]A^A_]HEdH+%(?1HeL[A\A]A^A_]L.HEdH+%(&0HeL[A\A]A^A_]HEdH+%(u2HeL[A\A]A^A_]HEdH+%(80HeL[A\A]A^A_]qHEdH+%(0HeL[A\A]A^A_]-HEdH+%(/HeL[A\A]A^A_]HEdH+%(0HeL[A\A]A^A_]HEdH+%(/HeL[A\A]A^A_] HEdH+%( 0HeL[A\A]A^A_]-HEdH+%(.HeL[A\A]A^A_]HEdH+%(/HvHeL[A\A]A^A_] F(AE1IM9'CA9/JDLH0HP{cuJHEdH+%(0HeL[A\A]A^A_]9,HEdH+%(?/HeL[A\A]A^A_],HEdH+%(&.HeL[A\A]A^A_]7HvHSvoC HC0H LHE)pHD$$ wH HH}LP cHUfouHEH]H`L})PHXH9n*tLz^H0LL HX%HPHHPH9uI9uHEdH+%(f-HeL[A\A]A^A_]wHEdH+%(-HeL[A\A]A^A_]*HFH0HPa~HH}LpbHUfo}HEH]HUL})pHxH9P%tLv]H0LL HxHpHHpH9uI9uHvHtL> Hs@H,>,LL H\LLHHEdH+%([*HsHHeLL[A\A]A^A_]HEdH+%(-HeL[A\A]A^A_]HEdH+%()HeL[A\A]A^A_]HEdH+%(V+HeL[A\A]A^A_](HEdH+%(Z*HeL[A\A]A^A_](HEdH+%(+HeL[A\A]A^A_]BHEdH+%(^*HeL[A\A]A^A_]HEdH+%(v*HeL[A\A]A^A_]P(HEdH+%(f)HeL[A\A]A^A_]HEdH+%(<+HeL[A\A]A^A_]HEdH+%((HeL[A\A]A^A_]uHEdH+%(,*HeL[A\A]A^A_]'HEdH+%(r(HeL[A\A]A^A_]'HEdH+%(\*HeL[A\A]A^A_]HEdH+%(D'HeL[A\A]A^A_]HEdH+%()HeL[A\A]A^A_]'HEdH+%(j'HeL[A\A]A^A_]HEdH+%()HeL[A\A]A^A_]VHEdH+%(&HeL[A\A]A^A_]-HEdH+%((HeL[A\A]A^A_]d&oF HF0H H`)PHD$$qH HCH#LpMuHvLLu"HEdH+%(#HeL[A\A]A^A_]"HEdH+%($HeL[A\A]A^A_]!HEdH+%(#HeL[A\A]A^A_]_ H}XHu1LHu1LmHEdH+%(F"HeL[A\A]A^A_] HEdH+%(#HeL[A\A]A^A_]3!HEdH+%( "HeL[A\A]A^A_] !HEdH+%($HvHe[A\A]A^A_]0vHEdH+%(#HeL[A\A]A^A_]W HEdH+%("HeL[A\A]A^A_] HvH > HEdH+%( HeL[A\A]A^A_]HEdH+%($HeL[A\A]A^A_]HEdH+%(#HeL[A\A]A^A_]mHEdH+%("HeL[A\A]A^A_]DHEdH+%(HeL[A\A]A^A_]K HEdH+%(! HeL[A\A]A^A_]HEdH+%(#HeL[A\A]A^A_] HEdH+%( HeL[A\A]A^A_]0HEdH+%(jHeL[A\A]A^A_] HEdH+%( HeL[A\A]A^A_]HEdH+%(X!HeL[A\A]A^A_]HEdH+%(#HeL[A\A]A^A_], HEdH+%("HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]:HEdH+%( HeL[A\A]A^A_] HEdH+%(1HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]_ HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]DHEdH+%(LHeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]iHEdH+%(HeL[A\A]A^A_]HFHH0HPSlHH}LpSHUfomHEH]HUL})pHxH9tLdOH0LLvHxHpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]HEdH+%(RHeL[A\A]A^A_];HEdH+%(MHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]HEdH+%(+HeL[A\A]A^A_]HEdH+%(>HeL[A\A]A^A_]EHEdH+%(HeL[A\A]A^A_]|HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]*HEdH+%(FHeL[A\A]A^A_]qHEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]OHEdH+%( HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(iHeL[A\A]A^A_]4HEdH+%(HeL[A\A]A^A_]HEdH+%(qHeL[A\A]A^A_]HvifHH}Lp>PHUfoeHEH]HUL})pHxH9tLKH0LLSHxgHpHHpH9uI9uJHEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(bHeL[A\A]A^A_]6HEdH+%(aHeL[A\A]A^A_]mHEdH+%(\HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]bHEdH+%(|HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]@HEdH+%(HeL[A\A]A^A_]wHEdH+%(HeL[A\A]A^A_].HEdH+%(AHeL[A\A]A^A_]%HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]sHEdH+%(HeL[A\A]A^A_]HEdH+%()HeL[A\A]A^A_]HEdH+%(8HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]/HFH0HP/LHH}LpLHUfouHEH]HUL})pHxH9tLGH0LL Hx HpHHpH9uI9uHEdH+%(_HeL[A\A]A^A_]WHEdH+%(|HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]L HEdH+%(WHeL[A\A]A^A_]HFHf8XHpLqHH}LpJHUfouHEH]HUL})pHxH9{ tLiFH0LL{ HxHpHHpH9uI9uHEdH+%(IHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]@HEdH+%(HeL[A\A]A^A_]wHEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(@HeL[A\A]A^A_]HEdH+%(qHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]JHEdH+%(HeL[A\A]A^A_]HEdH+%(.HeL[A\A]A^A_] HEdH+%(-HeL[A\A]A^A_]/HEdH+%((HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]THEdH+%(uHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]9HEdH+%(dHeL[A\A]A^A_] HEdH+%( HeL[A\A]A^A_]HEdH+%(zHeL[A\A]A^A_]^HEdH+%()HeL[A\A]A^A_]5HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]CHEdH+%(HeL[A\A]A^A_]HEdH+%(SHeL[A\A]A^A_]HEdH+%(fHeL[A\A]A^A_]hHEdH+%(HeL[A\A]A^A_]HF(H0HPEoHH}LpEHUfoMHEH]HUL})pHxH9 tLgAH0LLy HxHpHHpH9uI9uHEdH+%(QHeL[A\A]A^A_] HEdH+%( HeL[A\A]A^A_]>HEdH+%(#HeL[A\A]A^A_]u HF0H0HPuDEHH}LpDHUfo}HEH]HUL})pHxH9OtL=@H0LLOHxHpHHpH9uI9uHEdH+%( HeL[A\A]A^A_]=HEdH+%( HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]K HH}LpCHUfo]HEH]HUL})pHxH9/tL+?H0LL=HxHpHHpH9uI9u@HtH2HBLHByLLLcIHL9H.qHLVHpHxHbLUHpHxHZLUHpHxHcLUHpHxHH1L%H`LfUHpHxHLAUHpHxL!LA:HpHxgL!:HpHxL:HpHxwI9 HEdH+%( HeL[A\A]A^A_]7I9I9L9|I9H6H@8HHHH@ H8Hp HHEHU@LHwEHEHHC"HHHH@ƒHH@@%mDxAIf.IM9HELJ40\uHHHEdH+%(P HeLHL[A\A]A^A_]RLG8HpHxL'8HpHxL8HpHxUL7HpHxL7HpHxLL7HpHxL7HpHxWLg7HpHxsLG7HpHxL'7HpHxHLPHPHXL9!L94I9I9]I9PI9I9L9I9bI9WHH}Lp H5z H= +H _ mH5S> H=G +,,,,,,tE,,,DC,,,,,},x,s,n,i,&_,Z,U,P,K,F,A,<,7,2,-,(,#,,,,O ,,,+++++++++++UHAWAVIAUATISHH~(BI~(WL,|BL9t7H fHI9t'H3L,"uE1HD[A\A]A^A_]L881t L1HLAńtAFtL1gEPHLPHL4AGt L>>HI9u@HI9zH3L8uc f.UHAWAVIAUATISHHFpHtLPHXLlL9u9fHI9t'H3LukfUHAWIAVAUATISH`ot^IwHHv,HHt HHHv1L!t(L1t L`HLAńuE1HD[A\A]A^A_]fAGtL1&PHL4AGtL&HHI9tH3L|=ufDHu HN}$ff.UHAWIAVAUATISHPntFAGD҃ t L1t LhHLAńuE1HD[A\A]A^A_]ÐAGtL1%PHL4AGtL%HHI9tH3L<ufDIwH҃ t tHv1LsAGD҃ 14fLh 1LH8ff.UHAWIAVAUATISHmtTAGDt#IwH҃ t tHv1LTt(L1t LHLAńuE1HD[A\A]A^A_]AGtL1$PHL4AGtL$HHI9tH3L<;ufDUHAWIAVAUATISH0ltTAGDt#IwH҃ t tHv1Ltt(L1t L:HLAńuE1HD[A\A]A^A_]AGtL1#PHL4AGtL#HHI9tH3L\:ufDUHAVAUATISHHHHtHHtH0HPG&t{H tFHCxu.f)EHuHUHL[A\A]A^]%f.Ho)MfHLltHs@LAńufDE1HD[A\A]A^]DCtH"PHL41Ct H"HI9tH HI9tH3L49uff.UHAVAUATISHH2kt1ID$xf)EШt Ho)MHuHUH$uE1HD[A\A]A^]f.I$HttHtH0HPH$tIt$@HiAńtAD$tL!PHL41AD$t L!HI9pIDIM9YI4$H8uAff.UHAWIAVAUATIHSHLH0HP#uE1HD[A\A]A^A_]DMtxL1t L HLzAńtAGtL1 PHL4AGtL H@HI9tH3L<7uiff.UHAWIAVAUATISHF`tH6LH0HP#t(L1t L= HLAńuE1HD[A\A]A^A_]fDAGtL1PHL4AGtLHHI9tH3L\6ufDUHAWAVIAUATISHHF`HtLPHXLlL9u9fHI9t'H3LuE1HD[A\A]A^A_]Iv0LAńtAFtL1PHL8IH'IHHcH>HEdH+%(t?HvHeL[A\A]A^A_]FHEdH+%(AHeL[A\A]A^A_]HEdH+%(?HeL[A\A]A^A_]DHvHS觢211HEdH+%(*AHeL[A\A]A^A_]HEdH+%(>HeL[A\A]A^A_]οHvH<<{4Hv LRkHH}LpgHUfomHEH]HUL})pHxH97tLH0LLHx83HpHHpH9uI9u[HEdH+%(>HeL[A\A]A^A_]ھHEdH+%(-<HeL[A\A]A^A_]鱾HEdH+%(;HeL[A\A]A^A_]鈾HF0:4H)4HEdH+%(-=HeL[A\A]A^A_]i HEdH+%(X?HeL[A\A]A^A_] HEdH+%(4?HeL[A\A]A^A_]HEdH+%(>HeL[A\A]A^A_]νHEdH+%(;HeL[A\A]A^A_]饽HEdH+%(j:HeL[A\A]A^A_]|HEdH+%(w>HeL[A\A]A^A_]SHEdH+%(=HeL[A\A]A^A_]*HEdH+%(:HeL[A\A]A^A_]HEdH+%(9HeL[A\A]A^A_]ؼHEdH+%(;HeL[A\A]A^A_]HFHtH0HPzUcHH}Lp_HUfomHEH]HUL})pHxH91tLH0LLHx.HpHHpH9uI9uSHEdH+%(\;HeL[A\A]A^A_]һHEdH+%( =HeL[A\A]A^A_]驻HEdH+%(:HeL[A\A]A^A_]逻HEdH+%(h8HeL[A\A]A^A_]WHF(L}HƒHt5HLLp HUfo]HEH]HUL})pHxH9 0tLH0LL蒘Hx,HpHHpH9uI9ufDHUdH+%(7He[A\A]A^A_]HEdH+%(7HeL[A\A]A^A_]XHEdH+%(,7HeL[A\A]A^A_]/HEdH+%(/;HeL[A\A]A^A_]~uHF(HtH0HPRHH}LpHUfoeHEH]HUL})pHxH9.tL#H0LL5NHx+HpHHpH9uI9uF@-2Hv H+6<{t1ЖCS@@%@Ll HILHD H HI9DM}HM5A<{y*H : BH5 H= "HEdH+%(9HeL[A\A]A^A_]YHEdH+%(#5HeL[A\A]A^A_]0HvH2@2H2HEdH+%(8He[A\A]A^A_]yKHEdH+%(I8HeL[A\A]A^A_]HEdH+%("5HeL[A\A]A^A_]闷HEdH+%(u4HeL[A\A]A^A_]nHv(HS0љ*HH}Lp&HUfoeHEH]HUL})pHxH9/tLH0LL諔Hx*HpHHpH9uI9uf) Ft oV0) H H(LXHCS(H LHH(HC 8H0fo0H@HD$$7H  C1H҃HD081@ Ll@1AIM I M91LLҜu14HEdH+%(t5HeL[A\A]A^A_]鮵Hv nHH}LpjHUfoMHEH]HUL})pHxH9-tLH0LLHx(HpHHpH9uI9u^HEdH+%(+4HeL[A\A]A^A_]ݴHEdH+%(4HvHe1[A\A]A^A_]aHEdH+%(3HeL[A\A]A^A_]鈴HF{.H3LlHXL9uHI9H3L@u1F tHFH0HPLHH}LpHUfoUHEH]HUL})pHxH9<)tLWH0LLiHx&HpHHpH9uI9uHEdH+%(2HeL[A\A]A^A_]WHEdH+%(3HeL[A\A]A^A_]NHEdH+%(2HeL[A\A]A^A_]HEdH+%(V3HeL[A\A]A^A_]ܲHEdH+%(1HeL[A\A]A^A_]鳲HEdH+%(s/HeL[A\A]A^A_]HEdH+%(1HeL[A\A]A^A_]aHEdH+%(1HeL[A\A]A^A_]8HEdH+%(1HeL[A\A]A^A_]HEdH+%(1HeL[A\A]A^A_]HEdH+%(0HeL[A\A]A^A_]齱HEdH+%(.HeL[A\A]A^A_]锱HEdH+%(0HeL[A\A]A^A_]kHEdH+%(N1HeL[A\A]A^A_]bHEdH+%(H.HeL[A\A]A^A_]HEdH+%(0HeL[A\A]A^A_]HEdH+%(30HeL[A\A]A^A_]HEdH+%(0HeL[A\A]A^A_]HEdH+%(10HeL[A\A]A^A_]長HEdH+%(1HvHeL[A\A]A^A_]FI(AE1DIM9/(CA95-JDLH0HPHu1UHEdH+%(.HeL[A\A]A^A_]HEdH+%(/HeL[A\A]A^A_]HEdH+%(.HeL[A\A]A^A_]%HvHSؑ1oC HC0H LHE)pHD$$'H HH}LPHUfomHEH]H`L})PHXH9o*tLhH0LLzHX%HPHHPH9uI9uHEdH+%(-HeL[A\A]A^A_]gHEdH+%(.HeL[A\A]A^A_]^HEdH+%(-HeL[A\A]A^A_]HvHtL贋Hs@H->-LL苋H+LLHmHEdH+%(j.HsHHeLL[A\A]A^A_]5HEdH+%(w*HeL[A\A]A^A_]\HEdH+%(,HeL[A\A]A^A_]3HEdH+%(-HeL[A\A]A^A_]*HEdH+%(,HeL[A\A]A^A_]HEdH+%(Q,HeL[A\A]A^A_]鸬HEdH+%(+HeL[A\A]A^A_]鏬HEdH+%(Y,HeL[A\A]A^A_]HEdH+%(+HeL[A\A]A^A_]]HEdH+%(,HeL[A\A]A^A_]HEdH+%(4+HeL[A\A]A^A_]oF HF0H H`)PHD$$貎H HCH$LhM|M9u$@IM9$IuL'ru1@HEdH+%(j*HeL[A\A]A^A_]_HEdH+%(*HeL[A\A]A^A_]HEdH+%(h*HeL[A\A]A^A_]HEdH+%(*HeL[A\A]A^A_]HFH0HPC}HH}LpyHUfo}HEH]HUL})pHxH9="tLH0LLHxHpHHpH9uI9umHmLHHH}LpHUfouHEH]HUL})pHxH9)!tL:H0LLLeHxpHpHHpH9uI9uHEdH+%((HeL[A\A]A^A_]:HEdH+%(")HeL[A\A]A^A_]1HvL赆CLkH\I9u>fDIL9+IuH'>uHvLLbu1HEdH+%('HeL[A\A]A^A_]wHEdH+%('HeL[A\A]A^A_]NHEdH+%('HeL[A\A]A^A_]%HEdH+%('HeL[A\A]A^A_]HEdH+%('HeL[A\A]A^A_]ӧHvH'>'HEdH+%('HeL[A\A]A^A_]DHEdH+%(&HeL[A\A]A^A_]kHEdH+%(v'HeL[A\A]A^A_]bHEdH+%($HeL[A\A]A^A_]9HEdH+%(B'HeL[A\A]A^A_]HEdH+%($HeL[A\A]A^A_]HEdH+%('HeL[A\A]A^A_]鞦HEdH+%(U$HeL[A\A]A^A_]镻HEdH+%(&HeL[A\A]A^A_]LHEdH+%($HeL[A\A]A^A_]CHEdH+%(&He[A\A]A^A_]}yHEdH+%(#HeL[A\A]A^A_]HEdH+%(%HeL[A\A]A^A_]髥HEdH+%(#HeL[A\A]A^A_]颺HEdH+%(y"HeL[A\A]A^A_]YHEdH+%(8#HeL[A\A]A^A_]PHEdH+%(%HeL[A\A]A^A_]HEdH+%(#HeL[A\A]A^A_]HEdH+%(%HeL[A\A]A^A_]EHEdH+%(0"HeL[A\A]A^A_]鬹HEdH+%($HeL[A\A]A^A_]cHEdH+%(~"HeL[A\A]A^A_]ZH}Hu1LӁHu1L轁]1[fDHEdH+%(!HeL[A\A]A^A_]HEdH+%(#HvHe[A\A]A^A_]HEdH+%("HeL[A\A]A^A_]霸HEdH+%(Y$HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]JHEdH+%(/$HeL[A\A]A^A_]HEdH+%(D!HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]馷HEdH+%(#HeL[A\A]A^A_]}HEdH+%( HeL[A\A]A^A_]4HEdH+%("HeL[A\A]A^A_] HEdH+%(|HeL[A\A]A^A_]HEdH+%("HeL[A\A]A^A_]鹡HEdH+%(HeL[A\A]A^A_]鰶HEdH+%("HeL[A\A]A^A_]gHEdH+%((HeL[A\A]A^A_]^HEdH+%(!HeL[A\A]A^A_]HEdH+%(vHeL[A\A]A^A_] HEdH+%(!HeL[A\A]A^A_]SHEdH+%(\HeL[A\A]A^A_]麵HEdH+%( HeL[A\A]A^A_]qHEdH+%(HeL[A\A]A^A_]hHFHH0HP9HH}LpHUfoUHEH]HUL})pHxH9tLlH0LL~}HxHpHHpH9uI9uHEdH+%(~HeL[A\A]A^A_]錴HEdH+%(HeL[A\A]A^A_]CHEdH+%(HeL[A\A]A^A_] HH}LpHUfo}HEH]HUL})pHxH9tLMH0LL_|xHxHpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]mHEdH+%(HeL[A\A]A^A_]$HEdH+%(IHeL[A\A]A^A_]HEdH+%(pHeL[A\A]A^A_]ҝHEdH+%(HeL[A\A]A^A_]ɲHEdH+%(HeL[A\A]A^A_]逝HEdH+%(HeL[A\A]A^A_]wHEdH+%(>HeL[A\A]A^A_]龫HEdH+%(HeL[A\A]A^A_]%HEdH+%(HeL[A\A]A^A_]ܜHEdH+%()HeL[A\A]A^A_]ӱHEdH+%(dHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]遱HEdH+%(HeL[A\A]A^A_]8HEdH+%(HeL[A\A]A^A_]HvHH}LpHUfoMHEH]HUL})pHxH9;tL>H0LLPyiHxHpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]^HEdH+%(lHeL[A\A]A^A_]HEdH+%(!HeL[A\A]A^A_] HEdH+%( HeL[A\A]A^A_]ÚHEdH+%(HeL[A\A]A^A_]麯HEdH+%(HeL[A\A]A^A_]qHEdH+%(HeL[A\A]A^A_]hHEdH+%(HeL[A\A]A^A_]鯨HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]͙HEdH+%(HeL[A\A]A^A_]ĮHEdH+%(HeL[A\A]A^A_]{HEdH+%(_HeL[A\A]A^A_]rHEdH+%(HeL[A\A]A^A_])HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]gHEdH+%(WHeL[A\A]A^A_]έHEdH+%(HeL[A\A]A^A_]酘HEdH+%(HeL[A\A]A^A_]|HFH0HP,1HH}LpHUfo]HEH]HUL})pHxH9tLH0LLuHxs HpHHpH9uI9uHEdH+%(}HeL[A\A]A^A_]餬HEdH+%(HeL[A\A]A^A_][HEdH+%(HeL[A\A]A^A_]RHEdH+%(HeL[A\A]A^A_]陥HEdH+%(HeL[A\A]A^A_]HFH8HpLntHH}LpHUfouHEH]HUL})pHxH9 tLH0LLt!HxHpHHpH9uI9uwHEdH+%(gHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]ĪHEdH+%(6HeL[A\A]A^A_]{HEdH+%(HeL[A\A]A^A_]RHEdH+%(HeL[A\A]A^A_]iHEdH+%(HeL[A\A]A^A_] HEdH+%(8HeL[A\A]A^A_]הHEdH+%(HeL[A\A]A^A_]ΩHEdH+%(HeL[A\A]A^A_]HEdH+%(KHeL[A\A]A^A_]|HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]*HEdH+%(HeL[A\A]A^A_]qHEdH+%(HeL[A\A]A^A_]بHEdH+%(HeL[A\A]A^A_]鏓HEdH+%(HeL[A\A]A^A_]醨HEdH+%(0HeL[A\A]A^A_]=HEdH+%(+HeL[A\A]A^A_]4HEdH+%(HeL[A\A]A^A_]HEdH+%(yHeL[A\A]A^A_]’HEdH+%(HeL[A\A]A^A_]陒HEdH+%(#HeL[A\A]A^A_]鐧HEdH+%(HeL[A\A]A^A_]GHEdH+%(qHeL[A\A]A^A_]>HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HF(H0HP*HH}LpHUfoeHEH]HUL})pHxH9tLH0LLoHxtHpHHpH9uI9uuHEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_][HEdH+%(}HeL[A\A]A^A_]¥HF0H0HPr)[HH}LpWHUfomHEH]HUL})pHxH9tLʿH0LLmHxHpHHpH9uI9uKHEdH+%(EHeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]阤HEdH+%(HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]&HEdH+%( HeL[A\A]A^A_]os H L4$HC0HD$qH Ct {8: HH}LpHUfo]HEH]HUL})pHxH9tLH0LLl.HxHpHHpH9uI9u@HtH2HBLH&LLLkIHL9 1fHILHpHxHALHpHxH<LHpHxH7L|HpHxH2LWHpHxH7L2HpHx/HL HpHxHMLHpHx+HLHpHxHCLHpHx H^LyHpHx,H9LTHpHxHTL/HpHxHL HpHxgHLHpHxHLHpHxL蠹HpHxWL耹HpHxL`HpHx@L@HpHxL HpHxI9'HEdH+%( HeL[A\A]A^A_]VhI9I9I92I9H|LHpHxHHHEdH+%( HeLHL[A\A]A^A_]3L6HpHxLHpHxLHpHxLַHpHxtL趷HpHxL薷HpHxLvHpHxLVHpHxL6HpHx LHpHxpLHpHxHLHPHXL9L9I9L9I9L9I90I9vI9,hI9ZI9/LHH}LpHUfo}HEH]HUL})pHxH9tL4H0LLFe_Hxu!HpHHpH9uI9uHvLHpHx뉾LfHpHxiI9imF%HD H0HP1I@L HpHx?I9?HH}Lp臺HUfoeHEH]HUL})pHxH9tLH0LL d%Hxu!HpHHpH9uI9uHpHAHpHxLnHHCLHPHXHHI̵1LHLLHƋC$EExQ1f観HpHxHH}Lp0HUfoUHEH]HUL})pHxH9tL裴H0LLbHxu!HpHHpH9uI9u(HvLHpHx뉾LղHpHxiL9iI9I9HH}Hp5HUfo}HEL}HULm)pHxI9tH訳H0LLaHxu!HpHHpI9uI9u-HvHHpHx뉾HڱHpHxiI9iCDAL{HIM I M9LLFju1ޯٯԯϯʯ軯趯豯謯袯H ^ H5_ H=0_ cH t mH5 H=y D_ZUPKFA<72-(# ݮخӮήɮĮ迮躮赮谮諮覮衮蜮藮蒮荮舮胮~ytoje`[VQLGB=83.)$ ޭH ^ H5; H=D 蟬躭赭谭諭覭衭蜭藭蒭荭舭胭~ytoje`[VQLG肧=83.)$ !ެ٬ԬϬʬŬ軬趬\觬袬蝬蘬蓬莬艬脬zupkfa\WRMHC>94/*%  ߫ګիЫ˫ƫ輫跫貫譫訫裫螫虫蔫菫芫腫耫{qlff.UHAWAVIAUATISHHFpHtLPHXLlL9u9fHI9t'H3LuE1HD[A\A]A^A_]IFxHHvPHHBHHRHt#H2HBLHtIFxHHv HL;0Iv0L聖AńnAFfL1PHL H5e H= ɍUHAWAVIAUATSHHxHhHv(IV0dH%(HE1ju.E1HEdH+%(HxD[A\A]A^A_]fDAAFLH}LpoHEfoELuLe)pHxHEHpI9tytLH0HhH:[Hxu%HpHHpI9uI9u1@Hv*L*HpHxI9uI9uDLHpHxSA<u`AFHIT@2Dz ITPEIIII M9LHH&uq<u'AFHITP Dz IT`݌(UHAWE1AVAUIATSHH8HUDfdH%(HE1EuIE9HLHL4AuJD LHHE越tZI6H?HF(Llu1HUdH+%( H8[A\A]A^A_]fDHu1L8tIE9VfH蘊H@8HHHH@ H8HpaY HHEHU豔LHV\LuCu$MtAFatnCMPAFƒw3AF%t7DpAIIM9HELJ4 skuLŠL$IL9u<@IM9t/I7LLuHfDLHtHUHLl7RC tH}U[LHR0H躥HULH+7H蛧HULH 7Lu跉貛H ; H5O H= 賈fUHAWAVAUIATISHHUF@t#Hv H]<{pF%HD H0HPQAD$AT$@@%@I\ HL[qLeLHEHULHp HvHUdH+%(Hh[A\A]A^A_]fDpH?P4v艈f{@H,x3f?Hx2tH " BH5Y H= sDS?Hx1HBHH0HP}>Hx0h;>Hx/t7=Hx.HpHj:IIH%@&'[9IIHx%Hx iHJt)1HHHH)A|$%It$ HHhk;H|@*U+W{:LeLHUHE藔LLe苔LHP{LH赖9IIH@& 'I|$ |H Jt)1HHHH)AT$&7IIHx"u3Hx HJt)1HHHH)A|$"fD6HHC [6H@ 觃3IIHPBwIGHHH@HHp L9 AWAGIfHPL$&H KL%1HHHAGH)уKIwHH( AWЃ!EgfAA E1G@AGfA98 KDHH0HP IAGE9 vH ~/ BH52 H=[ ofDK9HHn 8H@* +Oc9HTx-0H q BH5 H=ց o5IIH x$u3Hx 蝌H* Jt)1HHHH)A|$$;螅fD5IIH x#u3Hx EH Jt)1HHHH)A|$#fmfD6LeLHEHUL@ Hp0@0IIHG xu3Hx 赋HB Jt)1HHHH)A|$S薃fDk'IIH @ C &H x `*IIHb xS Hp @f< HRAHt4HG(A|$ AD$Af<. I|$(I譊H: KL51HHHH)A|$ It$(HHNfDS#IIH xu3Hx EH Jt) 1HHHH)A|$膂fD"HEHUH @tw^H y BH5~ H=~ l!HEHUHQ @   kDC!HEHUH PЃ<v H  BH5~ H=B~ }kD HEHUH @<x<yH T BH5} H=} ,k@IIH@[H  BH5} H=} jf +IIHxHxiHJt)1HHHH)A|$vIt$HHo f.;*H| xXH  BH5| H=| 9jfK"IIHx u3Hx 轇HJJt)1HHHH)A|$ [}fD!Hx H q BH5=| H=f| i IIHx}Hx )HI 41HHH)A}OIu HH5; IIHxu3Hx ͆HZJt)1HHHH)A|$kffD!LeLHUHE迊L跊HHp kFfD+!Hex eHEHUHxH}9HHL $HxHRHp H8#;H}HEHU*kHHf.)LmLHEHU7LeHIt$_It$H_LHHp i (LmLHEHU臎LeHIt$F_It$H1_LQHHp i+)IIHxu`HBH:H0HPHBA|$u4I|$ 萄HJt)1HHHH)A|$.z$HH+3$HEHUH@wy"HHd##IHxHp(HtH]dA|$It$ H[hfD IH_xPHp H]A|$0It$(Hh3LeLHUHELHHp(sdLӍHHpgfk!IHxu%Hp HwH]tpA|$_?c LeLHUHELHlHH\_It$(@Hg19H}6HH It$Hf AT$H BH5v H= w Dd@H}6HHHEHHp[H}6HHHEHHp[nH}6HHRHEHHp[=u4I|$ NHJt)1HHHH)A|$bHpI|$(IuHCHtgHRL9 Hv([LA\A]A^]WHF(HtDH0HP[LA\A]A^]HeiHHs(LWHs0H0[A\A]A^]HHPHHHBHH莹HH:HЛH6HwHjH]HPHCH6H>})Ln8F0MtM9uIM9IuLVu1HQH$HWHHHHHH tHgHZH2MH@HX3H+&HH豬 HDHwH:xHwH`wHvHHvHX(@$L,L9u@HI9H3L(Uu1rHuuHX(@$L,L9uPHI9CH3LTu12Ln(F$I\I9uIL9IuLTu1HdtHsH rH=qHpHoH6oHinHmwHljHl]HkPH(kC{#Hv(H,HVH6HiHkiLn(F$I\I9uIL9IuLSu1HgHX(@$L,L9uHI9H3L@Su1HfHX(@$L,L9uhHI9SH3LRu1BHe0H(e#HdHc HHH'H*xH mH@fHbHbHaH\HzH2mHej`HSHKFH螦9Hq,HHGHp(HHiHH61Hɼ$HHO H"HUHXHKtHoH!oHnHGnHzmHlH@l{HiHX8Iŋ@0L4L9uOHI9?H3LOu1:Hd(HHH&HyH HHHEH@(HtHHHqHHrHJeH|XHsKHce'H6d1Ha$HH? HHeHHHHQHHwH HH0{HnHH@(HTH|GH:H-H5 HhHH.HHHF0HHv(tMLk8C0I\I9ufDIL9IuL7Mu1HoHwbHJUHHHp;H.H!H H<HHHHHH.HHTHHHxHkH^HFQHv(KPLk8C0I\I9u*f.IL9IuLKu1HtHH蚵H譳H@HӲHHv(HKLk8C0MtM9u f.IM9 IuLKu1QH(H2H%HH HHHIHHoHHH(HX(@$L,L9uHI9H3L(Ju1rH`HXHX(@$L,L9uCHI93H3LIu1"HտHhHHH!HHHzHMHHH膩HtH謨gH?ZHҧMH%@H3H苸&HH豷 HDH践HJHHHHv(eHLk@C8MtM9u IM9IuL'Hu1qHd_HRH芭EH8H谩HH HӓHp0H袒HuXHjHH.HHTHHZH譥H@{HӤnHfaHTH茣GH:HR-H% H踠HH~H豞HDHםH H蝜H0HÛH6HəH\wHjH肘]HPH託CH;6HΖ)HaHH臕HH譔H@HӓHfH虒H̑HHX(@$L,L9uf.HI9sH3LEu1bHPHȎCH[6H)H聍HTH臋H@(HH H蠊H3HƉH虈H,H_H蒆H%H踅\HKfHބYHqLH?H藃2H*%H轂H萁 H#LHp(ICI]8AE0L,L9ufDHI9H3LhCu1HeHHHyH~lH_H}RHj}EH|8H+H#|H{Hy{H {HzH2zHyHXyHxH~xHxHwH7wHvuH]vhHu[HuNHuAHt4Hu1LkhC`MtM9u%DIM9tIuL>u1LI\IL9IuLK>u1UHAWAVAUIATSHHHF0HHH0HPZt^AE$E1HUD9IE(JH Lx LdM9u6fDIM9t'I7HnuE1HD[A\A]A^A_]HEII9t)AE$DI}0_HHmVLrS1t LLHH AĄtL GIIH9uuf.IM9^IuHuFi?fUHSHHuHUHt4HFHHHHHvHtH}bvH]H}NHHlH]fDUHSHHHUdH%(HE1Ѓu+HHt^HUdH+%(ukH]@PwHU HtH2HBHUdH+%(u5HH]H@Ht HpH}]HuHBD];ff.UHAWAVLpAUATIH}SHHhdH%(HE1KHEfoELmL})pHxHEHpI9tLGH0HL(t4HxuHHpHHpI9uI9uƸHUdH+%(uiHh[A\A]A^A_]fHv2LB^HpHxI9hI9_L EHpHx,CfUHAWAVIAUATISHHxdH%(HEHFHH0HPIu-E1HEdH+%(HxD[A\A]A^A_]DLH}A!JHELuLpfoEHEHE)pHxHhHpI9tutLEH0LHdHxu%HpHHpI9uH9hu6Hv*L\HpHxI9uH9huLCHpHxWBf.UHAWAVIAUATISHHxdH%(HEHF H0HPHu1E1HEdH+%( HxD[A\A]A^A_]fLH}AHHELuLpfoEHEHE)pHxHhHpI9tutLDH0LH)`Hxu%HpHHpI9uH9hu2Hv*Lb[HpHxI9uH9huL3BHpHxW@f.UHAWAVAUATISHHxHhHvdH%(HE1Vet:AAD$IT$0LHpHxI9uI9uDL%HpHxSA<u`AFHIT@2Dz ITPEIIII M9LHuq<u'AFHITP Dz IT`#?UHAWE1AVAUIATSHH8HUDfdH%(HE1EuIE9H6LHL4AuJD LHHEv!tZI6H?HF(L&Ju1HUdH+%( H8[A\A]A^A_]fDHu1LtIE9VfHX!H@8HHHH@ H8Hp!HHEHUq+LHF\LuCu$MtAFatn4MPAFƒw3AF%t7DpAIIM9HELJ4 HuL!L$IL9u<@IM9t/I7L uHfDL HtHUHL,RC tH}LH:0HzHULHLu9 w r2H H5F H=` sfUfHAWAVIAUATSHHH8dH%(HE1)@Ft oN )@H@HHHu-E1HEdH+%(HeD[A\A]A^A_]DIFAVH HHH(IFxHpfopHEHD$$H AńtAFLH}LP&HEfo]LuLe)PHXH`HPI9tL"H0H8H* HXHPHHPI9uI9uHHIT 9Dz IT0E'IIILHI M9uHv2L8HPHXI9I9 ;DLHPHX3fUHAWAVIAUATISHHxdH%(HEHFH0HPu1E1HEdH+%(HxD[A\A]A^A_]fLH}A$HELuLpfoEHEHE)pHxHhHpI9tutL7 H0LHI`Hxu%HpHHpI9uH9hu2Hv2L7HpHxI9uH9h~DLKHpHxOfUHAWAVAUIATISHHhdH%(HEHFtHH0HP蝈LH}Lp#HUfoEHELmHUL})pHxI9tLH0LHHxuCHpHHpI9uI9u¸HUdH+%(ugHh[A\A]A^A_]@Hv*L"6HpHxI9iI9`멾LHpHx51gfDUHAWAVIAUATISHHxHv IV(dH%(HE1nAIF0HtH0HPH#KI~@HtH0HPH&LH}Lp!HEfoELuHEHE)pHxHhHpI9tLLH0LH^HxuJHpHHpI9uH9huHEdH+%(HxD[A\A]A^A_]DHv2Lr4HpHxI9bH9hU@L;HpHx&E1nfUHAWAVIAUATISHHxHv IV(dH%(HE1u2E1HEdH+%(HeD[A\A]A^A_]f.AoF0H H$IF@HD$AH AńtAFLH}Lp HEfoMLuHEHE)pHxHhHpI9t{tLuH0LH-Hxu+HpHHpI9uH9hufDHv2L2HpHxI9uH9hxDLHpHxIAFHAFTM~XHLHhfDLH[HhI I9ufUHAWIAVIAUATISHhdH%(HEHFHtFHPLtPI9t$@H3L AĄtHI9uDAHEdH+%(HeD[A\A]A^A_]DHv tsH{HHEdH+%(HeL[A\A]A^A_]N FLfLtM9u IM9 I4$L uE1NHvtH{ HHEdH+%(pHvtH{(HHEdH+%(8f.FLf@Lt@M9u( f.IM9 I4$LWu>FHPLtPI9yfH3L%AĄ`HI9uLFH Lt I97H3LAĄ HI9u FHLtI9H3LAĄHI9uFHÐLƐI9H3LeAĄHI9uFHHt@;#CLHHtHCLc@Lt@M9u IM9 I4$LuVHFHL4L9H3LAĄHI9uHv8HS@woSHH L$HCXHD$H MCLc`Lt`M9ui IM9U I4$L'uDvEQE1L})HuLAE9HLDHuLuFHLtI9H3LAĄHI9uFLf(Lt(M9ufDIM9mI4$LGu.FHt1ADŽCLtHI9t$DH3LAĄ@HI9uE/FHhLthI9@H3LAĄHI9uFHPLtPI9H3LAĄHI9uHvcADŽHCLt(H(I9RH3L5AĄpHI9u+FHtADŽCLtHI9H3LAĄHI9uFLfLtM9u"fDIM9 I4$LuvFLfLtM9uIM9I4$LWu>Hv8HS@q)oCHH L$HCXHD$H CLc`Lt`M9ufIM9I4$LuHvH{ HHEdH+%(:fHEdH+%(HvFH(Lt(I9H3LMAĄHI9utHv@HSHWoKPH L $HC`HD$H CLchLthM9uqIM9]I4$LuHvHEdH+%(Hs@%FLfLtM9ubIM9OI4$LWu>FHLtI9yfH3L%AĄ`HI9uLFHhLthI97H3LAĄ HI9u FHPLtPI9H3LAĄHI9uHvkHEdH+%(Hs0HvV>H{(% HHEdH+%(Vf.H~ HHEdH+%((@H~ HHEdH+%(u@FHLtI9H3LAĄHI9uFH(Lt(I9H3LmAĄHI9uCHH\L4L9{H3L-AĄhHI9uTCHHELeHDHEH1H9tL H0LHUuHEHHEH9uHuHvLB"HEHUL# HEHUxfDHrHsLF.Hs(L2CL4Nd3@MM9uDIM9mI4$LuHsLAĄCL<Nt;(MM9ugfIM9UI6LuCL4Nd3MM9ufIM9I4$LWu>CL4Nd3MM9u%@IM9tI4$LuCHHLdM4M9u)DIM9I4$LuCHHLdM4M9uIM9I4$Lu~CHHLd@M4M9uIM9I4$LWu>CHHH\(L4L9uwHI9iH3LuCHT@HL$L9u5DHI9#H3LuCHT@HL$L9uDHI9H3LuCH@Ld@M4M9uDIM9I4$LWu>HsLB*Hs(L.CL4Nd3@MM9u>fIM9%I4$LuHsLHs(LCL4Nd3`MM9ufIM9uI4$Lwu^HsLbJHs(LN6CL4Nd3hMM9ufIM9I4$LuHsLHs(LCL4Nd3`MM9uh@IM9tXI4$LuCHHH\@L$L9uDHI9H3L`uGCHHLd`M4M9u/f.IM9I4$LuCHHLd`M4M9u&IM9I4$LuCHHLd@M4M9u&IM9I4$Lu~CHHLdhM4M9u%@IM9tI4$L[uBCHkLdhM4M9uIM9I4$LuCHkLd`M4M9u@IM9I4$LuCHkLd`M4M9u@IM9I4$Lu~CHkLd@M4M9uhIM9tUI4$L[uBCHHLdhM4M9uiIM9tXI4$LuCHHH\@L$L9u5DHI9#H3Lu{0H}III4$LIM9uHpIII4$LIx`M9uHcIHH3LHL4L9uzCHHLd`M4M9u dIM9tXI4$L uCHHH\`L$L9u%DHI9H3LuCHk(H\`L$H3LHL9uff.UHAVAUATSH@HudH%(HUHHHw/f.HUdH+%(H@[A\A]A^]HHHx5w@HHH}HcH>@ HHHp Vf.wfDHHHp,gH83HHCHHpHl'L It$ HtHMIt$(HNHL It$ ^AńAD$Mt$0H@M$M9uIM9LH uL It$(Ht HtAIt$ H$_L It$ HDH4f1)H8HHQ gHHHp xNL It$He1*H}L(IEHEL;(tIuHemMe0EmAMM9uqIM9dI4$H'u1\HL It$ It$(HHL It$ wAńAD$Mt$0H@M$M9uUIM9HLHu*H@*Hp0HHL It$ _gIt$(HL It$(HtH3It$0HHL(IuAEMe0Mt0M9I4$HIM9HL It$(@H : H5; H=;  HL It$(cIt$HFHL It$ _1]LeH0LLHN9HL It$ AD$It$@HXHL(IuAĄI}(AEMu0H@M,M9ul@IM9t_LHuDHpLL4IL9u,@IM9tI4$Hu1PDHL HH U@HUHAVIAUATISF H^LlI9u0HI9tH3L u[A\A]A^]AF@t)AF %ItHt[LA\A]A^]fD[A\A]A^]f.f.UHAUIATSHHHF8uQf)EHuHUL虱teHC8HHtvHH@ HtyH0HLHP[A\A]]@E1HD;`s3H@DLAH4HC8tfH1[A\A]]o)Mju!HDHs0HL[A\A]]:H H5W H=6 f.HFxu fDUHAUE1ATISHHHD;hsH@DLAH4HCxuH[A\A]]ÐUHATISHHvt:ID$xf)Et Ho)MHuHUHH[A\]DH1[A\]Ðff.UHAVAUATISHvtRACJu[DA\A]A^]DHPIHH9uHI9tHCLH0HPTuE1[A\DA]A^]ÐUHAUIATISH(dH%(HE؋%\ %HFHofH~)EHt)HUHܮAE%SIuH}r HuHEdH+%(%H(L[A\A]]yf uCFH^H@L,I9L9u$@HI9tHLu1 @HUdH+%(H([A\A]]DHFHƒHHt^H0HPHEdH+%(ujH([A\A]]}HvHHuOHEdH+%(u;H(H[A\A]]nfDHvHEdH+%(uH([A\A]]gH SH5$ H=8SH 4 H5 H=93 @UHAWAVAUATISHH8HF8u5f)EHuHULuQE1HeD[A\A]A^A_]@E1HD;hH@DLAH4HC8tfDSHK(H LHHMUfoUHEHD$$ݬH AƄmHVH%@tWLh MtNAEtFAIIMfDI M9t'LLuo)MHC8HHHHP Ht&H2HBLH{HC8tHHp(HtLYC<#HzHH‹CT %L@HHHp \Af.wfD{HHHp,g[H8HHC;HHp1H% L It$ Ht1HIt$(HHL It$ ZdAńAD$Mt$0H@M$M9uIM9LHHruL It$(Ht1H3t?It$ H"]XL It$ HFHc61)$H8L1HH HHHp vcL It$He1H}L(IEHEL;(tIuHckMe0EmAMM9uofDIM9\I4$Hu1TOHL It$ It$(HHL It$ _nAńAD$Mt$0H@M$M9uMIM98LHxpuH@Hp0:HL It$ OWIt$(1H8snL It$(Ht1HIt$0H7HL(IuAEMe0Mt0M9@pI4$HIM9L It$(@H % H5#& H=T& HL It$(lSIt$H6qlL It$ LZLeH0LLHn;6HL It$ AD$It$@HHL(IuAĄI}(AEMu0H@M,M9unfDIM9t_LHTnuDHp LL4IL9u,@IM9tI4$Hu1PDHLHH J@UHSHHuHUHt4HFHHHHHvHtH}vH]H}HH H]fDUHAWAVAUATSHhHpHxdH%(HE1HHH躳6HHpHcH>HP4Y5t"kSH]P4wHp HfHUdH+%(+Hh[A\A]A^A_]fDH x3"f苬Hx2tH % BH5H="]DH x1HBHH0HPH[Hux0h۪H^x/t[Hx.Hp1HzD+IIH\@&''蛦IIHx%Hx HJt)1HHHH)A|$%It$ HHx3 He@*U+HH2x(LeLLH^jf{IIHL@&D'I|$ H Jt)1HHHH)AT$&+IIH_x"u3Hx Hj Jt)1HHHH)A|$"fDsHHhH@ GKIIHPBwIGHHH HH) L9 AWAGIfHPL$Hs KL%1HHHAGH)уKIwHH8 AWЃ!EgfAA E1G@AGfA9 KDHH0HP? IAGE9N vH  BH5H=6fDIIH x$u3Hx Hj Jt)1HHHH)A|$$fD3IIH1 x#u3Hx eH Jt)1HHHH)A|$#cfD;HHeäH @* +XSH x-H a BH5H=蛣HU x) @ Hp0D+IIH# xu3Hx ]H Jt)1HHHH)A|$[>fDsIIH xu`HBHH0HPH A|$u4I|$ H Jt)1HHHH)A|$)f苓HHP^H x ;蓒H x H BH5H=FH x {IIHc x u3Hx HJt)1HHHH)A|$ fDcIIH xz Hx H>I 41HHH)A}L Iu HH 蛏IIH xu3Hx -HJt)1HHHH)A|$+.fDHx H ~ BH5H=諎IIH xu3Hx HJJt) 1HHHH)A|$fDHEHUH@tgZH } BH5H=*eD蛔IIHx{Hp @f<HRAHt4H/A|$<AD$Af<)I|$(IH:KL51HHHH)A|$It$(HHfDsIHxtHp(Ht1H*2A|$MIt$ H d@軒HHP[KCIH xHp Ht1HA|$It$(H@苑HxHRHp HHHxn1HH3fDCHEHUHS@VDKIIHxHxHVJt)1HHHH)A|$It$HHf.{HxH 1~ BH5H=>yf苉HEHUH[@<<H Ly BH5H=$@ۈIIH@H x BH5}H=ێIHxu"Hp 1H{A|$f蛍HHP]HEHUHsPЃ<v ^H x BH5H==D蓇HEHUHxH}菤HHdH}HEHUHH7fkHHP[CHHZ蛐HHY#HEHUH@tskIt$(@^Hf1IH}HHu-HE1HHpH}HHBH}蔤HH)HE1HHpoH}aHHHE1HHp<u4I|$ HJt)1HHHH)A|$iHpFHtiHRL9RcbH}謣HHAHE1HHpE1I|$ AI X^H j mH5H=eH } BH5H= FH 'v BH5H='Rxn EH 4 H5H H=y 7b8H H5Մ H=& $OH } BH5 H=5pvH x BH5H=BH I| BH5H=H R{ BH5H=H y BH5wH=H Ly mH5XH=H ~ BH59H=bH ~ mH5H=~H } BH5H=$_H y BH5H=@+H z BH5H=GH u BH5H=*f.HsUHAVAUATSf~ HZF H"IHcH>HyHHs(1L8Hs0[L1A\A]A^]Hv(HF(Ht#H0HP[LA\A]A^]H'@[A\A]A^]HHp0HH H H7H6H1H0H/H$HZH0sHcfHYHL{#Hv(H5HVH6 H9HHHBHHhHTLn(F$I\I9uIL9Iu1Lu1HHX(@$L,L9ut@HI9cH31L>u1PLn(F$I\I9u5DIL9#Iu1Lu1HHmHHHHHHHBHHh{HnHaHTHGH:HZ-H HHv(1hHs01LRHs8HHHH:HH`HHyHlH_H?RHEHe8H+H+H^HH$HWHHHHHH H Ln(F$I\I9uyIL9kIu1LEu1WH Hp(H 4H 'H7 H HHBHcHHHHHHHH{~HQqHdH4WHJHZ=H0H#HH Hv(1^Lk8C0I\I9uIL9Iu1Lu1HHUHH{~HqHHp(H0SHFHV9HHp(HxH HHaHHHHH@HHfHHHrHeHEXHKHk>H1H$H$H HH 3H`HH&HHLH$HR#H"Hx"{H "nH!aH THv(11Lk@C8MtM9uIM9yIu1Lu1H20H)H(Hk'H&H1&H%H#Hj#H=+H*sHc*fH)YH,LH\+?H/2Hb%HH HHHAHHgHH-HHHHY|HoHbHUHHHx;H .H!HH H7 H H] H H H H H< H HQHQH@0HMkHv(1HLk8C0I\I9uBf.IL9+Iu1Lu1HNHeNH8MHLH^LHKHKHIH*IHHHGHGvHFiHE\HEOHDBHBD5HC(HBHAHnAH@H4@Hv(1xH8>kH=^H=QH!=DH<7H;*Hz;H ;H:H3:Ln(F$I\I9uIL9Iu1Lu1H"9H7HX(@$L,L9uHI9{H31LVu1hHS7VH6IH6
HH1H$HH HHmHH3HFHPLtPI9t$@H31LAĄtHI9uAHEdH+%(HeD[A\A]A^A_]DHv1tqH{شHHEdH+%(HeL1[A\A]A^A_]zFLfLtM9u+ @IM9 I4$1LEuE1NHv1%tH{ HHEdH+%(p]DHv1tH{(HHEdH+%(8FLf@Lt@M9uX f.IM9A I4$1LuHI9u*CHHELeHDHEH1H9tLH01LѼHUu HEHHEH9uHuDHvLbHEHULCHEHUrfDHlbHs1LDHs(1L.CL4Nd3@MM9ufIM9I4$1LuHs1LλAĄCL<Nt;(MM9u}fDIM9gI61L膻u=CL4Nd3MM9uIM9I4$1LEuCL4Nd3MM9u %fIM9tI4$1L uCHHLdM4M9uAIM9.I4$1Lźu|CHHLdM4M9uIM9I4$1L}u4CHHLd@M4M9uIM9I4$1L5uCHHH\(L4L9u%HI9H31LuCHT@HL$L9uHI9H31L讹ueCHT@HL$L9uHI9H31Lnu%CH@Ld@M4M9uIM9I4$1L-uHs1LHs(1LCL4Nd3@MM9uJIM97I4$1L轸utHs1L覸^Hs(1L萸HCL4Nd3`MM9uIM9I4$1LMuHs1L6Hs(1L CL4Nd3hMM9uIM9I4$1LݷuHs1LƷ~Hs(1L谷hCL4Nd3`MM9ulfDIM9tZI4$1Lqu(CHHH\@L$L9u[HI9KH31L.uCHHLd`M4M9u?IM9'I4$1LuCHHLd`M4M9u6IM9I4$1L蝶uTCHHLd@M4M9u.IM9I4$1LUu CHHLdhM4M9u %fIM9tI4$1LuCHkLdhM4M9ufDIM9I4$1LյuCHkLd`M4M9ufIM9I4$1L蕵uLCHkLd`M4M9ufIM9I4$1LUu CHkLd@M4M9uhDIM9tWI4$1LuCHHLdhM4M9uifDIM9tZI4$1LٴuCHHH\@L$L9uHI9H31L薴uM{0H[III4$1LIaM9uHLIII4$1LI2M9uH=IHH31LHL9uCHHLd`M4M9unIM9tZI4$1L蹳upCHHH\`L$L9uHI9H31Lvu-CHk(H\`L$H31LHJL9uHHUHAVIAUATISF H^LlI9u0HI9tH3L HP4Y5t"苦sH]P4wHp HBfHUdH+%(+Hh[A\A]A^A_]fD3^H x3"f]Hx2tH E@ BH5H=B}D]H x1HBHH0HPH{\Hux0hӴ[H^x/t{[Hx.Hp1HBDKXIIH\@&''WIIHx%Hx )HJt)1HHHH)A|$%It$ HHx3+YHe@*U+;XHH2x(LeLLH$fWIIHL@&D'I|$ M BH5H=VfD TIIH x$u3Hx ݪHj Jt)1HHHH)A|$$ޣfDSSIIH1 x#u3Hx 腪H Jt)1HHHH)A|$#c見fD[VHHUH @* +XsVH x-H : BH5H=!THU x) @ Hp0DKNIIH# xu3Hx }H Jt)1HHHH)A|$[^fDMIIH xu`HBHH0HPH A|$u4I|$ H Jt)1HHHH)A|$IfDHH3DH x [CH x H 1 BH5=H=f衊CH x ӇBIIHc x u3Hx HJt)1HHHH)A|$ fDAIIH xz Hx 豧H>I 41HHH)A}L Iu HH @IIH xu3Hx MHJt)1HHHH)A|$+NfD#AHx H 0 BH5͛H=1?IIH xu3Hx 车HJJt) 1HHHH)A|$fD?HEHUH@tgZH . BH5!H=J腈DEIIHx{Hp @f<HRAHt4H?/A|$<AD$Af<)I|$(I譥H:KL51HHHH)A|$It$(HHfDDIHxtHp(Ht1H92A|$MIt$ H8d@CHHKcCIH xHp Ht1H*9A|$It$(H7@BHxHRHp H=BHHxnЍ1HH8fDcHH#:HEHUHsPЃ<v ^H ) BH5H="]D8HEHUHxH}UHHd38H}HEHU"HH7fEHHcDHHHAHHCAHEHUH@ts苖It$(@^H4f1IH}VHHu-HE1HHp+5H}UHHBH}UHH)HE1HHp4H}UHHHE1HHp4u4I|$ 8HJt)1HHHH)A|$艁HpFHtiHRL9RcbH}THHAHE1HHp3E1I|$ AI ݂xx~H  mH5!H=腁H .. BH5H=+fH G' BH5H= Gr̀蘀æ莦)迥ڀe0H TH5hH=W|XH A H55 H=FA 蹀DoH . BH5,H=U萀~~1H ) BH5H='b=H i- BH5ՒH=9H r, BH5H=ߒH + BH5H=H l* mH5xH=H / BH5YH=H &/ mH5:H=ӛH . BH5H=DH * BH5H=%`KH $+ BH5ؑH=<gH ' BH5H=ݑ.||褒Jf.H3UHAVAUATSf~ HF HڒIHcH>Hv([L1A\A]A^]0HHHs(1L0t_Hs0HF(HtlH0HP[LA\A]A^]H_HX(@$L,L9u;DHI9t-H31L20u[1A\A]A^]HH@(Hu[A\A]A^]HHHH~HHJHHHHBHHNwHjHt]HPHCH-6H)HSHHyH HH2HHXHH~HHLn(F$I\I9uwfIL9aIu1Le.u.H4=H0Hz#H H蠼 HsHH9H̹H_HHŷHXH苶H辵HQzHdmHw`H SH蝳FH09Hò,HVHH輰Hv(1 -Lk8C0I\I9ufDIL9Iu1L,uH蜯H/H®HU~HqH+dHWH衬JH4=H0HZ#HH谪 HCH֩HiHH菨H"H赧HHHۦHnHzH蔥mH'`H躤SHMFH9Hs,HH虢H,H迡HH%HXHHH豝HDHלHj1LHp(H*SHs01Ls*=Hs8HʛCH]6H)H胚HH詙HHMH@H 3H&HH HHiH1LHp(I'I]8AE0L4L9uDHI9H31L'uwHHyHlH_HRHH!HT{HwHwHvvHiH\HOHBH5H(HH%HHHnHQHHgHHH HSHHyrH eHXH2KH>HH@(H$H~H HH7HjHH0HHHF0H6Hv(1nLk8C0I\I9utfDIL9aIu1Leu.H=Hw0HJ#HHp HHH HHh1H$HHA HHgHH荿H H賾HFHٽHlHH{HnHaHv(1h2Lk@C8MtM9uIf.IM92Iu1L%uHTHHHmH@Hp(HHtH赦HXHKLn(F$I\I9unIL9aIu1Leu.HHX(@$L,L9u-HI9H31LuH~HX(@$L,L9uHI9H31LuHe~I]HAE@L,L9u@HI9H31LuOLkHC@I\I9uUIL9AIu1LEuI]HAE@L4L9u}fHI9tkH31L uLkPCHI\I9uIL9Iu1LuRH5 H=lpI]XAEPL4L9u(fHI9tH31LzuCI]hAE`L4L9u%fDHI9tH31LBu IAL,HI9H31L ufUHAWAVAUATSH(dH%(HE1HtWFHbwIH~IHcH>FHPLtPI9t$@H31LAĄtHI9uAHEdH+%(HeD[A\A]A^A_]DHv1EtqH{gHHEdH+%(HeL1[A\A]A^A_] FLfLtM9u+ @IM9 I4$1LuE1NHv1tH{ XfHHEdH+%(pdDHv1}tH{(PfHHEdH+%(8FLf@Lt@M9uX f.IM9A I4$1LuHI9u*CHHELeHDHEH1H9tLN]H01La HUu HEHHEH9uHuDHvLtHEHUL[HEHUrfDHlbHs1L Hs(1L CL4Nd3@MM9ufIM9I4$1Lu uHs1L^ AĄCL<Nt;(MM9u}fDIM9gI61L u=CL4Nd3MM9uIM9I4$1L uCL4Nd3MM9u %fIM9tI4$1L uCHHLdM4M9uAIM9.I4$1LU u|CHHLdM4M9uIM9I4$1L u4CHHLd@M4M9uIM9I4$1LuCHHH\(L4L9u%HI9H31L~uCHT@HL$L9uHI9H31L>ueCHT@HL$L9uHI9H31Lu%CH@Ld@M4M9uIM9I4$1LuHs1LHs(1LCL4Nd3@MM9uJIM97I4$1LMutHs1L6^Hs(1L HCL4Nd3`MM9uIM9I4$1LuHs1LHs(1LCL4Nd3hMM9uIM9I4$1LmuHs1LV~Hs(1L@hCL4Nd3`MM9ulfDIM9tZI4$1Lu(CHHH\@L$L9u[HI9KH31LuCHHLd`M4M9u?IM9'I4$1LuuCHHLd`M4M9u6IM9I4$1L-uTCHHLd@M4M9u.IM9I4$1Lu CHHLdhM4M9u %fIM9tI4$1LuCHkLdhM4M9ufDIM9I4$1LeuCHkLd`M4M9ufIM9I4$1L%uLCHkLd`M4M9ufIM9I4$1Lu CHkLd@M4M9uhDIM9tWI4$1LuCHHLdhM4M9uifDIM9tZI4$1LiuCHHH\@L$L9uHI9H31L&uM{0HWIII4$1LIM9uHWIII4$1LIM9uH}WIHH31LHL9uCHHLd`M4M9unIM9tZI4$1LIupCHHH\`L$L9uHI9H31Lu-CHk(H\`L$H31LHL9uHUHATISHtHt:S(t Cat [A\]@H_[L1A\H]effUHAVAUATSH@HudH%(HUHHHw/f.HUdH+%(H@[A\A]A^]HHHx5w@HjHH}HcH>@8HHHp |f.8wfD8HHHp,gk8H8MHHCK8HHp1HJ%08L It$ Ht1H)It$(H7HL It$ *AńAD$Mt$0H@M$M9uIM9LHu7L It$(Ht1Ht?It$ H"]h7L It$ HFH61)47H8\T1HH/ 7HHHp F6L It$He16H}L(IEHE6L;(tIuHckMe0EmAMM9uofDIM9\I4$Hu1T_6HL It$ It$(H/6HL It$ AńAD$Mt$0H@M$M9uMIM98LH(u5H@Hp0:5HL It$ OWIt$(1Hs~5L It$(Ht1HwIt$0HG5HL(IuAEMe0Mt0M9@pI4$HIM94L It$(@H H53H=dJ4HL It$(SIt$H6q|4L It$ Lj4LeH0LSLH;F4HL It$ AD$It$@H 4HL(IuAĄI}(AEMu0H@M,M9unfDIM9t_LHuDHp LJL4IL9u,@IM9tI4$Hu1PDHLIHH ZJD@UHSHHuHUHt4HFHHHHHvHtH}fvH]H}RHHH]fDUHSHHHUdH%(HE1Ѓu+HHt^HUdH+%(ukH]@PwHU HtH2HBHUdH+%(u5HH]H\@Ht HpH}EaHuHI?ff.HUHAVIAUATISF H^LlI9u0HI9tH3Lou[A\A]A^]AF@t)AF %ItHt[L1A\A]A^]\@[A\A]A^]f.f.UHAUIATSHHHF8uQf)EHuHULteHC8HHtvHH@ HtyH0HLHP[A\A]]E1HD;`s3H@DLAH4HC8tfH1[A\A]]o)Mju!HDHs0HL[A\A]]H K H5lH=@Ff.HFxu fDUHAUE1ATISHHHD;hsH@DLAH4HCxuH[A\A]]ÐUHATISHHvt:ID$xf)Et Ho)MHuHUHH[A\]DH1[A\]Ðff.UHAVAUATISHvtRACJu[DA\A]A^]DHHIHH9uHI9tHCLH0HPuE1[A\DA]A^]ÐUHAUIATISH(dH%(HE؋%\ %HFHofH~)EHt)HUHAE%SIuH}ZHuHEdH+%(%H(L[A\A]]f uCFH^H@L,I9L9u$@HI9tHLu1 @HUdH+%(H([A\A]]DHFHƒHHt^H0HPHEdH+%(ujH([A\A]]aHvHHuOHEdH+%(u;H(H1[A\A]]@HvHEdH+%(uH([A\A]]vC C:H X SH5nH=PBBH H5iH=tB@UHAWAVAUATISHH8HF8u5f)EHuHULuQE1HeD[A\A]A^A_]@E1HD;hH@DLAH4HC8tfDSHK(H LHHMUfoUHEHD$$H AƄmHPH5@tWLh MtNAEtFAIIMfDI M9t'LLuo)MHC8HH-HHP Ht&H2HBLH>HC8tHHp(Ht1LC<#HTHH‹CT %L@+&HHHp f. &wfD%HHHp,g%H8S;HHC%HHp1H%%L It$ Ht1HIt$(Hj%HL It$ AńAD$Mt$0H@M$M9uIM9LHu %L It$(Ht1Ht?It$ H"]$L It$ HFHO61)$H8A1HH $HHHp l$L It$He1H$H}L(IEHE4$L;(tIuHckMe0EmAMM9uofDIM9\I4$Hu1T#HL It$ It$(H#HL It$ AńAD$Mt$0H@M$M9uMIM98LHHu:#H@Hp0:#HL It$ OWIt$(1Hs"L It$(Ht1HIt$0H"HL(IuAEMe0Mt0M9@pI4$HIM9X"L It$(@H yH5zH=z'8"HL It$(KSIt$H6q!L It$ L!LeH0L ALH;!HL It$ AD$It$@Hz!HL(IuAĄI}(AEMu0H@M,M9unfDIM9t_LH$uDHp L8L4IL9u,@IM9tI4$Hu1PDHL@7HH 7u1@UHAWAVAUATSHhHpHxdH%(HE1HHH6HSHpHcH>2HP4Y5t"kJS2H]P4wHp H"fHUdH+%(+Hh[A\A]A^A_]fDH x3"fHx2tH % BH5GH="H]5DH x1HBHH0HPH[Hux0hXH^x/tZ[Hx.Hp1HD+IIH\@&''FIIHx%Hx RHJt)1HHHH)A|$%It$ HHx3 He@*U+WHH2x(LeLEfDsIIH xu`HBHH0HPH A|$u4I|$ LH Jt)1HHHH)A|$)CfHHH x ;EH x H BH5AH=FA.H x +{IIHc x u3Hx KHJt)1HHHH)A|$ AfDcIIH xz Hx KH>I 41HHH)A}L Iu HH IIH xu3Hx -KHJt)1HHHH)A|$+.+fDHx H BH5?H=?-IIH xu3Hx JHJJt) 1HHHH)A|$BfDHEHUH@tgZH BH5?H=*?e,DIIHx{Hp @f<HRAHt4HG /A|$<AD$Af<)I|$(IIH:KL51HHHH)A|$It$(HHfDsIHxtHp(Ht1Hz2A|$MIt$ Hd@HHKCIH xHp Ht1H A|$It$(H@HxHRHp HHHxn11HHfDCHEHUHS@V*DKIIHxHxGHVJt)1HHHH)A|$It$HHf.{HxH 1 BH5<H=><y)fHEHUH[@<<H L BH5;H=;$)@IIH@H BH5};H=;(IHxu"Hp 1HA|$>fHH@HEHUHsPЃ<v ^H BH5:H=;=(DHEHUHxH}HHdH}HEHU+HH7fkHH@CHHxHH#HEHUH@tsk:It$(@^Hf1IH}HHu-HE1HHp H}HHBH}HH)HE1HHpH}aHHHE1HHpu4I|$ DHJt)1HHHH)A|$i%HpFHtiHRL9RcbH}HHAHE1HHpE1I|$ AI &XG^$88H ݿ mH58H=Ae%H  BH57H= 8F%H ' BH57H=7'%RJ$x$JnJ JII$EKK7H 4fH5HgH=yg$7#b# 8>H H5 H=& $$:OJH BH5 7H=57p$"v";H BH56H=7B$LKH I BH56H=6$H R BH56H=6#H BH5w6H=6#H L mH5X6H=?#H BH596H=b6#H  mH56H=?~#H BH55H=$6_#H BH55H=6@#+5H  BH55H=5#G8H BH55H=5"8 66*9f.UHSHHuHUHt4HFHHHHHvHtH}@vH]H}g,HHH]fDUHSHHHUdH%(HE1Ѓu+HHt^HUdH+%(ukH]@PwHU HtH2HBHUdH+%(u5HH]H@Ht HpH}:HuHٺ"=ff.UHAVAUATSH dH%(HE1HHFLnHIL9HE1LuHEHEI9tL$H0LH t+HUuEHEHHEL9uHuHUdH+%(unH [A\A]A^]Hv*L*f<@uF<tHvXHe[A\A]A^]He[A\A]A^]H+1t Hh%HLt9HIHH9u@HI9tH3L<u1He[A\A]A^]Hv8HS@tHh+1t H$HLotHIHH9u3HI9#H3L踼u1H+1t H$HLWHIHH9uHI9H3LPu1H*1t H$HL褻H4IHH9ud@HI9SH3Lu1H5*1t H#HL<HIHH9u@HI9H3L耻u1GH)1t HO#HLԺHdIHH9u@HI9H3Lu1He[A\A]A^]He[A\A]A^]+He[A\A]A^]EH%)1t H"HL,tHIHH9u@HI9H3Lpu17He[A\A]A^]DHe[A\A]A^]C~H(1t H"HL蕹H%IHH9uUDHI9CH3Lعu1H(1t H!HLgHIHH9uHI9H3L`u1'He[A\A]A^]He[A\A]A^]He[A\A]A^]b]Hm'1t H HLtHIHH9u4@HI9#H3L踸u1He[A\A]A^]He[A\A]A^]+He[A\A]A^]He[A\A]A^] He[A\A]A^]XHcIHH9uHI9H3Lu1HvH1bHR&1t HHLYHIHH9ufHI9H3L蘷u1_HF@H+H0HP$+H=g+RcfUHAWIAVAUATSHHv(H<{v @1IuE1HD[A\A]A^A_]DL 1t LjHLAńtAGtL1PHL4AGt LHI9u@HI9tH3LLuiff.UHAVAUATSH@HudH%(HUHHHw/f.HUdH+%(H@[A\A]A^]HHHx5w@HHH}HcH>@HHHp Wf.wfDHHHp,gkH8HHCKHHp1HJ%0L It$ Ht1H)It$(HHL It$ ʎAńAD$Mt$0H@M$M9uIM9LHuL It$(Ht1H蓬t?It$ H"]hL It$ HFH/61)4H8\1HH/ HHHp L It$He1H}L(IEHEL;(tIuHckMe0EmAMM9uofDIM9\I4$Hu1T_HL It$ It$(H/HL It$ AńAD$Mt$0H@M$M9uMIM98LH(uH@Hp0:HL It$ OWIt$(1H蘪s~L It$(Ht1HwIt$0HGHL(IuAEMe0Mt0M9@pI4$HIM9L It$(@H ;H53<H=d<HL It$( SIt$H6q|L It$ LjLeH0LLH蠂;FHL It$ AD$It$@H HL(IuAĄI}(AEMu0H@M,M9unfDIM9t_LHuDHp LL4IL9u,@IM9tI4$Hu1PDHLHH Z@UHAWAVAUATSHhHpHxdH%(HE1HHHJ6HnHpHcH>{HP4Y5t" H]P4wHp H"fHUdH+%(+Hh[A\A]A^A_]fDH x3"fHx2tH BH5 H= DH x1HBHH0HPHHux0hCkH^x/tgHx.Hp1HZD軽IIH\@&''1+IIHx%Hx HJt)1HHHH)A|$%It$ HHx3蛾He@*U+諽HH2x(LeLLH~f IIHL@&D'I|$ H Jt)1HHHH)AT$&軺IIH_x"u3Hx MHj Jt)1HHHH)A|$"fDHH苹H@ ۶IIHPBwIGHHH HH) L9 AWAGIfHPL$VHs KL%1HHHAGH)уKIwHH8 AWЃ!EgfAA E1G@AGfA9 KDHH0HP? IAGE9N vH BH5bH=fD{IIH x$u3Hx MHj Jt)1HHHH)A|$$N fDøIIH1 x#u3Hx H Jt)1HHHH)A|$#cfD˻HHSH @* +XH x-H BH5-H=V+HU x) @ Hp0D軳IIH# xu3Hx H Jt)1HHHH)A|$[fDIIH xu`HBHH0HPH A|$u4I|$ hH Jt)1HHHH)A|$fHHP裩H x #H x H A BH5H=苨H x C IIHc x u3Hx } HJt)1HHHH)A|$ nfDIIH xz Hx ! H>I 41HHH)A}L Iu HH +IIH xu3Hx HJt)1HHHH)A|$+fD蓦Hx H q BH5=H=f;IIH xu3Hx - HJJt) 1HHHH)A|$nfD胤HEHUH@tgZH ] BH5H=D+IIHx{Hp @f<HRAHt4HG /A|$<AD$Af<)I|$(I H:KL51HHHH)A|$It$(HHfDIHxtHp(Ht1H 2A|$MIt$ Hd@KHHKӨIH xHp Ht1H蚜A|$It$(H@HxHRHp H苧HHxn@1HHfDӡHEHUHS@VD۫IIHxHx9 HVJt)1HHHH)A|$It$HHf. HxH BH5H= fHEHUH[@<<H ܏ BH5PH=y@kIIH@H 1 BH5 H=6qkIHxu"Hp 1H[A|$f+HH蓟HEHUHsPЃ<v ^H ] BH5iH=D#HEHUHxH}HHd裝H}HEHUHH7fHHөHH8+HH賦HEHUH@tsIt$(@^Hf1IH}pHHu-HE1HHp蛘H}荺HHBH}$HH)HE1HHpOH}HHHE1HHpu4I|$ HJt)1HHHH)A|$HpFHtiHRL9RcbH}ff.UHAUATISHdH%(HE؋%wU%w}HvH}HuHEdH+%(HL[A\A]] u;FH^H@L,I9L9tfDHLEtHI9uHUdH+%(u^H[A\A]]fHEdH+%(u;HvH[A\A]]fDHvHEdH+%(uH[A\A]]v1H SH5H=~fHUHAVAUATISHH@FFu!f<@uF<tHvXHe[A\A]A^]He[A\A]A^]Hv1t HHLtYCtHPHL,1Ct HHI9tH @HI9tH3Lu1He[A\A]A^]Hv8HS@ttH1t HZHLtHsIHH9uHI9H3LXu1Hx1t HHLWCHPHL,1Ct HHL9Hf.HI9sH3Lu1H1t HgHLH|IHH9u@HI9 H3L`u1H}1t HHL\HIHH9u@HI9H3Lu1H1t HHLLHIHH9uL@HI9;H3Lu1He[A\A]A^]He[A\A]A^]He[A\A]A^]reuHm1t HHLLHIHH9u@HI9H3Lu1He[A\A]A^]He[A\A]A^]&wH1t HXHL HmIHH9u DHI9H3LPu1wvhH`1t HHL?HIHH9uHI9H3Lu1He[A\A]A^]|He[A\A]A^]KHe[A\A]A^]vH1t H7HLHLIHH9u@HI9H3L0u1WHe[A\A]A^]4He[A\A]A^]He[A\A]A^]He[A\A]A^]He[A\A]A^]^HIHH9uKHI9;H3Lu1HvH1誃H1t HHLyH1IHH9uHI9H3Lu1?HF@HH0HPCHjPHL,1Ct HPHI9THHI9;H3Lu1Hv8H1t HHL{H3IHH9uHI9H3Lu1?He[A\A]A^]<H1LHHIHH9ugHI9SH3Lu1Hv(HtIHH9u@HI9H3LXu1Hv(lH$IHH9u@HI9H3Lu1/Hv(tHIHH9ut@HI9cH3Lu1Hv($HIHH9u$@HI9H3Lhu1He[A\A]A^]\Ht1t HHLSH IHH9uHI9H3Lu1Hv0\HIHH9u\@HI9KH3Lu1Hv0 HlIHH9u @HI9H3LPu1wHe[A\A]A^]THv0SH IHH9uHI9H3Lu1Hv0\HIHH9u\@HI9KH3Lu1He[A\A]A^]He[A\A]A^]He[A\A]A^]He[A\A]A^]He[A\A]A^] He[A\A]A^]_HW1t HHL6CHPHL,1Ct HjHI9nHfHI9SH3Lu1H1t HGHLC HPHL,1Ct HHI9HHI9H3Lu1?H51t HHLlCzHbPHL,1Ct HHHI9LHHI93H3Lu1Hv(1H|Hs01L|Hx1t HHLWHIHH9uHI9H3Lu1DHv(1|H1t HwHL,HIHH9u,@HI9H3Lpu1He[A\A]A^]He[A\A]A^]He[A\A]A^]HZ1t HHL9HIHH9uHI9H3Lu1H1t HwHL,HIHH9u,@HI9H3Lpu1Hv(1zHz1t HHLYHIHH9uHI9H3Lu1He[A\A]A^]He[A\A]A^]He[A\A]A^]*HBLH0HPH1t HEHLHZIHH9uf.HI9H3L8u1_HvHHSPHH@1t HHLwHIHH9uwHI9cH3Lu1He[A\A]A^]H LAEh AIIMDI M9F LLu1oHe[A\A]A^]LYOHs@L;HIHH9uHI9H3Lu1XHs@L4HIHH9u4@HI9#H3Lxu1He[A\A]A^]IH{IHHcH>HEdH+%(?HvHeL[A\A]A^A_]6HEdH+%(?HeL[A\A]A^A_]/HEdH+%(<HeL[A\A]A^A_]HEdH+%(>HeL[A\A]A^A_]-HEdH+%(e>HeL[A\A]A^A_]HvH><{3BHv Lf01HEdH+%(>HeL[A\A]A^A_]'HEdH+%(>HeL[A\A]A^A_]HEdH+%(H<HeL[A\A]A^A_]HEdH+%(;HeL[A\A]A^A_]HF0I3H83HEdH+%(;HeL[A\A]A^A_]MNHEdH+%(:=HeL[A\A]A^A_]DHEdH+%(=HeL[A\A]A^A_]HEdH+%(=HeL[A\A]A^A_]HEdH+%(2;HeL[A\A]A^A_]HEdH+%(:HeL[A\A]A^A_]HEdH+%(<HeL[A\A]A^A_]wHEdH+%(4=HeL[A\A]A^A_]NHEdH+%(:HeL[A\A]A^A_]%HEdH+%(:HeL[A\A]A^A_]HEdH+%(7:HeL[A\A]A^A_]#&HFHtH0HP^XHH}Lp#HUfomHEH]HUL})pHxH91tL薽H0LLXHx-HpHHpH9uI9uOHEdH+%(:HeL[A\A]A^A_]HEdH+%(9HeL[A\A]A^A_]HEdH+%(8HeL[A\A]A^A_]HEdH+%( ;HeL[A\A]A^A_]{HF(L}HƒHA4HLLpHUfo]HEH]HUL})pHxH9T/tLDH0LLHx.,HpHHpH9uI9ufHUdH+%(9He[A\A]A^A_]HEdH+%(7HeL[A\A]A^A_]HEdH+%(k7HeL[A\A]A^A_]WHEdH+%(8HeL[A\A]A^A_].~uHF(HtH0HPHH}LpxHUfoeHEH]HUL})pHxH92.tLH0LLGHx*HpHHpH9uI9uHEdH+%(6HeL[A\A]A^A_]%HEdH+%(J6HeL[A\A]A^A_]"HvH-3@#3H3HEdH+%(y7He[A\A]A^A_]+HEdH+%(8HeL[A\A]A^A_]HEdH+%( 6HeL[A\A]A^A_]HEdH+%(~5HeL[A\A]A^A_]`Hv(HS0sHH}Lp踽HUfoeHEH]HUL})pHxH9}.tL+H0LLHx*HpHHpH9uI9uHEdH+%(4HeL[A\A]A^A_]f) Ft oV0) H H(LxHCS(H LHH(HC 8H0fo0H@HD$$H C2H҃HD082@ Ll@2AIM I M92LLu1HEdH+%(4HeL[A\A]A^A_]wHvHH}LpӻHUfomHEH]HUL})pHxH9,tLFH0LLHx9)HpHHpH9uI9uHEdH+%(4HeL[A\A]A^A_]HEdH+%(4HvHe1[A\A]A^A_]zHEdH+%(y3HeL[A\A]A^A_]QHF-H3LlHXI9uT@HI9CH3Lhu12F tHFH0HPHH}LpLHUfoUHEH]HUL})pHxH9)tL迵H0LLHx%HpHHpH9uI9uxHEdH+%(2HeL[A\A]A^A_]HEdH+%(2HeL[A\A]A^A_]+HEdH+%(h1HeL[A\A]A^A_]HEdH+%(0HeL[A\A]A^A_]HEdH+%(1HeL[A\A]A^A_]{HEdH+%(2HeL[A\A]A^A_]r*HEdH+%(1HeL[A\A]A^A_])HEdH+%(A0HeL[A\A]A^A_]HEdH+%(_1HeL[A\A]A^A_]HEdH+%(1HeL[A\A]A^A_])HEdH+%(1HeL[A\A]A^A_]HEdH+%( 1HeL[A\A]A^A_]\HEdH+%(0HeL[A\A]A^A_]3HEdH+%((1HeL[A\A]A^A_]*)HEdH+%(0HeL[A\A]A^A_]HEdH+%(.HeL[A\A]A^A_]HEdH+%( 0HeL[A\A]A^A_]HEdH+%(p0HeL[A\A]A^A_](HEdH+%(.HeL[A\A]A^A_]]HEdH+%(.HvHeL[A\A]A^A_]F'AE1DIM9'CA9/JDLH0HPku1HEdH+%(Q/HeL[A\A]A^A_]'HEdH+%(/HeL[A\A]A^A_]'HEdH+%(?.HeL[A\A]A^A_]HvHSXoC HC0H LHE)pHD$$H HH}LPhHUfoUHEH]H`L})PHXH9*tLذH0LL4HX%HPHHPH9uI9uHEdH+%(-HeL[A\A]A^A_]7HEdH+%(,HeL[A\A]A^A_].&HEdH+%({,HeL[A\A]A^A_]HvHtLnHs@H.>.LLEH蛯LLH'HEdH+%(,HsHHeLL[A\A]A^A_]UHEdH+%(,HeL[A\A]A^A_],HEdH+%(h,HeL[A\A]A^A_]HEdH+%(,HeL[A\A]A^A_]$HEdH+%(+HeL[A\A]A^A_]HEdH+%(t*HeL[A\A]A^A_]HEdH+%(+HeL[A\A]A^A_]_HEdH+%(;,HeL[A\A]A^A_]V$HEdH+%(*HeL[A\A]A^A_]-HEdH+%()HeL[A\A]A^A_]HEdH+%(+HeL[A\A]A^A_]oF HF0H H`)PHD$$RH (HCHO$LhM|M9u:$@IM9)$IuLu1q@Hv菶CLk0M|M9u4%IM9#%IuLWu1!@HEdH+%()HeL[A\A]A^A_]HEdH+%(#*HeL[A\A]A^A_]6$HEdH+%(J*HeL[A\A]A^A_]"HFH0HPHH}Lp°HUfo}HEH]HUL})pHxH9k!tL5H0LLHxHpHHpH9uI9uH趿LH EHH}LpHUfoeHEH]HUL})pHxH9 !tL胫H0LLEHxNHpHHpH9uI9uuHvLLZu1HEdH+%('HeL[A\A]A^A_]HEdH+%(2&HeL[A\A]A^A_]HEdH+%(P'HeL[A\A]A^A_]HEdH+%('HeL[A\A]A^A_]HEdH+%(%&HeL[A\A]A^A_]{HvH'>'HEdH+%(i'HeL[A\A]A^A_]"HeL[A\A]A^A_]HFHH0HP|vHH}LpAHUfoMHEH]HUL})pHxH90tL贡H0LLvHxHpHHpH9uI9umHEdH+%(!HeL[A\A]A^A_]4HEdH+%(I HeL[A\A]A^A_]HEdH+%(`!HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]HEdH+%(iHeL[A\A]A^A_]GHEdH+%(X HeL[A\A]A^A_]>HEdH+%(OHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%( HeL[A\A]A^A_]HEdH+%(#HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HHEdH+%(THeL[A\A]A^A_]HEdH+%(8HeL[A\A]A^A_]HEdH+%(/HeL[A\A]A^A_]7HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_][HEdH+%(HeL[A\A]A^A_]2HvHH}Lp莢HUfouHEH]HUL})pHxH9otLH0LLï]HxHpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]HEdH+%(AHeL[A\A]A^A_]8HEdH+%(0HeL[A\A]A^A_]/HEdH+%(1HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]9HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]^HEdH+%(nHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]LHEdH+%(HeL[A\A]A^A_]#HEdH+%(cHeL[A\A]A^A_]J HEdH+%(fHeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]HFH0HP HH}LpԞHUfo}HEH]HUL})pHxH9tLGH0LL Hx7 HpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]~HEdH+%(HeL[A\A]A^A_]uHEdH+%(HeL[A\A]A^A_]| HEdH+%(HeL[A\A]A^A_]#HFH8HpL{HH}LpFHUfouHEH]HUL})pHxH9 tL蹘H0LL{Hx: HpHHpH9uI9urHEdH+%(vHeL[A\A]A^A_]9HEdH+%(mHeL[A\A]A^A_]0HEdH+%(HeL[A\A]A^A_] HEdH+%( HeL[A\A]A^A_]HEdH+%("HeL[A\A]A^A_]uHEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]C HEdH+%( HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] Hv HS(^HC0HtH0HPLD>H{@fHtH0HPLHH}LpHUfo}HEH]HUL})pHxH9 tLWH0LLHxHpHHpH9uI9uHEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]3 HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]XHEdH+%(rHeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]FHEdH+%(HeL[A\A]A^A_]HEdH+%(gHeL[A\A]A^A_]HEdH+%(jHeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_] HEdH+%(HeL[A\A]A^A_]PHEdH+%(HeL[A\A]A^A_]G HF(H0HP跭HH}Lp|HUfoUHEH]HUL})pHxH93tLH0LL豤KHx)HpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]oHEdH+%(HeL[A\A]A^A_]vHEdH+%(HeL[A\A]A^A_]HF0H0HP荬HH}LpRHUfo]HEH]HUL})pHxH9tLőH0LL臣!HxHpHHpH9uI9u~HEdH+%(HeL[A\A]A^A_]EHEdH+%(HeL[A\A]A^A_])HEdH+%(HeL[A\A]A^A_]HEdH+%(!HeL[A\A]A^A_]ZHEdH+%(8HeL[A\A]A^A_]HEdH+%(HeL[A\A]A^A_]XHH}LpŔHUfomHEH]HUL})pHxH9`tL8H0LLHxHpHHpH9uI9uH$L~HpHxqHLVHpHxHL1HpHxH7L HpHxH2LHpHxeHL¦HpHxHL蝦HpHxQHLxHpHxhHcLSHpHxHL.HpHxvHYL HpHx HLHpHxHL迥HpHxHL蚥HpHxHLuHpHxfLUHpHxHL5HpHxLHpHxHLHpHxLЋHpHxqL谋HpHx.I9HEdH+%(; HeL[A\A]A^A_]閞I9I9L9L9HHHEdH+%( HeLHL[A\A]A^A_]LHpHx]LˊHpHxL諊HpHxL苊HpHx|LkHpHx[LKHpHxJL+HpHxsL HpHxLHpHx!LˉHpHxHL覢HPHXL9I9I9I9I9zL9QI9I9L9uI9gLHpHxHH}Lp脎HUfo}HEH]HUL})pHxH9tLH0LL蹛SHxu!HpHHpH9uI9uHvLFHpHx뉾L)HpHxiI9ihI9ZHH}Lp藍HUfoMHEH]HUL})pHxH9tL H0LL̚fHxu!HpHHpH9uI9uHpHv+UHpHxLnHH6%HpHxRLHPHXdHHIÈ1LHLLHƋC$EE菢1CHL0CIHH H9uMDukA}t'IEHLH0HP.(IL9 M/AEvA}uIu1LKA}(t$Iu@H1L&ILRtL&LHpʥl1 HH}LpUHUfouHEH]HUL})pHxH9tLȆH0LL芘$Hxu!HpHHpH9uI9uHvLHpHx뉾LHpHxiL9i9L9+L9=HH}LpZHUfouHEH]HUL})pHxH9tLͅH0LL菗)Hxu!HpHHpH9uI9uHvLHpHx뉾LHpHxiI9i>HH}Hp{HUfoMHEL}HULm)pHxI9tHH0LL谖JHxu!HpHHpI9uI9uHvH=HpHx뉾H HpHxiL9i_芁腁老{vqlgb]XSNID?:50+&!  ۀրр̀ǀHEdH+%(u7 H51 H=3PH q0 H5H=a|wrH 1 H5ϑH=ش3NID?H h/ H5/ H=/  y{vqlgb]XSNID50+&! ~~~~~%f~~~~~~~~~~~~~~~Е~~~|~w~r~m~h~c~^~Y~T~O~J~e0;~6~1~,~'~"~~~~~ ~~}}}}}}}}}}}}}}}}}}}}}}}}}}}}x}s}n}i}d}_}Z}U}P}K}F}A}<}7}2}-}(}#}}}}} }}}||||||||||||||f.UHAUATSHHFHt tU蠣HvIIu H[A\A]]fSуẁuH{(tIuHL[A\A]]頝H " BH5H=z謜ff.UHAWAVAUATSHHH}dH%(HE1H ~IIHRHt!Hv HtH}dtpA}E}HMMu01HMEul@HII9t[A}ID uzAuH9sRIvAoHEH}HuHu)Eu1HUdH+%(u^HH[A\A]A^A_]ø蔠H " H5H=ڥyH ! BH5BH=ky!zff.UHAWAVAUATSHHuHUH4F,uXIH}\KLH街ADŽuE1HD[A\A]A^A_]DLuMAFt EnAAtW1LtHA9t;HEHtHuAF9sIt0Lb`HA9uƐLyL,HI9t @H3L-+HI9uLxH1HLA yff.UHAUATSHHFHt t^ОHrI1I蟍uH1[A\A]]fDIu1LztCuHs HL[A\A]]WH 5 BH5H==xwsfUHAUATSHHFHthuEHrI1IuH1[A\A]]Iu1LҌtCt#t۝Hs HL[A\A]]颎H BH5_H=v辋ff.UHATSLeHLHHu}HtHpHHH[A\]Lx{H¸HtHrHHH[A\]fUHATSH~FHtSt VfDHv(ITu[1A\]fCƒwǀuHsL[A\]鍍H / BH5JH=suiUHAWAVAUATSHHdH%(HE1H~,IHv HIEu0EHEdH+%(EHH[A\A]A^A_]fDAE<,E}HME1HMEuVDAEI9snKvHuHuHHAoD0ID@)EHEkIM9bAEKt<,tH q" BH5H=FtH 2 H5NH=wbt݆訆sufUHAUATISHdH%(HE؋%wU%w}HvH}ȊHuHEdH+%(HL[A\A]] u;FH^H@L,I9L9tfDHLEtHI9uHUdH+%(u^H[A\A]]fHEdH+%(u;HvH1[A\A]]@HvHEdH+%(uH[A\A]]֊1tH & SH5ޞH=rfUHAUATSHHFHt tUHvIIa#u H[A\A]]fSуẁuH{(tIuHL[A\A]]PH  BH5H=Qr ff.UHAWAVAUATSHHH}dH%(HE1H ~IIHRHt!Hv HtH}(tpA}E}HMMu01HMEul@HII9t[A}ID uzAuH9sRIvAoHEH}HuHu)E,u1HUdH+%(u^HH[A\A]A^A_]øH  H5H=:%qH ^ BH5H=˃q聗rff.UHAWAVAUATSHHuHUH4F,uXIH}BLHADŽuE1HD[A\A]A^A_]DLuMAFtkEnAAtW1L蘘tHA9t;HEHtHuAF9sIt0L `HA9uƐLpL,HI9t @H3L} +HI9uL4pH1HL!Aqlpff.UHAUATSHHFHt t^0HrI1IO!uH1[A\A]]fDIu1L*!tCuHs HL[A\A]]H (- BH5tH=nӃfUHAUATSHHFHthuEHrI1I uH1[A\A]]Iu1L tCt#t;Hs HL[A\A]]H C BH5H=#nff.UHATSLeHLHHu.uHtHpHHH[A\]LrH¸HtHrHHH[A\]fUHATSH~FHtSt 趕fDHv(ITu[1A\]fCƒwǀuHsL[A\]H &' BH5H=mɎUHAWAVAUATSHHdH%(HE1H~,IHv HIEu0EHEdH+%(EHH[A\A]A^A_]fDAE<,E}HME1HMEuVDAEI9snKvHuHuHHAoD0ID@)EHEs'kIM9bAEKt<,tH  BH5}~H=~kH  H5H=חk=~~lfUHAUATISHdH%(HE؋%wU%w}HvH}(HuHEdH+%(HL[A\A]] u;FH^H@L,I9L9tfDHLEtHI9uHUdH+%(u^H[A\A]]fHEdH+%(u;HvH1[A\A]]@HvHEdH+%(uH[A\A]]&kH  SH5>H= RjfUHAUATSHHFHt tU`HvIIQ-u H[A\A]]fSуẁuH{(tIuHL[A\A]]IH A BH5M|H=v|ilff.UHAWAVAUATSHHuHUH4F,uXIH}l;LH2ADŽuE1HD[A\A]A^A_]DLuMAFt|EnAAtW1LJtHA9t;HEHtHuAF9sIt0L+`HA9uƐLiL,HI9t @H3L++HI9uLhH1HL^A!{iff.UHAUATSHHFHt t^HrI1IuH1[A\A]]fDIu1LtCuHs HL[A\A]]*H % BH5$zH=Mzg|fUHAUATSHHFHthuEHrI1ITuH1[A\A]]Iu1L2tCt#tHs HL[A\A]]2*H  BH5oyH=yf{ff.UHATSLeHLHHumHtHpHHH[A\]LkH¸HtHrHHH[A\]fUHATSH~FHtSt ffDHv(ITu[1A\]fCƒwǀuHsL[A\])H  BH5ZxH=xeyUHAUIATISH(dH%(HE؋%\ %HFHofH~)EHt)HUH\BAE%SIuH}{HuHEdH+%(%H(L[A\A]]f uCFH^H@L,I9L9u$@HI9tHLu1 @HUdH+%(H([A\A]]DHFHƒHHt^H0HPHEdH+%(ujH([A\A]]-HvHHuOHEdH+%(u;H(H1[A\A]]@HvHEdH+%(uH([A\A]]'d d[H X SH5H=PccH  H5H=tc@UHAWAVAUATSHHH}dH%(HE1H ~IIHRHt!Hv HtH}D@tpA}E}HMMu01HMEul@HII9t[A}ID uzAuH9sRIvAoHEH}HuHu)Eu1HUdH+%(u^HH[A\A]A^A_]ø$H % H5AH=jUbH BH5tH=t6b豈Lcff.UHAWAVAUATSHHdH%(HE1H~,IHv HIEu0EHEdH+%(EHH[A\A]A^A_]fDAE<,E}HME1HMEuVDAEI9snKvHuHuHHAoD0ID@)EHEkIM9bAEKt<,tH  BH5sH=saH H5ΌH=`]s(safHtgUHATIHSefHHu;HCHHHv'H_3uHL Bu[A\][A\]fDf.HKUHAVAUATSf~ H/F HIHcH>Hv([L1A\A]A^] Hv(1tkHs0HF(HtmH0HP[LA\A]A^]&)Hv(1 t6Lk@C8MtM9ubIM9TIu1L u1HD[A\A]A^]HHiHviH H袤HأH.HDHzH|HfqHjwH/gjHbf]HePHCH[6H莱)HnHDHHH͠H`H裆Hp(-HRHHH+HHQ|HoHgbHUHHH ;H.H!HHH?HH%HXH諮H~H豗H贄HxHsH}sxHskHr^HqQH qDHp7HmHX8Iŋ@0L4L9uHI9H31Lv u1H#iHvH Hz)HyHdy1LHp(HHs01LmHs8?HxHWxHwH͊H`1LHp(IvI]8AE0L,L9uqHI9cH31Lu1PH裉>H61HɈ$H\H HbHH訆H;HHaHH跄HJH݃Hp{HnH薂aH)TH輁GHO:H-Hu HHH.H~HT~H}Hz}HݩHpHH薨H)H輧wHOjH]HPHCH{6H讣)HAHtHH蚡H͠H`HH膟HH茝HH貜HEH؛sHkfHYH葚LH$?H跙2HJ%HݘHp HH薗H)H\H菕H”HX(@$L,L9uDHI9H31Lu1H[vH莒iH!\H贑OHGBH5H荾(HHsHH虍HlHH2HeHH苉HH豈HDHׇrHjeHXH萆KH>H1Hɛ$HܷHO HBHuHuH lH]Ha\HZHHjHH{H#nHaHITH|GH:H-H5 HH[HH!H@(HwHH:HH`HH&HYHwHjHH@0HPH1LHp(II]8AE0L,L9ufHI9H31Lvu1HHHYHHHHHHKvHiH\HOHBH5H=(HHcHHHHHHUHv(15Lk8C0I\I9uIL9Iu1Lu1oH肮]HPH設CH軫6Hn)HH@(HHGH"HH耾HH覽H9H̼H@(H2HHźHXsHfH~YHLH?HW2H%HH HCHHiLn(F$I\I9ufDIL9Iu1L-u1HZLn(F$I\I9uIL9kIu1Lu1WHEH}8H+H裦H֥H H|HHbH5HȰH[HH聯HH臭HZuH-hH`[HNH膠AHY4H'HH貦 HHHHˢHHaeHdH藨H H}HI]HAE@L,L9ul@HI9[H31Lu1HI]HAE@L,L9u-DHI9H31Lu1I]HAE@L4L9u ~HI9tuH31LZu1LkPCHI\I9ufIL9Iu1Lu1RH5H=QI]XAEPL4L9u(HI9tH31Lu1HLAńtAGtL1QPHL4AGtLQH@HI9tH3LuiAff.UHAWIAVAUATISHF`tHf8LH0HPGt(LC1t Lm=HLAńuE1HD[A\A]A^A_]fDAGtL1PPHL4AGtLPHHI9tH3L ufDUHAWAVIAUATISHHF`HtLPHXLlL9u9fHI9t'H3LuE1HD[A\A]A^A_]Iv0LAńtAFtL1,PPHL1t L8HLAńhAG`L1KPHL4AGt LKHI9u0HI9 H3Lu I(HQ,fUHAWAVAUATSH(dH%(HE1HtWFHbwIHF\IHcH>FHPLtPI9t$@H31LAĄtHI9uAHEdH+%(HeD[A\A]A^A_]DHv15tqH{2HHEdH+%(HeL1[A\A]A^A_]FLfLtM9u+ @IM9 I4$1LuE1NHv1tH{ H1HHEdH+%(p/DHv1mtH{(@1HHEdH+%(8FLf@Lt@M9uX f.IM9A I4$1LuHI9u*CHHELeHDHEH1H9tL>(H01LQHUu HEHHEH9uHuDHvL?HEHULs&HEHUrfDHlbHs1LHs(1LCL4Nd3@MM9ufIM9I4$1LeuHs1LNAĄCL<Nt;(MM9u}fDIM9gI61Lu=CL4Nd3MM9uIM9I4$1LuCL4Nd3MM9u %fIM9tI4$1LuCHHLdM4M9uAIM9.I4$1LEu|CHHLdM4M9uIM9I4$1Lu4CHHLd@M4M9uIM9I4$1LuCHHH\(L4L9u%HI9H31LnuCHT@HL$L9uHI9H31L.ueCHT@HL$L9uHI9H31Lu%CH@Ld@M4M9uIM9I4$1LuHs1LHs(1LCL4Nd3@MM9uJIM97I4$1L=utHs1L&^Hs(1LHCL4Nd3`MM9uIM9I4$1LuHs1LHs(1LCL4Nd3hMM9uIM9I4$1L]uHs1LF~Hs(1L0hCL4Nd3`MM9ulfDIM9tZI4$1Lu(CHHH\@L$L9u[HI9KH31LuCHHLd`M4M9u?IM9'I4$1LeuCHHLd`M4M9u6IM9I4$1LuTCHHLd@M4M9u.IM9I4$1Lu CHHLdhM4M9u %fIM9tI4$1LuCHkLdhM4M9ufDIM9I4$1LUuCHkLd`M4M9ufIM9I4$1LuLCHkLd`M4M9ufIM9I4$1Lu CHkLd@M4M9uhDIM9tWI4$1LuCHHLdhM4M9uifDIM9tZI4$1LYuCHHH\@L$L9uHI9H31LuM{0H"III4$1LIM9uH|"III4$1LIM9uHm"IHH31LHL9uCHHLd`M4M9unIM9tZI4$1L9upCHHH\`L$L9uHI9H31Lu-CHk(H\`L$H31LHL9uHUHAWAVIAUATISHH^(LlHL9u7HI9t'H3LtuE1HD[A\A]A^A_]L@(1t L!HLGAńtAFtL1o5PHLHv([L1A\A]A^]ڶHF(HH0HP[LA\A]A^]vHHHs(1L蝶tIHs0H+HX(@$L,L9u9fHI9t'H31LZufD1H脀@[A\A]A^]Ln(F$I\I9uIL9tIu1Lu1H~H}HVHsVHUH?UzHTmHT`HSSH+SFHR9H1Q,HPHWPHOH}OHOHNH6NHMH\MHLHLHLHKH;KvHJiHaJ\HIOHHBLn(F$I\I9u,@IL9Iu1LMu1HZGHp(EHEH\EHDHDHUCHHmHBHAHAA|H@oH?bH:?UHm>HH=;H3=.H֌!HY<H;H;H;H:H8:H9H8Hv(1Lk8C0I\I9uIL9Iu1L赲u1oH7]H7PH6CH;66H5)Ha5Hp(lH4 H4H4H3Hp(4H83H2H2H!2H1HG1H0Hm0xH0kH/^H&/QH.DHL.7H-*Hr-H-H,H+,H+HQ+H*Hw*H *H)H(H(H6'H&tH%gH%ZH"%MH$@Hv(1uHs01L_Hs8bH#HI#H"Ho"H"H!H(!H HN HHtHrHeH-XH`KH>H1HY$HH HHEHHkHlHaeHcHgcH:bHmaH {H#nH֔aHiTHܒGHo:H-H蕑 HH{HH衖HԕHgHH荔H`HH&H蹎HwHH@0H]H腋1LHp(I脭,I]8AE0L,L9u&fDHI9H31LFu1HÊHVH)H輈HOHHuHHH讄yHlHt_H观RHzEH 8H蠀+H3HH~H}H_}H|H%|Hv(1Lk8C0I\I9uIL9Iu1Lūu1H{mHz`H(zSHyFH~y9Hy,HxHwHjwHvHvH#vHvOH OHH`1H)`$HXHX HWHUWHVHQH.QHPHTPHOHzOH OHN{H3NnHMaHYMTH|GHU:HrU-HT HS1LHp(IGI]@AE8L4L9u+ fHI9 H31Lu1H3ZH6H6H|HozLn(F$I\I9ud@IL9SIu1L腧u1?Ln(F$I\I9u$@IL9Iu1LEu1Ln(F$I\I9u@IL9Iu1Lu1HHVH8QHHnyHXlH _H RH* EH 8H +H# HVHHHHHHx#Hp(HHVH6HHPH#HX(@$L,L9unfDHI9[H31L莥u1HH{HX(@$L,L9u&fDHI9H31LFu1Ln(F$I\I9uDIL9Iu1Lu1HrHHHH^yHHd1_H0RHZEHm8Hd+HQH6MH)AH H_HHX8Iŋ@0L4L9uPf.HI99H31Lu1Hc{HfhHdtHcgHYZHRBMH8@H83Hk5&H~3H) HHHH]HH#HHYH }HxHru}HspHkcHgVH>xIHuHl4H'H{HHhH;H΀yHalH_HwnRH hEHg8H0^+H]H\H)\H[HO[HZH5UHTHSHNBH!,HT+HWHJ uHhH [HNHFAHy4H'H?Ln8F0MtM9u@IM9Iu1L%u1HH|HUH+UH^QHPHPHPrHNeH}iXHv(1荟5Lk8C0MtM9u5IM9!Iu1LMu1H:IHAH`?H3;H2Hp0H5HHJHp0H1H.DI]HAE@L,L9ud@HI9SH31L膞u1@LkHC@I\I9u%DIL9Iu1LEu1LkHC@MtM9u@IM9ttIu1L u1I]PAEHL,L9uHI9H31LƝu1RH5LJH=cLkXCPMtM9u "IM9tIu1Lyu13LkhC`MtM9u%IM9tIu1LAu1LI\IL9Iu1Lu1ff.UHAWAVIAUATISHHF`HtH0HPILP@1LH袜ADŽEnpI^hIIL9t#HsHt1LmtQHI9uAFtDL1PHL,AFtLHHI9tH3LuE1HD[A\A]A^A_]ÐfUHAWAVIAUATISHH~(I~(WL,L9t7H fHI9t'H31L誛uE1HD[A\A]A^A_]ÐL1t L HLAńtAFtL1PHLFHPLtPI9t$@H31L3AĄtHI9uAHEdH+%(HeD[A\A]A^A_]DHv1tqH{HHEdH+%(HeL1[A\A]A^A_]骅FLfLtM9u+ @IM9 I4$1LuuE1NHv1UtH{ HHEdH+%(p=DHv1tH{(HHEdH+%(8FLf@Lt@M9uX f.IM9A I4$1L资uHI9u*CHHELeHDHEH1H9tLH01L{HUu HEHHEH9uHuDHvLBHEHUL#HEHUrfDHlbHs1LtzHs(1L^zCL4Nd3@MM9ufIM9I4$1LzuHs1LyAĄCL<Nt;(MM9u}fDIM9gI61Lyu=CL4Nd3MM9uIM9I4$1LuyuCL4Nd3MM9u %fIM9tI4$1L9yuCHHLdM4M9uAIM9.I4$1Lxu|CHHLdM4M9uIM9I4$1Lxu4CHHLd@M4M9uIM9I4$1LexuCHHH\(L4L9u%HI9H31LxuCHT@HL$L9uHI9H31LwueCHT@HL$L9uHI9H31Lwu%CH@Ld@M4M9uIM9I4$1L]wuHs1LFwHs(1L0wCL4Nd3@MM9uJIM97I4$1LvutHs1Lv^Hs(1LvHCL4Nd3`MM9uIM9I4$1L}vuHs1LfvHs(1LPvCL4Nd3hMM9uIM9I4$1L vuHs1Lu~Hs(1LuhCL4Nd3`MM9ulfDIM9tZI4$1Luu(CHHH\@L$L9u[HI9KH31L^uuCHHLd`M4M9u?IM9'I4$1LuuCHHLd`M4M9u6IM9I4$1LtuTCHHLd@M4M9u.IM9I4$1Ltu CHHLdhM4M9u %fIM9tI4$1LItuCHkLdhM4M9ufDIM9I4$1LtuCHkLd`M4M9ufIM9I4$1LsuLCHkLd`M4M9ufIM9I4$1Lsu CHkLd@M4M9uhDIM9tWI4$1LIsuCHHLdhM4M9uifDIM9tZI4$1L suCHHH\@L$L9uHI9H31LruM{0H;III4$1LIrM9uH,III4$1LIbrM9uHIHH31LH4rL9uCHHLd`M4M9unIM9tZI4$1LqupCHHH\`L$L9uHI9H31Lqu-CHk(H\`L$H31LHzqL9uHUHAWAVIAUATISHH^(LlHL9u7HI9t'H3LtuE1HD[A\A]A^A_]L1t LrHL'AńtAFtL1PHLHHHL9tHHL9uI$M$Ht"HsL2HH[0HuI$xHtH{HH[(HuI$HHtH{HH[(yHuI$HtH{辠HH[(MHuI$M$I9tHH I9uI$M$Ht"HsLJHH[0HuI$hHtH{.HH[(HuI$8HtH{HH[(HuI$HtH{֟HH[(eHuI$I$H9tI$Hp:I$HtH{脟HH[(HuI|$xHtI$H)I\$0Ml$ Ht"HsL)HH[0ȿHuHL[A\A]]鬿ff.UHSHHHpH~HshHbH{hHG H9GtH]銯f.H]f.HUHAVAUATSf~ HF HIHcH>Hv([L1A\A]A^]HHp(1LH~Hs0HF(HtH0HP[LA\A]A^]H [A\A]A^]HHX(@$L,L9uHI9tH31L ufD1HHHpHHwH/jH]H5PHhCH6H)H!HH'HHMHHsHHH,HHRHHxsH fHYH1LH?H2H*%H]HX(@$L,L9uHI9H31L6u1HC5H&HHLHHH%&HxsH fHYH1LH?H2H%HH H35HHIHHoHHH(HH1LHp(II]8AE0L,L9u_HI9KH31Lu18H&H^H HHHz4H=HHcHHp(LHHHHnyHlH_H'RHEHM8H+HsHHH,HHRHHxH HH1HHWHuHhHP[HNHAHI4H'HoH H1LHp(HDHF1H$HlH HHHHH^HHHHH=ALn(F$I\I9urfIL9cIu1Lu1OHB!=Ln(F$I\I9u'IL9Iu1LUu1HrHH8H H^ H H HHHxHkHHp(Hv(1Lk8C0MtM9uIM9Iu1Leu1HHHHH讻HAHtH觹H:Ln8F0MtM9uIM9Iu1Lu1WHʱEH18HP+H H Hi H H/HHUH86HHHHTHHp(HFyHѩlHHRHjEH38Hp+HcHvHHHHҾLn8F0MtM9u IM9 Iu1Lu1H'HHsHfHYH1LHd?Hg2HJ%H}H HCH֦H!HHf*1H)$H,)H HHuHHKH>Ln(F$I\I9uIL9Iu1Lu1Ln(F$I\I9ut@IL9cIu1Lu1OH袮=H50HH#H{HN fLkHC@I\I9u@IL9Iu1Lu1LkHC@I\I9u@IL9Iu1Lu1LkHC@MtM9u@IM9tuIu1Lu1CLkPCHI\I9u(IL9Iu1LUu1RH5/H=IbLkXCPMtM9u)IM9tIu1Lu1LkhC`MtM9u%IM9tIu1Lu1sLI\IL9MIu1Lu19@UHAWAVIAUATISHHF`HtH0HPILP@1LH6ADŽEnpI^hIIL9t'HsHt1LtQHI9uAFtDL1误PHL,AFtL薯HHI9tH3LuE1HD[A\A]A^A_]ÐfUHAWE1AVAUIATSHH8HUDfdH%(HE1EuIE9H+LHL4AuJD LHHEtZI6H?HF(Lfu1HUdH+%( H8[A\A]A^A_]fDHu1LʨtIE9VfHؒH@8HHHH@ H8HpaHHEHULH6\LuCu$MtAFatn胥MPAFƒw3AF%t7DpAIIM9HELJ4 3uLL$IL9u<@IM9t/I7L蜩uHfDL0HtHUHL\RC tH}cLHگ0HHULHHۯHULHLuHHHEHCLL襗LeH;@MtH]@HEdH+%(uH(H[A\A]A^A_]2HfDUHAUATISHdH%(HE؋%wU%w}HvH}xHuHEdH+%(HL[A\A]] u;FH^H@L,I9L9tfDHLEtHI9uHUdH+%(u^H[A\A]]fHEdH+%(u;HvH1[A\A]],@HvHEdH+%(uH[A\A]]BH b2SH5H=Z#~fUHAWAVAUATISHH8HF8u5f)EHuHUL[uQE1HeD[A\A]A^A_]@E1HD;hH@DLAH4{HC8tfDSHK(H LHHMUfoUHEHD$$[H AƄmHH5@tWLh MtNAEtFAIIMfDI M9t'LLuo)MHC8HH-HHP Ht&H2HBLHFHC8tHHp(Ht1L+C<#HHH‹CT %LH= RufUHAWAVAUATISHH8HF8u5f)EHuHUL赐uQE1HeD[A\A]A^A_]@E1HD;hH@DLAH4 HC8tfDSHK(H LHHMUfoUHEHD$$譐H AƄmH薃H5@tWLh MtNAEtFAIIMfDI M9t'LLguo)MHC8HH-HHP Ht&H2HBLH{HC8tHHp(Ht1L#C<#H踇HH‹CT %LsHlHHHPmID$LHLHnHDžHH{HHH9tHHpoHEdH+%(uQHhH[A\A]A^A_]@HHLHGf.w }{`HHHHH,ff.UHATISHtHt:S(t Cat [A\]@HXo[L1A\H] ufUHATISH tHt:S(t Cat [A\]@Hn[L1A\H]gufUHAWAVIHAUATSHH(dH%(HE1t<w7HEdH+%(H([A\A]A^A_]D<HHPHtHLcxof.IHLkxoIDI9tI$H@0HHHHHH8HGHHHHHHx%uhHHHHH8vhHL@GH8}hLLHEHEHH\o1LH0H5HDž(HH Hƅ0HHHDžƅsIHHpH@H`HLH`HHHI9IFHH HU[HhH`HHu?clasHH9tHpHpkHHH9tHHpkH HH9tH0HpvkH@HPH9HPHpOkHEdH+%(]H5H=Pe?stru4fct(LLH5LbfH5LHIXrHHL)L9H@L)H}LmHLH9LmIHGHY1ҹ H5cL|[HCHHH5nTjIHHMHpH9SHEHHHEHEHHPYHEHH~EH9DHEH9HHHH}HUHEHH}H9t HEHp~iH1ҹH5tZI9;HMIHPI)H9LHuH)HHL9HEIGLHLdXH LHHbH}HH9t HEHphH}L9t HEHphH`HH9tHpHphHLvpHMLHHSpI~Hx~HUHME1ɉA>ZH}HH9~HEHp-hlH}L9t HEHp hH`HH9'2fDHpI~qsHHHEHEHHfH~Ht#HtAHfH~n~EHfօfH~H}SjE~EHbXHEdH+%(uHEdH+%(uLH5 H=t1vHEdH+%(uH5 H=t1svHEdH+%(uHH=rt1H5 LvHHHHff.UHAWIAVAUATISHuE1HD[A\A]A^A_]LL譽AńtAGtL1qPHL4AGtL|qH HI9tH3L蜦ufDUHAWIAVAUATISHtuE1HD[A\A]A^A_]LL AńtAGtL1pPHL4AGtLpH HI9tH3LufDH6UHAVAUATISHH FFu!f<@uF<tHvXHe[A\A]A^]He[A\A]A^]Hb1t HH\HL=t9HaVIHH9u@HI9tH3Lu1He[A\A]A^]Hv8HS@tHHb1t H[HLtHUIHH9u3HI9#H3L蘤u1Ha1t Hj[HL_WHUIHH9uHI9H3L0u1H}a1t HZHLHUIHH9ud@HI9SH3Lȣu1Ha1t HZHLHTIHH9u@HI9H3L`u1GH`1t H/ZHL$HDTIHH9u@HI9H3Lu1He[A\A]A^]<(He[A\A]A^]K'He[A\A]A^]%5H`1t HYHL|tHSIHH9u@HI9H3LPu17He[A\A]A^]d$迾CdLkhMtM9uzIM9lIuLu1wH7_1t HXHLHRIHH9ufDHI9 H3L耡u1gXH^1t HBXHL7/HWRIHH9uHI9H3Lu1He[A\A]A^]!He[A\A]A^] He[A\A]A^]JUH^1t HWHLHQIHH9u@HI9H3L`u1GHe[A\A]A^]He[A\A]A^]He[A\A]A^]He[A\A]A^]He[A\A]A^]HL訶HPIHH9uHHI93H3L訟u1DHvH1}}uH\1t H_VHLTLHtPIHH9u@HI9H3L(u1HF@HH0HPDCrHiPHL,1Ct HiHL9DHHI9+H3L蠞u1Hv8,tH[1t H^UHLSKHsOIHH9uHI9H3L(u1He[A\A]A^]|H$`1LH{HOIHH9uWHI9CH3L踝u1Hv(HNIHH9u@HI9H3Lhu1OHv(DIHH9ufHI9H3Lhu1ODHv8s7Hs@1L)k!HJ1t H DHLH >IHH9upHI9cH3L،u1DHv8_sHs0LHI1t H}CHLrjH=IHH9ufHI9H3LHu1/DHv8rHs0L+HkI1t HBHLH=IHH9uRfHI9CH3L踋u1DHe[A\A]A^]HH1t HqBHLf^HLWOHYLYfHnHJ8flI)HE)EILGIHLeL9WH @HI9t?L;L uLLuH}HtHuH)F@1y@H}HuHtH)FAFtTL1"RPHL$AFt L RHI9u'HI9tH3L$ufDHUdH+%(H([A\A]A^A_]HEdH+%(uu?uIHLgLeHHtV@LEIv(LAF+zILeI9LLE}^6H@ff.UHAWAVIAUATISHH~(MI~(WL,ML9t;HfDHI9t'H31LcuE1HD[A\A]A^A_]ÐL8C1t L1t H7HLAńu!fE1HD[A\A]A^]DCtHJKPHL41Ct H0KHI9tH HI9tH3LLufDUHAVAUIATISHfu1ۉ[A\A]A^]fIDsEt0HII H L9tHLufDLLUtL=1t L6HLÄwAEnLCJPHL41AEt L(JHI9?IIM9&IuL7uff.UHAWIAVAUATISH蔛uE1HD[A\A]A^A_]LDtAGa<LCtAGaL<1t L5HL|AńtAGtL14IPHL4AGt LIHI9uQfDHI9>H3L0~u'L01LH[VfDL41LH[fDUHAWIAVAUATISH4t^IwHHv,HHt HHHv1Ln[t(L:1t LT4HLIAńuE1HD[A\A]A^A_]DAGtL1GPHL4AGtLGH fHI9tH3L|ufDHu HJmEff.UHAWIAVAUATISH$tFAGD҃ t L91t L\3HLQAńuE1HD[A\A]A^A_]DAGtL1FPHL4AGtLFHHI9tH3L{ufDIwH҃ t tHv1LYoAGD҃ -0fLX+1LHY4ff.UHAWIAVAUATISHtTAGDt#IwH҃ t tHv1L(Yt(L81t L2HLAńuE1HD[A\A]A^A_]AGtL1EPHL4AGtLEHHI9tH3LzufDUHAWIAVAUATISHtTAGDt#IwH҃ t tHv1LHXt(L71t L.1HL#AńuE1HD[A\A]A^A_]AGtL1DPHL4AGtLDHHI9tH3LyufDUHAVAUATISHHHHtHHtH0HPbtH.tJHCxu*f)EHuHUHL[A\A]A^]^vfDHo)Mf.HLtHs@LAńufDE1HD[A\A]A^]DCtHCPHL41Ct HCHI9tH HI9tH3Lxuff.UHAVAUATISHH_t1ID$xf)EШt Ho)MHuHUHUuuE1HD[A\A]A^]fDI$HttHtH0HPHBatIt$@HAńtAD$tLBPHL41AD$t L~BHI9tIDIM9]I4$HwuEfDUHAWIAVAUATIHSH!)LH0HP`uE1HD[A\A]A^A_]fMt|L41t L.HLAńtAGtL1APHL4AGtLAH@HI9xH3Lvua1f.UHAWIAVAUATISHF`tH:(LH0HP_t(L31t LA-HL6AńuE1HD[A\A]A^A_]f.AGtL1@PHL4AGtL@HHI9tH3LuufDUHAWAVIAUATISHHFpHtHPHXLlL9u5DHI9t'H3LuE1HD[A\A]A^A_]IFxHHvPHHBHHRHt#H2HBLHi^tIFxHHv HL;0Iv0LAńnAFfL1?PHLVuE1HD[A\A]A^A_]DIG(HݐՐHHHHHHH8OHt1@tHp0LtL)1t Ld#HLYAńdAG\L1 7PHL4AGt L6HI9u,HI9H3LluI(HQRfUHATSLeHLHHuR"HtHpHH荠H[A\]@LH¸HtHrHH[H[A\]fUHAUATISHdH%(HE؋%wU%w}HvH}81HuHEdH+%(HL[A\A]] u;FH^H@L,I9L9tfDHLEtHI9uHUdH+%(u^H[A\A]]fHEdH+%(u;HvH1[A\A]]LH@HvHEdH+%(uH[A\A]]&JH "SH5NEH= bfUHAUIATISH(dH%(HE؋%\ %HFHofH~)EHt)HUHfAE%SIuH}/HuHEdH+%(%H(L[A\A]]Yf uCFH^H@L,I9L9u$@HI9tHLu1 @HUdH+%(H([A\A]]DHFHƒHHt^H0HPHEdH+%(ujH([A\A]]QHvHHuOHEdH+%(u;H(H1[A\A]]IHPIHHcH>HEdH+%( ?HvHeL[A\A]A^A_]AHEdH+%(?HeL[A\A]A^A_]HEdH+%(<HeL[A\A]A^A_]鈂HEdH+%(>HeL[A\A]A^A_]鏋HEdH+%(i>HeL[A\A]A^A_]6HvH><{3Hv LA 01HEdH+%(>HeL[A\A]A^A_]ρHEdH+%(>HeL[A\A]A^A_]馁HEdH+%(P<HeL[A\A]A^A_]}HEdH+%(;HeL[A\A]A^A_]THF0Q3H@3HEdH+%(;HeL[A\A]A^A_]՗HEdH+%(B=HeL[A\A]A^A_]HEdH+%(=HeL[A\A]A^A_]ÀHEdH+%(=HeL[A\A]A^A_]隀HEdH+%(:;HeL[A\A]A^A_]qHEdH+%(:HeL[A\A]A^A_]HHEdH+%(%<HeL[A\A]A^A_]HEdH+%(<=HeL[A\A]A^A_]HEdH+%(:HeL[A\A]A^A_]HEdH+%(:HeL[A\A]A^A_]HEdH+%(?:HeL[A\A]A^A_] HFHtH0HPI\HH}LpHUfomHEH]HUL})pHxH91tLnH0LL>Hx-HpHHpH9uI9uWHEdH+%(:HeL[A\A]A^A_]~HEdH+%( 9HeL[A\A]A^A_]u~HEdH+%(8HeL[A\A]A^A_]L~HEdH+%(;HeL[A\A]A^A_]#~HF(L}HƒHI4HLLpHUfo]HEH]HUL})pHxH9\/tLH0LL<Hx6,HpHHpH9uI9uf.HUdH+%(9He[A\A]A^A_]HEdH+%(7HeL[A\A]A^A_] }HEdH+%(k7HeL[A\A]A^A_]|HEdH+%(8HeL[A\A]A^A_]|~uHF(HtH0HPGHH}LpHHUfoeHEH]HUL})pHxH92.tLH0LL];CHx*HpHHpH9uI9uHEdH+%(6HeL[A\A]A^A_]{HEdH+%(J6HeL[A\A]A^A_]{HvH-3@#3H3HEdH+%(y7He[A\A]A^A_]HEdH+%(8HeL[A\A]A^A_]R{HEdH+%( 6HeL[A\A]A^A_]){HEdH+%(~5HeL[A\A]A^A_]{Hv(HS0#YHH}LpHUfoeHEH]HUL})pHxH9}.tLH0LL9Hx*HpHHpH9uI9uHEdH+%(4HeL[A\A]A^A_]+zf) Ft oV0) H H(L(XHCS(H LHH(HC 8H0fo0H@HD$$ ZH C2H҃HD082@ Ll@2AIM I M92LL[u1HEdH+%(4HeL[A\A]A^A_]yHv>HH}LpHUfomHEH]HUL})pHxH9,tL H0LL7Hx9)HpHHpH9uI9uHEdH+%(4HeL[A\A]A^A_]FxHEdH+%(4HvHe1[A\A]A^A_]*7HEdH+%(y3HeL[A\A]A^A_]wHF-H3LlHXI9uT@HI9CH3Lزu12F tHFH0HPA}HH}LpHUfoUHEH]HUL})pHxH9)tL H0LL16Hx%HpHHpH9uI9uxHEdH+%(2HeL[A\A]A^A_]vHEdH+%(2HeL[A\A]A^A_]HEdH+%(h1HeL[A\A]A^A_]mvHEdH+%(0HeL[A\A]A^A_]DvHEdH+%(1HeL[A\A]A^A_]vHEdH+%(2HeL[A\A]A^A_]RHEdH+%(1HeL[A\A]A^A_]uHEdH+%(A0HeL[A\A]A^A_]uHEdH+%(_1HeL[A\A]A^A_]wuHEdH+%(1HeL[A\A]A^A_]鮇HEdH+%(1HeL[A\A]A^A_]%uHEdH+%( 1HeL[A\A]A^A_]tHEdH+%(0HeL[A\A]A^A_]tHEdH+%((1HeL[A\A]A^A_] HEdH+%(0HeL[A\A]A^A_]tHEdH+%(.HeL[A\A]A^A_]XtHEdH+%( 0HeL[A\A]A^A_]ouHEdH+%(p0HeL[A\A]A^A_]fHEdH+%(.HeL[A\A]A^A_]}HEdH+%(.HvHeL[A\A]A^A_]2F'AE1DIM9'CA9/JDLH0HP=u1HEdH+%(Q/HeL[A\A]A^A_]闅HEdH+%(/HeL[A\A]A^A_]nHEdH+%(?.HeL[A\A]A^A_]uHvHSQoC HC0H LHE)pHD$$SH HH}LP8 HUfoUHEH]H`L})PHXH9*tLH0LLJ10HX%HPHHPH9uI9uHEdH+%(-HeL[A\A]A^A_]qHEdH+%(,HeL[A\A]A^A_]HEdH+%({,HeL[A\A]A^A_]qHvHtL0jHs@H.>.LL[0AHkLLH=0#HEdH+%(,HsHHeLL[A\A]A^A_]0HEdH+%(,HeL[A\A]A^A_]pHEdH+%(h,HeL[A\A]A^A_]pHEdH+%(,HeL[A\A]A^A_]ڂHEdH+%(+HeL[A\A]A^A_]QpHEdH+%(t*HeL[A\A]A^A_](pHEdH+%(+HeL[A\A]A^A_]oHEdH+%(;,HeL[A\A]A^A_]6HEdH+%(*HeL[A\A]A^A_]MHEdH+%()HeL[A\A]A^A_]oHEdH+%(+HeL[A\A]A^A_][ooF HF0H H`)PHD$$OH $HCHO$LhM|M9u:$@IM9)$IuL'Pu1q@HvCLk0M|M9u4%IM9#%IuLǩu1!@HEdH+%()HeL[A\A]A^A_]_nHEdH+%(#*HeL[A\A]A^A_]HEdH+%(J*HeL[A\A]A^A_]mHFH0HP]8HH}LpHUfo}HEH]HUL})pHxH9k!tLH0LL,HxHpHHpH9uI9uHLH{AHH}LpHUfoeHEH]HUL})pHxH9 !tLSH0LL+HxNHpHHpH9uI9uuHvLL +u1HEdH+%('HeL[A\A]A^A_]kHEdH+%(2&HeL[A\A]A^A_]kHEdH+%(P'HeL[A\A]A^A_]mkHEdH+%('HeL[A\A]A^A_]}HEdH+%(%&HeL[A\A]A^A_]kHvH'>'HEdH+%(i'HeL[A\A]A^A_])HEdH+%(&HeL[A\A]A^A_]jHEdH+%(D%HeL[A\A]A^A_]|HEdH+%(=(HeL[A\A]A^A_]|HEdH+%('HeL[A\A]A^A_]8jHEdH+%((HeL[A\A]A^A_]o|HEdH+%(&HeL[A\A]A^A_]iHEdH+%('HeL[A\A]A^A_]|HEdH+%(4'HeL[A\A]A^A_]iHEdH+%(7(HeL[A\A]A^A_]{HEdH+%(V&HeL[A\A]A^A_]BiHEdH+%('HeL[A\A]A^A_]y{HEdH+%(@&HeL[A\A]A^A_]hHEdH+%(k'HeL[A\A]A^A_]'{HEdH+%(I#HeL[A\A]A^A_]hHEdH+%(&HeL[A\A]A^A_]zHEdH+%(&HeL[A\A]A^A_]LhHEdH+%('HeL[A\A]A^A_]zHEdH+%($HeL[A\A]A^A_]uHEdH+%(%HeL[A\A]A^A_]1zHEdH+%( %HeL[A\A]A^A_]gHEdH+%(&HeL[A\A]A^A_]yH}Hu1Lx&^Hu1Lb&1HEdH+%(W%HeL[A\A]A^A_]wyHEdH+%($HvHe[A\A]A^A_]HEdH+%(%HeL[A\A]A^A_]$yHEdH+%(#HeL[A\A]A^A_]+tHEdH+%($HeL[A\A]A^A_]xHEdH+%( HeL[A\A]A^A_]IfHEdH+%($HeL[A\A]A^A_]xHEdH+%("HeL[A\A]A^A_]eHEdH+%(6$HeL[A\A]A^A_].xHEdH+%(m#HeL[A\A]A^A_]vHEdH+%($HeL[A\A]A^A_]|eHEdH+%("HeL[A\A]A^A_]SeHEdH+%(#HeL[A\A]A^A_]wHEdH+%(o"HeL[A\A]A^A_]eHEdH+%(^#HeL[A\A]A^A_]8wHEdH+%( HeL[A\A]A^A_]dHEdH+%("HeL[A\A]A^A_]vHEdH+%("HeL[A\A]A^A_]]dHEdH+%( #HeL[A\A]A^A_]vHEdH+%()!HeL[A\A]A^A_]qHEdH+%(!HeL[A\A]A^A_]BvHEdH+%(!HeL[A\A]A^A_]cHEdH+%(>"HeL[A\A]A^A_]uHFHH0HP-rHH}LpHUfoMHEH]HUL})pHxH90tLH0LL&" HxHpHHpH9uI9umHEdH+%(!HeL[A\A]A^A_]uHEdH+%(I HeL[A\A]A^A_]bHEdH+%(`!HeL[A\A]A^A_]bbHEdH+%(HeL[A\A]A^A_]9bHEdH+%( HeL[A\A]A^A_]ptHEdH+%(iHeL[A\A]A^A_]aHEdH+%(X HeL[A\A]A^A_]tHEdH+%(OHeL[A\A]A^A_]aHEdH+%(HeL[A\A]A^A_]sHEdH+%(HeL[A\A]A^A_]CaHEdH+%( HeL[A\A]A^A_]zsHEdH+%(#HeL[A\A]A^A_]nHEdH+%(HeL[A\A]A^A_](sHEdH+%(THeL[A\A]A^A_]`HEdH+%(8HeL[A\A]A^A_]rHEdH+%(/HeL[A\A]A^A_]M`HEdH+%(HeL[A\A]A^A_]rHEdH+%(HeL[A\A]A^A_]_HEdH+%(HeL[A\A]A^A_]_HvIVHH}Lp^HUfouHEH]HUL})pHxH9otLH0LLsYHxHpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]aqHEdH+%(AHeL[A\A]A^A_]^HEdH+%(0HeL[A\A]A^A_]qHEdH+%(1HeL[A\A]A^A_]^HEdH+%(HeL[A\A]A^A_]pHEdH+%(HeL[A\A]A^A_]4^HEdH+%(HeL[A\A]A^A_]kpHEdH+%(HeL[A\A]A^A_]rkHEdH+%(HeL[A\A]A^A_]pHEdH+%(HeL[A\A]A^A_]]HEdH+%(HeL[A\A]A^A_]oHEdH+%(HeL[A\A]A^A_]>lHEdH+%(nHeL[A\A]A^A_]uoHEdH+%(HeL[A\A]A^A_]\HEdH+%(HeL[A\A]A^A_]\HEdH+%(cHeL[A\A]A^A_]*jHEdH+%(fHeL[A\A]A^A_]nHEdH+%(HeL[A\A]A^A_]H\HEdH+%(HeL[A\A]A^A_]nHFH0HPo&HH}LpHUfo}HEH]HUL})pHxH9tLH0LLHx7 HpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]mHEdH+%(HeL[A\A]A^A_][HEdH+%(HeL[A\A]A^A_]UmHEdH+%(HeL[A\A]A^A_]\hHEdH+%(HeL[A\A]A^A_]mHFH8HpLwHH}LpHUfouHEH]HUL})pHxH9 tLH0LL+Hx: HpHHpH9uI9urHEdH+%(vHeL[A\A]A^A_]lHEdH+%(mHeL[A\A]A^A_]YHEdH+%(HeL[A\A]A^A_]kHEdH+%( HeL[A\A]A^A_]>YHEdH+%("HeL[A\A]A^A_]YHEdH+%(HeL[A\A]A^A_],ZHEdH+%(HeL[A\A]A^A_]#kHEdH+%( HeL[A\A]A^A_]XHEdH+%(HeL[A\A]A^A_]jHv HS(6ZHC0HtH0HPL":H{@裼HtH0HPL"HH}LpHUfo}HEH]HUL})pHxH9 tL'H0LLHxHpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]iHEdH+%(HeL[A\A]A^A_].WHEdH+%(HeL[A\A]A^A_]eiHEdH+%(HeL[A\A]A^A_]ldHEdH+%(HeL[A\A]A^A_]iHEdH+%(HeL[A\A]A^A_]VHEdH+%(HeL[A\A]A^A_]hHEdH+%(HeL[A\A]A^A_]8eHEdH+%(rHeL[A\A]A^A_]ohHEdH+%(HeL[A\A]A^A_]UHEdH+%(HeL[A\A]A^A_]UHEdH+%(gHeL[A\A]A^A_]UHEdH+%(jHeL[A\A]A^A_]gHEdH+%(HeL[A\A]A^A_]BUHEdH+%(HeL[A\A]A^A_]ygHEdH+%(HeL[A\A]A^A_]THEdH+%(HeL[A\A]A^A_]'gHF(H0HPHH}LpLHUfoUHEH]HUL})pHxH93tLH0LLaGHx)HpHHpH9uI9uHEdH+%(HeL[A\A]A^A_]OfHEdH+%(HeL[A\A]A^A_]VaHEdH+%(HeL[A\A]A^A_]eHF0H0HPHH}Lp"HUfo]HEH]HUL})pHxH9tLH0LL7HxHpHHpH9uI9u~HEdH+%(HeL[A\A]A^A_]%eHEdH+%(HeL[A\A]A^A_]RHEdH+%(HeL[A\A]A^A_]dHEdH+%(!HeL[A\A]A^A_]THEdH+%(8HeL[A\A]A^A_]!RHEdH+%(HeL[A\A]A^A_]QHH}LpHUfomHEH]HUL})pHxH9`tLH0LLHxHpHHpH9uI9uH$LNHpHxiHL&HpHxHLHpHxH7LHpHxH2LHpHxeHLHpHxHLmHpHxQHLHHpHxhHcL#HpHxHLHpHxvHYLHpHx HLHpHxHLHpHxHLjHpHxHLEHpHxfL%HpHx@LHpHxLHpHxHLHpHxLHpHxiLHpHx.I9HEdH+%(; HeL[A\A]A^A_]F I9I9L9L9HHHEdH+%( HeLHL[A\A]A^A_]dLHpHx]LHpHxL{HpHxL[HpHx|L;HpHx[LHpHxJLHpHxsLHpHxLHpHx!LHpHxHLvHPHXL9I9I9I9I9zL9QI9I9L9uI9gLHpHxHH}LpTHUfo}HEH]HUL})pHxH9tLH0LLi OHxu!HpHHpH9uI9uHvLHpHx뉾LHpHxiI9ihI9ZHH}LpgHUfoMHEH]HUL})pHxH9tLH0LL| bHxu!HpHHpH9uI9uHpHv+%HpHxLnHH6HpHxRLHPHXdHHI1LHLLHƋC$EE|1CHL0CIHH H9uMDukA}t'IEHLH0HP$IL9 M/AEvA}uIu1LA}(t$Iu@H1LIL"tLLHp?l1 HH}Lp%HUfouHEH]HUL})pHxH9tLH0LL: Hxu!HpHHpH9uI9uHvLHpHx뉾LHpHxiL9i9L9+L9=HH}Lp*HUfouHEH]HUL})pHxH9tLH0LL?%Hxu!HpHHpH9uI9uHvLHpHx뉾LHpHxiI9i>HH}HpKHUfoMHEL}HULm)pHxI9tHH0LL`FHxu!HpHHpI9uI9uHvH HpHx뉾HHpHxiL9i_ZUPKFA<72-(# HEdH+%(u7 H5H= H AH5H=V1LGBH H5H= H 8 H5tH=xsnid_ZUPKFA<72-(#~ytoj[VQLGB=83.)$5 zupkfa\WRMHC>94/*%  f.UHAVAUATSHpdH%(HE1HtYHIIԃHtpHBAL$ HPH9PI$L,AT$AL$ HHH9JAD$HUdH+%(/Hp[A\A]A^]H LmLmHUHHHuLELe@~HHHHTLHDu葼H}toEJHHH9t0HH9s'DH H0HHHrHHH9rMH}t#Ht@tUHH9rKMuݸL9It$LAD$H H5H="uH-DUHAVAUATSH@HudH%(HUHHHw/f.HUdH+%(H@[A\A]A^]HHHx5w@HHH}HcH>@˸HHHp l(f.諸wfD蛸HHHp,g{H8HHC[HHp1H%@L It$ Ht1HIt$(H HL It$ SAńAD$Mt$0H@M$M9uIM9LHu誷L It$(Ht1H3t?It$ H"]xL It$ HFHR61)DH8l1HH %HHHp R L It$He1H}L(IEHEԶL;(tIuHckMe0EmAMM9uofDIM9\I4$Hu1ToHL It$ It$(H?HL It$ AńAD$Mt$0H@M$M9uMIM98LH(uڵH@Hp0:迵HL It$ OWIt$(1H8s莵L It$(Ht1HIt$0HWHL(IuAEMe0Mt0M9@pI4$HIM9L It$(@H / H5C H=t 軴HL It$({SIt$H6q茴L It$ LzLeH0LLH蠯;VHL It$ AD$It$@HHL(IuAĄI}(AEMu0H@M,M9unfDIM9t_LHuDHp LL4IL9u,@IM9tI4$Hu1PDHLHH j@UHATSHtvFHtKt ^fDHv(Iܭu[1A\]ÐCƒwπuHsL[A\]}H ւBH5ZH=yHUHAVIAUATISF H^LlI9u0HI9tH3Lsu[A\A]A^]AF@t)AF %ItHt[L1A\A]A^]@[A\A]A^]f.f.HFxu fDUHAUE1ATISHHHD;hsH@DLAH4HCxuH[A\A]]ÐUHAUATSHHFHttb4@HrI1IuH1[A\A]]fDIu1LtCuHs HL[A\A]]H (BH5tH=fUHAUATSHHFHtluIHrI1I8uH1[A\A]]Iu1LtCt#t;Hs HL[A\A]]H CpBH5H=#ff.UHAWAVAUATSHhHpHxdH%(HE1HHH*6HHpHcH>[HP4Y5t"H]P4wHp HfHUdH+%(+Hh[A\A]A^A_]fD胑H x3"fHx2tH sBH5iH=DcH x1HBHH0HPHˏHux0h#KH^x/tGˎHx.Hp1HD蛋IIH\@&'' IIHx%Hx yHJt)1HHHH)A|$%It$ HHx3{He@*U+g苋HH2x(LeLiLH^fIIHL@&D'I|$ H Jt)1HHHH)AT$&蛈IIH_x"u3Hx -Hj Jt)1HHHH)A|$"fDHHؔkH@ 軄IIHPBwIGHHH HH) L9 AWAGIfHPL$6Hs KL%1HHHAGH)уKIwHH8 AWЃ!EgfAA E1G@AGfA9 KDHH0HP? IAGE9N vH BH5BH=kfD[IIH x$u3Hx -Hj Jt)1HHHH)A|$$.fD裆IIH1 x#u3Hx H Jt)1HHHH)A|$#cfD諉HH3H @* +XÉH x-H mBH5 H=6q HU x) @ Hp0D蛁IIH# xu3Hx H Jt)1HHHH)A|$[fDIIH xu`HBHH0HPH A|$u4I|$ HH Jt)1HHHH)A|$fwHH%wH x wH x H !eBH5H=kvH x #uIIHc x u3Hx ]HJt)1HHHH)A|$ NfDtIIH xz Hx H>I 41HHH)A}L Iu HH  tIIH xu3Hx HJt)1HHHH)A|$+螺fDstHx H QcBH5H=F聼sIIH xu3Hx HJJt) 1HHHH)A|$NfDcrHEHUH@tgZH =bBH5qH=ջD yIIHx{Hp @f<HRAHt4HG /A|$<AD$Af<)I|$(IH:KL51HHHH)A|$It$(HHfDwIHxtHp(Ht1Hz2A|$MIt$ HYd@+wHHP KvIH xHp Ht1H A|$It$(H@uHxHRHp HkuHHxn 1HHfDoHEHUHS@V腹DyIIHxHxHVJt)1HHHH)A|$It$HHf.xHxH bBH5H=fmHEHUH[@<<H ]BH50H=Y蔸@KmIIH@H ]BH5H=QKsIHxu"Hp 1HA|$rf rHHsmHEHUHsPЃ<v ^H =]BH5IH=r護DlHEHUHxH}HHdkH}HEHUrHH7fxHH`wHH uHH %tHEHUH@tsIt$(@^HQf1IH}PHHu-HE1HHp H}mHHBH}HH)HE1HHpH}шHHHE1HHpu4I|$ HJt)1HHHH)A|$ٴHpFHtiHRL9RcbH}HHAHE1HHpE1I|$ AI -#γi4H MOmH5qH= մH ~aBH5RH={趴H ZBH53H=\藴yD*;H H5H=<觲ҲMH QtH5EiH=t H paBH5|H=H \BH5NH=w貳XH `BH5%H=N艳H _BH5H=/jH S^BH5H=KH ]mH5H=a,H cBH5H= H vbmH5H=#H aBH5kH=ϲH (^BH5LH=u谲H t^BH5(H=Q茲H XZBH5H=-hS~ Of.UHSHHuHUHt4HFHHHHHvHtH}vH]H}׻HHH]fDUHATISHHt:ID$xf)Et Ho)MHuHUHH[A\]-DH1[A\]Ðff.UHAWAVAUATSHHH}dH%(HE1H ~IIHRHt!Hv HtH}tpA}E}HMMu01HMEupHII9tcA}ID ~AuH9sVIvAoHEH}HuHu)E(u1HUdH+%(ubHH[A\A]A^A_]@H YH5!H=J5H nXBH5H=,ff.UHSHHHUdH%(HE1Ѓu+HHt^HUdH+%(ukH]@PwHU HtH2HBHUdH+%(u5HH]H\@Ht HpH}HuHbff.UHAWAVAUATSH(dH%(HE1HtWFHbwIH IHcH>FHPLtPI9t$@H31LcAĄtHI9uAHEdH+%(HeD[A\A]A^A_]DHv1tqH{XHHEdH+%(HeL1[A\A]A^A_]FLfLtM9u+ @IM9 I4$1LuE1NHv1tH{ 蘰HHEdH+%(pݮDHv1MtH{(萰HHEdH+%(8FLf@Lt@M9uX f.IM9A I4$1LuHI9u*CHHELeHDHEH1H9tL莧H01L1HUu HEHHEH9uHuDHvLHEHULåHEHUrfDHlbHs1LHs(1LCL4Nd3@MM9ufIM9I4$1LEuHs1L.AĄCL<Nt;(MM9u}fDIM9gI61Lu=CL4Nd3MM9uIM9I4$1LuCL4Nd3MM9u %fIM9tI4$1LiuCHHLdM4M9uAIM9.I4$1L%u|CHHLdM4M9uIM9I4$1Lu4CHHLd@M4M9uIM9I4$1LuCHHH\(L4L9u%HI9H31LNuCHT@HL$L9uHI9H31LueCHT@HL$L9uHI9H31Lu%CH@Ld@M4M9uIM9I4$1LuHs1LvHs(1L`CL4Nd3@MM9uJIM97I4$1LutHs1L^Hs(1LHCL4Nd3`MM9uIM9I4$1LuHs1LHs(1LCL4Nd3hMM9uIM9I4$1L=uHs1L&~Hs(1LhCL4Nd3`MM9ulfDIM9tZI4$1Lu(CHHH\@L$L9u[HI9KH31LuCHHLd`M4M9u?IM9'I4$1LEuCHHLd`M4M9u6IM9I4$1LuTCHHLd@M4M9u.IM9I4$1Lu CHHLdhM4M9u %fIM9tI4$1LyuCHkLdhM4M9ufDIM9I4$1L5uCHkLd`M4M9ufIM9I4$1LuLCHkLd`M4M9ufIM9I4$1Lu CHkLd@M4M9uhDIM9tWI4$1LyuCHHLdhM4M9uifDIM9tZI4$1L9uCHHH\@L$L9uHI9H31LuM{0HۡIII4$1LIM9uH̡III4$1LIM9uH轡IHH31LHdL9uCHHLd`M4M9unIM9tZI4$1LupCHHH\`L$L9uHI9H31Lu-CHk(H\`L$H31LHL9uHUHAVAUATISHH6HSuE1HeD[A\A]A^]oCH L$HC(HD$H AńtH[@HtDsEtHIIH L9tHLuxfUHAUATSHHFHttYT@HvIIu H[A\A]]fSуwɀuH{(tIuHL[A\A]]H 1@BH5=H=f衘\ff.UHAWAVAUATISHH8HF8u5f)EHuHULuQE1HeD[A\A]A^A_]@E1HD;hH@DLAH4`HC8tfDSHK(H LHHMUfoUHEHD$$H AƄmH֦H5@tWLh MtNAEtFAIIMfDI M9t'LL ~uo)MHC8HH-HHP Ht&H2HBLHHC8tHHp(Ht1LC<#HHH‹CT %LD9rMHfA1A׃L9M>D9rMHfA1A׃L9M>D9rMHfA1A׃L9M>D9rMHfA1AǃL9M>D9rMHfA1A׃L9M>D9rMHlfA1A׃L9M>D9rMHfA1AǃL9M:D9rHLH|fA1A׃L9M>D9rMH|fA1AǃL9M>D9rMHfA1A׃L9M:D9rHLH\fA1A׃L9M:D9rHLHfA1AǃL9M>D9rMHfA1A׃L9M:D9rHLH|fLLEhLH ^ 1L#`uH5M LhLH 9 1L_H5 LgwZHEdH+%(uH=3 "\HEdH+%(uH= \HEdH+%(uH= [HEdH+%(uH= [HEdH+%(uH= [HEdH+%(aH= [HEdH+%(BH= x[HEdH+%(#H=j Y[HEdH+%(H=K :[HEdH+%(H=, EdH+%(H= ZHEdH+%(H`H= HZHEdH+%(zH= ZHEdH+%([H= ZHEdH+%(D9rMH fPHHHHPHyMHHITHTHH)I)j1҉уI4H49rOH2H@1HLHp_HHHHt@HH$@ɉATT@ɉATTaHMHʃ1@t :A8@tD :fE 8H :A8H@HxHHItHtH)LH)H:HMHsc1t :A8tD :fE 8H:A8A1A׃L9MD=D9rMDHA1A׃L>MD=D9rMDHtPATTH HHg@ɉAT TgATfTH HH5JAT fT6HLLHoHWH{H{HHfUHAWAVAUATISHHxdH%(HEȋF(AAAADHA  Ac A A' DAAv>A?B AAv"AXH=ɚ;\ DpHC47-HHHH[DADHL}pLk8HELHLs0IuHEHEESH?H+EL9 LLLcH?H9EP H5; L\cHSXHsPH?H+EH9 L5cHHEHEHHqHHAH9HUHQHUH?HEH)H1HAAH  HE H5f HHhbHHpH`HHqHHAH9H`HQHpH?H1AH)HsHAHKHhH9 H`HHHp/bHHPH@HHqHHAH9H@HQHPH?HHH)H1HAAH' H@H5\ HHxaL0HHL@L HH9H HPH0HH H@HL(@I L9HHH90s#HH9ZHH9HH?L)H9L L`HHpHPHHHH91HHHHHH@@H0H?H+H H H5 HHT`LHpHPLHH9HHHH@H0HspH@HKxH?H)HH9SHHH_IL$HxHpI $HH9I$HPIT$H8HIt$H@@L9tHHpSHHH9tHHpSH L9tH0HpSH@HH9tHPHp^SH`HH9tHpHp;SH}HH9t HEHpSH}HH9t HEHpSHHH9tHHpRHEdH+%(@HxL[A\A]A^A_]fDHH11L LHHpHPHHHH9tLHHMЃA1AσL>M:D9rHLHwDADA DfDLHHMЃ^1t :A8tD :fE 8Ht:A8HALHHMЃ1t :A8tD :fE 8Ht:A8HALHHMЃR1t :A8tD :fE 8Ht:A8HAILHA1At 27AtD 2fD 7HAt27L@fHMHY1t 9A8tD 9fE 8Ht9A8HPHV,2pAt$tftHp HHHLL9zLHHMЃd1t 9A8tD 9fE 8Ht9A8HPHpIIt$LD7LD1MD$IL)I)Ƀr1ɉ΃M1M09rHp4A1AσL>MD=D9rMD H~E1AփH<1I<6D9rI<HA1A׃L>M:D9rHLHA1A׃L>M:D9rHLHA1A׃L>M:D9rHLHtA1AσL>M:D9rAAAApAt$ttHprHEdH+%(;H= HAHEdH+%(HH= H@HEdH+%(H= L @HEdH+%(H= @HEdH+%(H= r@HEdH+%(HEH=` HhH@HEdH+%(u^H=> -@HEdH+%(uCH@H= Hx@HEdH+%(uH`H= Hp?=HNH"HIHHHHfDU1H=HATSHPdH%(HE1Ux@Hu@.GICExHconfig:3H9Et/1HUdH+%(uHP[A\]fD1}2-63uRHPHHHPHBൃBKLHCHCHCM6HpLHxHL9LCHLD11I)@BIFfo HH@IFhHH)PH9tHHpHHiDHHHXEHHHH@H@IGLPH0HPIEL@H@HFH8HDžHHHSHEdH+%(u0HH[A\A]A^A_]HHI>8I鳯I鯯HH麯H˯UHAWAVIAUATISHHFHIA1I$<AՄuI$D<ID$HH9rIvIT$I6I $H9t6IIL$INIFLI$ID$AD$H[A\A]A^A_]ÐHsUttD fDDID$fHwIT$H7I $H9qH IHH| H|H~HH) 0I)r1ƃM1L79r늋D DyUHAWAVAUATISHLwPLoXdH%(HE1M9LL}HHH9tHHpEHHHt$HUHHLHHǃHtHHH{pHH9tHHp5EH{PHC`H9t HC`HpEH{0HC@H9t HC@HpEH{HCH9t HCHpDHI9Mt$XHEdH+%(u=IT$pHI|$h1[E1H A\A]A^A_] >HEdH+%(uJ5UHAWAVIAUEATISHM$HH@DL8dH%(HE1H`HHHI$HHHH0 {I9GLk C1LL`CL> LLkLLHCC BLLELLI2H{HHI9L9TfHnHK HCCHHHHDžHL9tHHpBH`HpH9tHpHpBHEdH+%(HeH[A\A]A^A_]HE1ɹLHH@LTH(Hj軁AYAZHHSHCHC HCH9;HH{HC HSHtHLIIHH{HSHf.DEQfDL9tfHnHCCLLLTHH9tHHp]AIDMDL8H`TH@HfHHH(HHDžH8f7M$MH`LhML@H MHMH@Md$MtVMl$(LI|$ M9IFHt H7uM)I9}HI9~DxMMd$@ML@H M9tFMn(LIv M9IFHtH6uMM)I7I|Dy'HHH0HXLHX0IƋH8I~HAF@s9HHIFhfHH(H9nHHpY?Y@H@H(Lbu?t?CLH{LCCL:uHz:H@M6L EAjLHSH5E L\HC CHC1L9CHCC ATLAVL(LLO=XLZLHX\H{L7L9L9f.HH{ HJs77@s tftDH7Hs LD7LD0LC(IL)H)ǃe1ƃL 7M 09rJfDLHRH5 L#[fDLHQH5 LZiM*7ɉs tt.H镥I阥I鯥I鶥@UHAWAVIAUIATMSHHHLdH%(HE1M>H} 3Lw HGLL+LwLGHGG Lu ;HLLH&>H8IAYAZH>H$LHHCHHI9L9oHK HSKHqHHHDžHL9 HHp0;HpL`HDžhHHMLLH`H0LLLƅpu P_AXHHSHCHC HCH9JHH{HC HKH`HH9tHpHp4:HEdH+%(FHeH[A\A]A^A_]HH9tHHp9H@DMDELH0HHH贑IHIHHHpH9tPH@H( HEH@HPH9HPHpN9fHE1ɹLjHL,LYxXZDESLH{LC=Ld4JHL,fHH81[L;D9rL H1B&HPYDA1A׃L9M:D9rH`LHPf.pp pHHHL9kyILHAj1APA3AL@LPHHMЃ1HALXHHMЃ1uZEHATL`HHMЃ1@@:A8yL`HHMЃ1@@8A8HIHA1AσL>L;D9r9A8D 9fE 8H9A8D 8fE 8Hk8A8RD :fE 8H:A8:A8D :fE 8H:A8|:A8BD :fE 8H':A827D 2fD 7H27E1AփH<1I<4D9rI<HoA1A׃L>M:D9rHXLHA1A׃L9M:D9rH`LHA1A׃L>M:D9rHPLH(A1AǃL9M:D9rH`LHqg]SHEdH+%(H= HEdH+%(H= HEdH+%(H=Ű HEdH+%(H= HEdH+%(H0H= HhHEdH+%(u^HPH=W H(?HEdH+%(u5HH=. H HEdH+%(u H= HEdH+%(uH= HHEdH+%(uHH=ï HHHEdH+%(uH= HEdH+%(uH= uHEdH+%(gH=g VH錈HHHHHzHHHHIHHH饈HHHHHH銈ITHHHHpH鱈H龈H鲈H隈H骇HHHH&H镇H~HHHHЇUHAWAVL}AULmATISHXLvXH^PH}dH%(HE1I9u5^fDUH}L9t HEHpWHI9t+HLLEtMtUH5 LH]HH]V HMHuHUHA AHyAHHA+ H}H9t HEHpHEdH+%(HEHX[A\A]A^A_]MH]CHEHS KHMHSL9tHUHBHEHB HEHHHAs1uwtA7H]@s tՉAtftf.I7H]Hs I|7H|2H{(HH)I)׃r1҉փM7L79rrA7s Att\ Hsff.UHAWAVIAUATSHHHHVPLfXMdH%(HE1L9t^IIfDIM9tDHLaQtMLLLHEdH+%(uXHHL[A\A]A^A_]LeHLHMLH 豁H}HEH9tHEHp H霅@UHAWAVLAUIHATSHLHxdH%(HE1!IHL2s„kCHHCHHS HSH9>HCHHC HKH}HEH9t HEHpHUHEHt%HH+HHpUHEHEHtHpHHPH`H9tH`HpfH0H@H9tH@HpCHH H9tH Hp HHH9tHHpHEdH+%(THxH[A\A]A^A_]M}XM;}`LLHIEXLMeXIT$It$I}hH?I+EpH9 C$LH5\ LHLLHC HCH{HCHCHHL9tHHpHHH9 HHpIMPLHm۶m۶mH)HpHxHHH$I$IH9iHpI9H HhH9HHxLE1DGHDž`HLpHx@LLGIIH9tIHpIIHt,HH}HxIAIIdžHtIHI~pIH9tIHpI~PIF`H9t IF`HphI~0IF@H9t IF@HpNI~IFH9t IFHp4IIM9HpIHt Iu`H)HhH`MeXHIMPH)HHIE` DHq@8@{ @D0fD2HH$I$IH9HFH<HhH)H:HxLIH%EHpL`I9fH8H{ LD8LD:LC(IL)H)Ѓ1҉׃L 8M 89rfDHhH[8{ D0D2HEdH+%(uHEdH+%(uH=ä HEdH+%(u^H$I$IH9HFHhHiHEdH+%(uH= _HHH f.UHAWAVAUATSHMpM8HPHHHLL)dH%(HE1H9HHvPIHK`H)H9LeHUM9LXI1@EuAH}L9t HEHp3IM9LHLe}tUtHLXEIU HuHMIUAEEAEEAEHEH9[IEHEIE IMHEdH+%(HĸL[A\A]A^A_]fDLXHHfHE)pL LpM9tsHh11HX)HI HHxM9tAHxHuI$HhH9uLpHXLNI M9uHPLchHPH0H?H+CpH9"LLppHpHxLH{H)HOHoIE AEI}1AEHhAEIEHDžh %Hhfo IEIU fo @HhIUIEHpHFHuH)5HCXHL@HXH)H8L{XLsPHXL@HM9`IHpH@HXL(H0LIfDLHU@HHH9tHHpBHHHt+HpHNHXHHHǃHtHHH{pHH9tHHpH{PHC`H9t HC`HpH{0HC@H9t HC@HpH{HCH9t HCHpuHII9H0LH@L(LsPMt9Hs`LL0H@L)HXL0H@HXH8L HKPLK`HHCXM8MpmfDLeH5 H]HLH]LpIE HuHUI}AEAEHIEH}H9qHEHpp_Hqs2@uv8A} @D0fD2xfH8I} LD8LD:ME(IL)H)ЃG1҉׃L 8M 89r,8A} D0D2HEdH+%(u HEdH+%(u H= HEdH+%(uH= LpHyHyHyfDUHAWAVAUATE1SHHLHdH%(HE1H@ƅ@HH0HHDž8HL9I?HEH{fE4I](LpHEMu LEHsHHpHDžx$LH+xHH5ULLH+xH9>HLLLH+xHH51 LH`HHHpHPHH9HPHPH`HPHXH@@HXHLH+8HPH9TL0L5HPH9tH`HpY HpHH9t HEHp9 HEH]LEHDžxHHHsHpLH+xH9<HHLL9xH5 L{HxLH+8HpH9LRHpHH9t HEHpr AH}HEH9t HEHpR LIH9t>HHIU IM@L0k}bE]DHLHHI9I?HEHvfDuE4I](LpHEMu LEHsHHpHDžx2LH+xH3H5RL LH+xH9HLLLH+xHH5? LH`HHHpHPHH9_HPHPH`HPHXH@@HXHLH+8HPH9L0LCHPH9tH`HpgHpHH9t HEHpGHEH]LEHDžxHHHsHpLH+xH9IHHLL9x H5 LHxLH+8HpH9L`HpHH9t HEHpAH}HEH9t HEHp`LIH9tH= HEdH+%(H= L0HEdH+%(H= HEdH+%(H=q `HEdH+%(H=R AHEdH+%(H=3 "HEdH+%(}H= HEdH+%(^H=~ HEdH+%(?H=~ L0HEdH+%(H=~ HEdH+%(H=~ HEdH+%(H=r~ L0ZHEdH+%(H=L~ ;HEdH+%(H=-~ HEdH+%(wH=~ HEdH+%(XH=} L0HEdH+%(2H=} HEdH+%(H=} HEdH+%(H=} zHEdH+%(H=l} [HEdH+%(H=M} HEdH+%(H=0{ HEdH+%(zH={ HEdH+%([H=HEdH+%(<H=z HEdH+%(H=z HEdH+%(H=z HEdH+%(H=vz eHEdH+%(H=Wz L0?HEdH+%(H=1z HEdH+%(uH=z HEdH+%(udH=y HEdH+%(uIH=y HEdH+%(u.H=y HEdH+%(uH=y L0mHUHUHVH VHVHUHVHVHUHFVHVHWHL0UHUH,UHUHUHUHL0UHUHUHL0UHUHUHUHL0CVHTHTHUHL0UHpUHUHL0\THL0THUHUHUHU@UHAVAUATIH}SLHPdH%(HE1}EI|$@fH}HEID$H9t HEHpI$HtuMM)II|"DȅHH]HH[A\A]A^A_]fDH]f.UHAWAVAUATSH_HLwH]ML&L~ MvMtTMn(LM9IFHtI~ Lu!LL)H9}HH9~ȅxLMvMuH9]tELk(LM9IFHtHs L>uMM)II|"DȅHH]HH[A\A]A^A_]fDH]f.UHHIFH9t IFHp=IHM9uLxMtHuLL)IEXLHw 1L\ t;HgH5S HIM}MuM}M}HPH@H@IEMHiHEdH+%(u H=g HEdH+%(uH=g HEIFHEf.UHAVAUIATISHH@9dH%(HE1tJHC CCHCC HCHEdH+%(H@H[A\A]A^]fDLuIT$LLEUH}HEH9t HEHp[H5; LLeHLeHC HuHUCH{CHHCjH}L9DHEHp2MxUCHEHuHS KHMHSH9t!HCHEHC HK@MHqs/@uot8@{ @tˉD0fD2f.H8H{ LD8LD:LC(IL)H)Ѓr1҉׃L 8M 89rm8{ D0D2YAHD@fDUHAWIAVAUIATMSHHHCLs0HGHVHCHH}HHHC@IWLHC0I7C(HHC`IUL{PHCPIuLHHIT$H{pHCpI4$HHfHǃHǃHǃHHǃƃƃH[A\A]A^A_]H CHBHBff.UHGHAWAVLw0AUIATMSHHHGHG@GHG0HGHBw(H2LHHHC`IUL{PHCPIuLHHIT$H{pHCpI4$HhHfHǃHǃHǃHHǃƃƃH[A\A]A^A_]IBIAIAfUHHAWIAVAAUMATMSHHHSHGHSHPH6H}HHC@Ds(IWHC0I7Ls0LHtHC`IUL{PHCPIuLHUHIT$H{pHCpI4$H5HfHǃHǃHǃHHǃƃƃH[A\A]A^A_]H@H@H@ff.UHGHAWAVAULoATISHLs0HHGIT$HvLH^AD$(IT$8LC(HC@HC0It$0H9HC`IT$XL{PHCPIt$PLHHIT$xH{pHCpIt$pHHfHǃHǃHǃHHǃA$ƃH[A\A]A^A_]H?H?H?HHHOHHHzHvH9HrHpHrHpHHHz@H(HrH@@Hz0Hp0J(HH@H9$Hr0Hp@Hr@Hp8Hz`Hr8HH0HH`H@8@@HzPHpPH97HrPHp`Hr`HpXHHrXHHPHH@X@`HzpHppH9HrpHHHpxHHpHfH@xHrxƀHHHǂHoHfHHLHHHǀHHH9HHHLHHǀƀHHLHHHǀHHH9nIp@9dDD@DD1fDD7L9Hp8LFAAaEp@@r@AEBtfBtHp8HpXLFAAEp`@r`AEBtfBtHpXHpLFAFAEp@rAEBtfBtHpHpxLFAAE]@AAEBtfBtHpx-LILANLNLLOIL)I)r1AOO9rLHp@IHr@DLL1LL7LJHIL)AI)AAA1M;M9D9r@HpIHrDLL1LL7LJ IL)AI)AAvA1M;M9D9rY@Hp`IHr`DLL1LL7LJhIL)AI)AAA1M;M9D9r@HIHDLL1LL7LIL)AI)AAA1M;M9D9riDDDD1DD7LEBtBtHpx-pErBtBtHpHp`Er`BtBtHpXp@Er@BtBtHp8SfDUHAUE1ATSHHW8H;V8tHD[A\A]]@HIHtHv0H08uHSXE1I;T$XuHtIt$PH{PuHSE1I;T$uHtIt$H{uAD$(E19C(wHSxI;T$xhAHYIt$pH{p譿A@f@w@1@fUHAWAVAUATSH_HLwH]ML&L~DMvMtTMn(LM9IFHtI~ L u!LL)H9}HH9~ȅxLMvMuH9]tELk(LM9IFHtHs LƾuMM)II|"DȅHH]HH[A\A]A^A_]fDH]fUHAWAVIAUATISHHHM$ HHdH%(HE1L9kLuHP LIHH@LYEuiUtmMCHEHuHS KHMHSH9BHCHEHC HKHEdH+%(HHH[A\A]A^A_]DMH}HEH9t HEHpLLHxHIH@XH9t IEXHpI} IE0H9t IE0HppLH5to LI$@HLeLeHC HuHUCH{CHHC蚵H}L9 HEHp0IH~ H,@UHqs7@u{8@{ @D0fD2H8H{ LD8LD:LC(IL)H)Ѓ[1҉׃L 8M 89r@8{ D0D2,荶H4UHAUIATISHHxHIĀHHdH%(HE1L9Hp@LeLQEu`UtdMCHEHuHS KHMHSH9HCHEHC HKHEdH+%(\HHH[A\A]]ËMH}HEH9t HEHpkH5Km LLmHLm衳HC HuHUCH{CHHCzH}L9lHEHpZIMH| H*:UHqs7@u{8@{ @D0fD2H8H{ LD8LD:LC(IL)H)Ѓ1҉׃L 8M 89r8{ D0D2mH2UHAUIATISHHHHIPHHdH%(HE1L9Hp@LeLH=Eu`UtdMCHEHuHS KHMHSH9HCHEHC HKHEdH+%(\HHH[A\A]]ËMH}HEH9t HEHpKH5+k LLmHLm聱HC HuHUCH{CHHCZH}L9lHEHpZIMHz H(:UHqs7@u{8@{ @D0fD2H8H{ LD8LD:LC(IL)H)Ѓ1҉׃L 8M 89r8{ D0D2MH1UHATASHHHHPH9tHx@[DA\]w0[A\]Ðff.UHAWIAVAHN(AUEATISHH~ HHHULEdH%(HE1HxHpԢIO(H9Mw0M:M,$Md$HhILMMd$MtUMt$(HI9IFHtI|$ L蝶uI)޸I9}HI9~DxMMd$MuIHhL9xtBMw(LM9IFHtIw L7uMM)I.I|DyHEHpLHUHE }IAG@HMLmLeH5&h LLeH~HC HuHUCH{CHHCWH}L9t HEHpHEdH+%(HeH[A\A]A^A_]@IHu*HzIHuHP-M_IALL`΃E\Ih\HDhIHEHPH`HEPAUjjjVDAPEHh3THMH@‰HhpIHuEMHEMw0hM_HEH`ILxLhHLHMMMmMtIMu(HI9IFHtI} HuuI)޸I9} M9~DxMMmMuIH`L9xMw(LM9IFHtIw H}觳uMM)IIDxhH5e LmHLLeAG@LeHC HuHUCH{CHHC@HEH5Ku HHH]OwLxHEHpLHUHEyI^fDHEHHH"'LxHDH=tHD H+H+fUHAWLAVLAUIHATISHLHHHdH%(HE1I9'Ls M $1CLCLLLsLLHCC LL:LLIT:H{HHI9?L9fHnHK HCCH.HHHDžHL9tHHpmHEdH+%(HeH[A\A]A^A_]1H5L L:H5L Ht+HLH@L@I9I $Hr H hDHtHLHH{HSHf.L9tfHnHCCLLLHI4$HH8HID$H I9IFHtL@IT$IL9dI4$HpH`H(HLH@H`)HE1ɹLHHHLTH0HjAZA[DESLH{LCELH`H@H9tHpHp*HH8H9HHpfDHH{1HHHiH`HTPqHHHfHHHHDžH0IHI$MD$HMLHLIMHLHfH[HtoL{(LH{ M9IFHt Lxu"MM)I9}HI9~DȅxIH[DDE fDLHMHLLM9tQM}(LIu M9IFHtHLHڬLHuM)I,I|DyHXLLLXzIŋL0I}HAE@L躯HHIEhL_mHHH0L]u4LSH{LCOLHLk L۰HHHM $L0HLLCLCLkHCC P1LL ZLYIL HCHHHI9tL9fHnHs HKCHtrHHHDžHL9HHp=M L9t'fHnHKCLLLHtHt,LAH{HHSHWH{HHEdH+%(uHH5E L1H=:訤H#I#H#I#H#ff.UHAWL AVIAUIATISHHdH%(HE1HHHHxI9t@IHHHEdH+%(HeH[A\A]A^A_]@HHEE1LLELHHpjUAXAYuQuH}uKEHMSHUECHC HCH9HEH{HC HSTD}HEHhH9t HEHpI6}_EHEfHMLHEEHhHMHEHpE&I$(HIMnHXMLPHHMHIL` @MmMtWM}(LI} M9IFHt Hȧu"MM)I9}HI9~DxMMmDL`MHXLPM9tHM|$(LIt$ M9IFHtHHNuMM)I*I|DyHxHULLuIċEHpI|$HAD$@8HEHID$hgH}HhH9rHEHp&`HpLL~EuNUtNCUH{HuECԴH}HhH9HEHpïfDMuH}HhH9t HEHp蔯IMIH5H>JfHJs787@s (tftDH7Hs LD7LD0LC(IL)H)ǃ1ƃL 7M 09rMS7ɉs ttHUHAWMAVEEAUADATADSHH8H~DdH%(HE1tM:D9rHPLHLfA1A׃L9M>D9rMHtLPI HKI| H|H{HH)I)ÃMك1M L9rHpIHsLD7LD1LCIL)I)Ƀ1ɉ΃M1M09rfD :fE 8H:A8A1A׃L9M>D9rMHoe[QGHPҋKLLp҉sttHptftHpHEdH+%(uH`H=h/ HXP+HEdH+%(uH=A/ 0HEdH+%(uH=&/ HEdH+%(uH= / HH`HXXHwHHH4HHqHsH=HHW@UHAWIAVLuAUIATISHHH9dH%(HE1UQIT$LLEEumUtqMCHEHuHS KHMHSH9HCHEHC HKHEdH+%(yHHH[A\A]A^A_]fMH}HEH9t HEHp;I}KxfH5F LLeHLedHC HuHUCH{CHHC=H}L9RHEHpӜ@fDIMHU HUHqs7@u{8@{ @D0fD2H8H{ LD8LD:LC(IL)H)Ѓ1҉׃L 8M 89r8{ D0D2p-H3UHAWAVLpAUATISHLM$HxH`dH%(HE1hrI$LhL9IHELIU IM@HHhBEUMCHEHuHS KHMHSH9HCHEHC HKHpHEH9t HEHpHEdH+%(9HxH[A\A]A^A_]ÐM-H}HEH9t HEHp諚LLpHxHIH@XH9t IEXHp胚I} IE0H9t IE0HpipL\H5H@H[A\A]A^]ËM}H}HEH9t HEHp諗H5@ LLeHLeHC HuHUCH{CHHC躆H}L9jHEHpPXUHqs7@u{28@{ @!D0fD2H8H{ LD8LD:LC(IL)H)Ѓ1҉׃L 8M 89r8{ D0D2͇H3 UHAWAVIAUATISHHHM$HHdH%(HE1lL9kLuHP LIHH@LEuiUtmMCHEHuHS KHMHSH9BHCHEHC HKHEdH+%(HHH[A\A]A^A_]DMH}HEH9t HEHp蓕LLXHxHIH@XH9t IEXHpkI} IE0H9t IE0HpQpLDH5$> LI$HLeLeqHC HuHUCH{CHHCJH}L9 HEHpIH N H@UHqs7@u{8@{ @D0fD2H8H{ LD8LD:LC(IL)H)Ѓ[1҉׃L 8M 89r@8{ D0D2,=HUHAWAVAUE1ATSHHLb(H`HxdH%(HE1HƅI$HXHID$HDžHH9hI?HH9{LFt܋AAAADHA ; AcR Af A'N DAAv>A?B AAv"ApH=ɚ; DhH@C4.-H0HH0HڕADDH0$CAAAADHA m Acn A A'j DAAv>A?B AAv"AH=ɚ; DhHEHM-HC4.HMHHDDAH}TH11AH HMHpHpHHHHH9HpHPHUHPHxH@@HLH+xH( Hp H5bJ HHpœL`HHL@LPHH9HPHPH`HHPH@H8LX@I L9mH0HH9`s#HH9H@H9zHLL)H95 LPL H HpHPHHHH90HHHH HH@@H0LH+HN HH5O HHh肛LHLHHqHQH9HHAHHALH+H1HHAH9 LL HL9tHHp0HHH9tH Hp HPL9tH`HpHpHH9t HEHpюH}HH9t HEHp贎H0HH9tH@Hp葎\8襉IHHEM L覐HIHHAUHHEL9}UHH5P ЙHHpHpHHHH9HpHPHUHPHxH@@HxHLH+HpH9VL\HpHH9t HEHp|H}HH9t HEHp_AHH9HxL`(MHxH`H}LHH{UgEH}HEHMESHUCHC HCH9HHEH{HC HHPHHXH9tHHp|HEdH+%(hHHĈ[A\A]A^A_]HH-fDHH1HEHHHELLfHHUfDHH11LPFH HpHPHHHH9LHHMЃA1AσL>M:D9rHLHDADAcDA zDA CDI$HHHt It$H)LHEH9t HEHpԊEMHHLHHC CH{HCHCyDHMH1t 8A8tD 8fE 8Ht8A8HQH0HHLL9ILHA1At 27AtD 2fD 7HAt27L@LHHMЃ1@t :A8@tD :fE 8H:A8f.LHHMЃ1@t :A8@tD :fE 8H(:A8f.LHHMЃ1t 9A8tD 9fE 8Ht9A8HP@M H5^1 HL}HL}LwHHuHUHC CH{CHHC{wH}L9HEHpmHJcD7H@s -tftfDA1AǃL>MD=D9rMDH*A1A׃L9M:D9rHLHE1AփH<1I<6D9rI<HVA1A׃L9M:D9rHLHA1AσL>M:D9r|A.AAA AAAAH7HHs LD7LD0LC(IL)H)ȃ1ɉ΃L 7M 09r[x7ɉs ttyHEdH+%(uH=i LPQy,wHEdH+%(uHpH=; Hp#yHEdH+%(uH= yHEdH+%(uH= LxHEdH+%(uHH= HhxHEdH+%(YH=ÅnHEdH+%(:H= xHXHwHL!HHZHLH!HLHLfDUAAHAWAVAUATIHuSHI$M$HXdH%(HE1UM聢I9PLuHP(LIL2EujUtnMCHEHuHS KHMHSH9+HCHEHC HKHEdH+%(HXH[A\A]A^A_]fDMH}HEH9t HEHp蛃LL`Hx0IH@@H9t IE@HpsXLfH5F, LI$HLeLerHC HuHUCH{CHHClrH}L9$HEHpDDDH5{HfDUHqs7@u{8@{ @D0fD2H8H{ LD8LD:LC(IL)H)Ѓr1҉׃L 8M 89rW8{ D0D2C]sHUHSHHJdH%(HEWHEdH+%(u HH] sf.UHAWIAVLuAUIATISHHH9dH%(HE15IT$LLEumUtqMCHEHuHS KHMHSH9HCHEHC HKHEdH+%(yHHH[A\A]A^A_]fMH}HEH9t HEHpI}.xfH5) LLeHLepHC HuHUCH{CHHCoH}L9RHEHp胀@fDIMH9 H0UHqs7@u{8@{ @D0fD2H8H{ LD8LD:LC(IL)H)Ѓ1҉׃L 8M 89r8{ D0D2ppHMUHAWAVL}IAULmATISHLHDM?D9rMH1mSHPf.pLHHHMЃ1HALHHMЃd1@x@R:A8f.HHHLxL9ILHA~1A%AAL@LPHHMЃ1lHAAHIIHʃ.1@(@@:A83fDHMH%A1AσL>M?D9rMHD :fE 8H:A8@~:A8HAD :fE 8Hu:A89A8HPrD 9fE 8Hu9A8hD :fE 8H0:A8@:A8HAD :fE 8Hul:A8R27L@D 2fD 7HAu27AA1A׃L>M:D9rHPLH1vE1AփH<1I|5D9rI|1HA^A1A׃L9M:D9rHLH1@A1A׃L9M:D9rHLH1@sA1A׃L>M:D9rHHLH1 H]HpH5 HpH]HH]\HHuHUHA AHyAHHA[H}H9HEHphlHH8HpHpA11H % eLuHHHpLpHH9HpHPHUHPHxH@@HxHHpH?H+H9HHH@YwHpL9t HEHpkH}HEH9HEHpbkHÃHpVHMHʃs<1@t :A8@tD :fE 8H:A8A1A׃L 9M >D9rMHHEdH+%( HH= H@]HEdH+%(HH= H ]HEdH+%(H0H= Hv]HEdH+%(HPH=a H(I]HEdH+%(uWH=? .]HEdH+%(uLH{CLK}bL%YH`HHpH)f]mL9twA;G rkuA;G$r]DI0LAG(WHHIGP/HL9zHHp\ef.XMdIHfLAG(HIW IG IG@IG0AG8AGHNIHH9t HHLeRH HH(H`H@]foHfHDžH`Hp)Hp)`HbH)[HHH)H@[6LXM[st.HHCzHLVH8HHS LL+LHAD HSLCCHCC P1ZLL(]ZLYIL'JH{LTHL96HHpZ!fDHJ77@s tftHHyMHHITHTHH)I)1҉уI4H49rH7Hs LD7LD0LC(IL)H)ǃ61ƃL 7M 09rEHBT!BT X;B 1;B$@ATTHKHP7ɉs ttATfTHKH!OJHHIIUff.ULAHAWAVAUATSHHHH(HXL8AщD@L dH%(HE1X\HLvI9HLk HCIĹHLkLޣH1LLCHCC ARVLLZHIZYHHLHHCHHI97L9oHK HSSH*HHHDžHL9tHHp)WHEdH+%( HeH[A\A]A^A_]@H1LZHHHAAE;A(HEBT!fBT HE1ɹH HH(LPHHj菕A[A\DEHHSHCHC HCH9=HH{HC HSDHLHHxHHHDHLHLH)A H)HHHDE'fDL9oHS[LLLHH9tHHpUDE fHDžp)`EH`HU 1HHHFOH`HH\H@IHhfH+`LH`HHH$uHhL`HL9FH`H03fDfAnfnIfbfAD$MgIL9E.E(LEH8DT@PDAUH0DMPHH^Mg_[M9gqH0HLLHTHHtaDHHHtDHЃtHKHHHHSHfHH fLH)HHL))\IH(LLHHD@"f9u9p$rIH@HP 9sH@f.M/M9t$L`A}LH`JIM9uM'MtIwLL) RLRH H(H`HHH[u$NLH{CLKVLEMH`HlHpH)QXL9twDA;D$ rju@A;D$$r[HHI|$0AD$(KHHID$PHxHL9sHHpQ^XMXIHXfLAD$(HIT$ ID$ ID$@ID$0AD$8AD$HCIHH9t HHL~FH(Hf.H`HHH&QfoHfHDžH`Hp)Hp)`H6H)OHHH)HO LXMOct.HHCZHL KHC HLHC@LDDCLLCHCC P1NLL9QZLYIL8>H{LHHL9'HHpNHJ57@s tftHHyMHHITHTHH)I)1҉уI4H49rH7Hs LD7LD0LC(IL)H)ǃ1ƃL 7M 09rEHBT!BT 0B A9D$  1B$A9D$$@ATTHKH27ɉs ttsATfTHKHa>H%H<IQIUHAWAVAUIHATMSHIxH,H8L D(dH%(HE1HL@DkHMHHHMH0I95MMH8HL@L`L(LM Md$MtUMt$(HI9IFHtI|$ LBuI)޸I9}HI9~DxMMd$MuIHL9@tBMw(LM9IFHtIw LOBuMM)I7I|Dy'H8HLHXHXH"INj,Iw@D(H HHUeEH}ubEH0SHUECHC HCH9HEH{HC HSHEdH+%(CHH[A\A]A^A_]H0H9t HEHpJH5 HHLuHLu9HC HuHUCH{CHHC9H}L9mHEHpKJ[fDHPLuHHIEHHHHPLuHHHHC9H8LeLeH0HPHEHH0H9L`HHLhHHLH`AHpH9tHpHppIH}L9t HEHpZIH}L9t HEHpDIE{8!QHHIHp LCMMCH8HLL@HLxHMHMf.MMtRMw(LI M9IFHt H8?uM)I9}HI9~DxMMMuMHLL9@t5Mt$(LIt$ M9IFHH>y'H8HHXLHXIHHID$@]fMH8HғHHrHMM)II^DR@L@HJsCSH06@s HL9tHHp=HL9tHHp=EtYHHp H8LH HEdH+%(HhL[A\A]A^A_]f.Hi fLL0)LfHH1LHDžƅDžHDžDžLHDžƅL HDž(ƅ0HDžPHDžXHDžpHDžxHEHEHEHEfE)@)`)E)E7HELHtH}HHEHtH}HHpHtH`HHPHtH@HH L9tH0Hp;HL9tHHp;y+HL9HHp;fD3HL9u,I-I)I<I8IkI4@UHAWAVIAULATISHHHhdH%(HE1ID$LLHHPLHHHxH)I6IVHLHLHHp)LLLnYHxHLLHAHH9tHHp&:HL9tHHp :HL9tHHp9EtYH Hp Ha5LHHEdH+%(HhL[A\A]A^A_]f.H fLL0)LfHH1LHDžƅDžHDžDžLHDžƅL HDž(ƅ0HDžPHDžXHDžpHDžxHEHEHEHEfE)@)`)E)E4HELHtH}HHEHtH}HHpHtH`HHPHtH@HH L9tH0Hp7HL9tHHp7y+HL9HHp7fD/HL9u(I鿯I黯IίIʯIIƯ@UHAWAVIAULATISHHHhdH%(HE1ID$LLHHPLHHHxH&I6IVHLHLHHp%LLLUHxHLlHAHH9tHHpF6HL9tHHp*6HL9tHHp6EtYHHp H1LHHEdH+%(HhL[A\A]A^A_]f.H fLL0)LfHH1LHDžƅDžHDžDžLHDžƅL HDž(ƅ0HDžPHDžXHDžpHDžxHEHEHEHEfE)@)`)E)E0HELHtH}HHEHtH}HHpHtH`HHPHtH@HH L9tH0Hp4HL9tHHp3y+HL9HHp3fD+HL9u$IQIMI`I\I鏬IX@UHAWAVIAULATISHHHhdH%(HE1ID$LLHHPLHHHxH3"I6IVHLHLHHp"LLLQHxHLHAHH9tHHpf2HL9tHHpJ2HL9tHHp.2EtYHHp HA.LHHEdH+%(HhL[A\A]A^A_]f.H fLL0)LfHH1LHDžƅDžHDžDžLHDžƅL HDž(ƅ0HDžPHDžXHDžpHDžxHEHEHEHEfE)@)`)E)E,HELHtH}HHEHtH}HHpHtH`HHPHtH@HH L9tH0Hp90HL9tHHp0y+HL9HHp/fD(HL9u IIߨIII!I@UHAWAVLAUIATLSHHHxL牍hDddH%(HE1 IELLHHPLHHHpH@H3HSHLHLHHXHLHMHpLHHHH9tHHpt.HL9tHHpX.HL9tHHp<.hDdpt[LpHxHp D"&L HEdH+%(-HxHĈ[A\A]A^A_]fDfpDLH Hx)H0fLHHHhH1HDžƅDžHDžDžHDžƅH HDž(ƅ0HDžPHDžXHDžpHDžxHEHEHEHEfE)@)`)E)E$HEHtH}HHEHtH}HHpHtH`HHPHtH@HH H9tH0Hp(,HHhH9tHHp,y+HL9HHp+fD#HL9uH=H9ILHKH~HGff.UHAWAVLAULATISHHHxLdD`dH%(HE1HCHHpHHPLHHHhHI4$IT$HLHLHHXLHpLIHhLLoHhHH9tHHpF*HL9tHHp**HL9tHHp*hLctqML`DdHxHp MDy#LHEdH+%(gHxHĈ[A\A]A^A_]DMH f`LdHp)H0HxfMH1LHDžƅDžHDžDžLHDžƅH HDž(ƅ0HDžPHDžXHDžpHDžxHEHEHEHEfE)@)`)E)E"HEHtH}HHEHtH}HHpHtH`HHPHtH@HH H9tH0Hp'HL9tHHp'y,HL9HHp'HL9uf.[HCICHCIOrH@H<H|H逡H0H\f.UHAWAVIAULATISHHHhdH%(HE1ID$LLHHPLHHHxHI6IVHLHLHHpLLL>EHxHLHAHH9tHHp%HL9tHHp%HL9tHHp%EtYHHp H!"LHHEdH+%(HhL[A\A]A^A_]f.HY fLL0)LfHH1LHDžƅDžHDžDžLHDžƅL HDž(ƅ0HDžPHDžXHDžpHDžxHEHEHEHEfE)@)`)E)E HELHtH}HHEHtH}HHpHtH`HHPHtH@HH L9tH0Hp#HL9tHHp#y+HL9HHp#fDHL9uIIߝIII!I@UHAWAVIAULATISHHHhdH%(HE1ID$LLHHPLHHHxHI6IVHLHLHHpLLL^AHxHLD9rMHvA1A׃L9MD=D9rMDHA1A׃L9MD=D9rMDHA1A׃L9M>D9rMH$zHEdH+%(uFHEdH+%(u2H錋HċHH鸋HًH\HϋH锋HDHMHHHHH鑋HfuH71ÐuHfUHHAWAVAUATSHH:sHHGHIH)HH9rH[A\A]A^A_]f.LoILI)LCL IM9tnM)IQIfHH HHHxH H I9tEHpHzH0HJH9uHOs`t:@>HzfDMtHsLL)LL3MMLkLsH[A\A]A^A_]@H:H>LT:LT>HxIHH)I)r1AO<N<9rHz%:ɉ>| |Hz| f|HzH= fUHGHAVIAUATISD*H9tF HA9sTHHI9^t:HHD9h rAT$9P$1HyHHEHDH[A\A]A^]DD9uKBV$9r9r=H1fDH(tqH_ D9k r Rue9S$s`H1[A\A]A^]I9^ tHBH@ A9rAT$D9u(;Q$s#1H{HEHHEH`fDR[DA\LA]A^]bUfUHAWAVAUATSH(LH}HuMHEH8LhH}DIGHt[IMw(I_ M9MMFMtH}LHuLL)H9}HH9~xIG1HuL@ukMtBHuLHHMGHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:LHMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHAWAVAUATSH(LH}HuMHEH8LhH}DIGHt[IMw(I_ M9MMFMtH}LHuLL)H9}HH9~xIG1HuL@ukMtBHuLHHMHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:LHMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^UHAWAVAUATSH(LH}HuMHEH8LhH}DIGHt[IMw(I_ M9MMFMtH}LHuLL)H9}HH9~xIG1HuL@ukMtBHuLHHMGHMt'1҅HILHH(L[HA\A]A^A_]fDMM)IiI|gDLHEL9xt:LHMLp(HX LiH9LIM9MH}MFWfDLE1rD1fE1^H7UHAWAVAUATSHHhdH%(HE1HG H7G ~(HG(HG0HG8HG@HɉWO HGHEdH+%(uHh[A\A]A^A_]|ff.UHAUATISHHoNHHF(OHt\V fHnF0W HV8G(HW8HW HPHF@HG@ID$(ID$ ID$0ID$8ID$@H[A\A]]DHG(H^(HG LnG HG0HG8HG@HtHsLHH[0cHupUHAVAUATSHHPdH4%(Hu1{(HLG,HɉWOH_HEdH+%(u HP[A\A]A^]ff.UHAWAVAUATSHhdH%(HE1HGH7G~(HGHG HG(HG0G8HG@SHEdH+%(uHh[A\A]A^A_]zf.UHAWAVAUATSHhdH%(HE1HGH7G~(HGHG HG(HG0؄HEdH+%(uHh[A\A]A^A_]UHAVAUATSH`dH%(HE1~(H7qHEdH+%(u H`[A\A]A^]UHAVAUATSH`dH%(HE1~(H7HEdH+%(u H`[A\A]A^]PUHAVAUATSH`dH%(HE1~(H7HEdH+%(u H`[A\A]A^]UHAVAUATSH`dH%(HE1~(H7 HEdH+%(u H`[A\A]A^]UHAVAUATSH`dH%(HE1~(H7HEdH+%(u H`[A\A]A^]`UHAVAUATSH`dH%(HE1~(H7HEdH+%(u H`[A\A]A^]UHHHAWAVAUATSHLoL7LL)HH9SHIIL)M9H4H9rfH1E1HLMLL)IM, HmH~HLLLE LEMulM$Ml$I\$H[A\A]A^A_]HHHMHU HUHMIH{LLHMLMmHMIHIIt$LLEL)LEw@HrHH9HHFHwDH}HLHELEHH9HGH;H= @GGGGGG G(GHGPGpGxƇƇff.UHSHHpu{Hu:{ uTH]HxHH9tHHp{HtH{PHC`H9tHC`Hp{ tH{(HC8H9tHs8H]H[ff.UHAWAVAUATSHL6MAMMt8DLM$$H{HCH9t HCHp8HMuII1HIIIdžIdžIH9t H4M~xMnpM9tifDMe0I](I9tHHàaI9uI](HtIu8HH)4I}IEH9t IEHpI@M9uMnpMtILL)I~@IFPH9t IFPHpI~ IF0H9t IF0HpI>IFH9t IFHpHL[A\A]A^A_]fDH[A\A]A^A_]IIH9AIHpRMM2`ff.UHSHHdH%(HE1>uLuH5X L7LpHpHPL`HH9H`HHHpH0LH`H@@HhH`L9tHpHpH}H9t HEHpH}HEH9t HEHpSH)II9[LLvID$|HLLHE21HQA1LH HI@H5i L!jHMH1t 9A8tD 9fE 8Ht9A8HPHIHs:1t 9A8tD 9fE 8Ht9A8HPA1AσL>L;D9rL HA1AσL>MHpEfUHHHHAUATSHH8HdH %(HM1ɋx QyE8ٵHu HHr!HEdH+%(upH8H[A\A]]DH5`c LmHLLeLe販HC HuHUCH{CHHC苩H}L9tHEHp%NHDfUHHHHAUATSHH8HdH %(HM1ɋx PyE8Ht HH HEdH+%(upH8H[A\A]]DH5pb LmHLLeLe¨HC HuHUCH{CHHC蛨H}L9tHEHp5^HCfUHHHHAUATSHH8HdH %(HM1ɋx OyE8Hs HHHEdH+%(upH8H[A\A]]DH5a LmHLLeLeҧHC HuHUCH{CHHC諧H}L9tHEHpEnH CfUHAWAVAUATISHHLdH%(HE1HI@0HHH%H)HH9tHH$H9uH)HHLmEHXIHHHDž`HDžhLpHDžxHPLuLXHPILLAEHMHpHU`EdEhHEH9fHnEL9cHUHpxHVH}HUHEH}H9t HEHp诶dut`tt`HxChHS CHpHSL9HCHEHC HKHEdH+%(uHeH[A\A]A^A_]fhuI$HHx #MH5^ LeLHLeAHC HuHUCCH{HCHH}L9t HEHp贵HpL9MHEHp藵;fHpxHMHMHfHC H{1CLCHCHDžXHXfo| HCH elementHS HHHXHSHCJfDHL 4DHt+HHH@*HUHpH@HxH}@HAs7,Au@s Atft @IuHs I|5H|2H{(HH)I)Ճ1҉փMD5L79r@EHUHpBAus AttHEdH+%(u߹H>H>fUHATSHHdH%(HE1EHz@t0HLef.z LuJEHEHH;B@rHEdH+%(u H[A\]d@UHATSHHdH%(HE1EHz@t0HLef.z LIEHEHH;B@rHEdH+%(u H[A\]@UHHHAUATSHH8HdH%(HU1ҋx IxxH5X[ LmHLLeLe誡HC HuHUCH{CHHC胡H}L9t HEHpHEdH+%(u3H8H[A\A]]˿8H=m HHHfDIMMHIt HtHpHH)HI)уr1ƒI<H<9rHH^HHHHfHHxHxAUAT THHdAUAT THHIMMHIt HtHpHH)HI)уK1ƒI<H<9r0IMMHIt HtHpHH)HI)уk1ƒI<H<9rPAUɉAT THH>AUAT THHHEdH+%(usHPL0ZHEdH+%(uQHPL08AT fTHHAT fTHH*HEdH+%(uHPL0ӝHEdH+%(uHPL0豝I#IO$Ic$I#I#I?$UHAUIATLg SHH_0I9t#s H{(LH蔌HI9uI](MeHt"HsLCHH[0HuH[A\A]]fHG(HUHAULo ATISLHfDHHHtHHHP9p }HHuI9tC 9~H[A\A]]fH{(LH0H=Il$@H[A\A]]@ÐfDUHAVAUATSHH0dH%(HEHFHt@LvIMIHHtHpHH9P }HHuM9tA9T$ ~TH5> LmHLLeLeHC HuHUCH{CHHC迄f.I|$(6SIEIt$ x U,LLLe0H!H5> Im0LmHLLeRHC HuHUCH{CHHC+H}L9t HEHpŔHEdH+%(u,H0H[A\A]A^]fDAT$ H54H赅H}!H!ff.UIMHAWAVAULnATISHHHHLudH%(HE1ID$AvHtoM fHHtHPHH;p IHHuM9tCA;p |=HH5HEdH+%(PHHH[A\A]A^A_]MDLLVIHLX1HUIvEI$x Z*x^A|$8UHML}ELQ8IHHH9DLPˠ8AVH5HHHC 1H{CHuCHCHE艖HUfo Z HCHS fo Z @HEHSHCID$Ht0AvMfDHHHPHH;p IHID$0HEEvI|$0H@(IHDp t=IT$(D9r }21I9tXLLLM؇HELMH@(5H}DHM HMIH0HLM蘑LMMy(H訸M9CA;q }ID$0LMHEMEvLMH@(HDp E9q ~HM;L$ LHMLMeHMD9p HKHxHUIɿIM;L$(t]LHMLM[HMD9p HLMIyt1IɸHILʿILI1E9q LI@Iv蜁ff.UHAVIAUATS8xJAV0Iv@ȓAŅ~(H1L$@IDIF@H|H OL9u[DA\A]A^]A@G8x5UHATLgSH_ I9tH{(NH?HI9u[1A\]øf.UHAVAUATSHH0dH%(HEHFHLvIM@IHHtHpHH9P }HHuM9A9T$ A|$$BLLLe(HH57 Im0LmHLLe7~HC HuHUCH{CHHC~H}L9t HEHp誎HEdH+%(uZH0H[A\A]A^]H5h7 LmHLLeLe}HC HuHUCH{CHHC}lH|H@UHAWAVMAUAATISM|$HHXUdH%(HE1ID$HttMHHtHHHx;p IHHuM9tCA;p |=HH59HEdH+%(eHXH[A\A]A^A_]DLDH=ExQI$Lm1HULx ($yN}@8@UH5HH+rfDLDH5CH#RIT$DuH}L @HHtHJHr9z |HHI9tp;x |kDp$H5}5 LmHLLeLe{HC HuHUCH{CHHC{H}L9HEHp>LHUI|$HLm1M{G}Hf.UHAWAVAUIATISHLdH%(HE1H`HH שHhH`fIEAEH9H)LH@|L"IT$(I\$ Ht:IH HHtHHHp;x IHHuL9t A9x It$IT$(IHLH HHtHJHz9B |HHHuH9t;F }"HLHPI|$HPlHLv(IT$(HunHfDH`HtHpH)}HEdH+%(HĸL[A\A]A^A_]DDžL@LH DHHtHJHz;B HHHuH9t;F }"HLHXI|$HXlHHF(H`H8HhH0H9"HEHH@HEH(!LiHH90H3H@H8uLuL}L}ML耋HXIHw`HuJAULHEH(LaH}L9t HEHpH@7ZfHtL-fDH(HX1蛌HEHHXHELLHXHUnHHEdH+%(u H=苏yHHff.UHAWAVIAUATSHHHdH%(HE1H HHH(H fHCH9oH)HHH~xH(H HH9?H@HHH`HHEH!@HfH H9o oSHC)UI~M`H)MHo]tHxduL@L}L}MLHIHHAUULHEHH^H}L9t HEHp腆HH H9H HtH0H)MHEdH+%(HH[A\A]A^A_]ÐH^L)fHH1ۉHEHHHELL>HHUHEdH+%(u H=(ӌvHHfDUHAWAVAUATSH8H~8HdH%(HE1H ƅ HHHDžHfE1HDž)HX LhI9H1E1H/HIAGLCzHL9tKHoK )I9uLHLL HLyHL9uHHEHI9QEEEAAEHA AcAA'DAA?BAAH=ɚ; vHpA4-HLmHLp߆DAHp&H11AH > |L`HpHPLPHH9HPHHH`H0H@@H?H)HXH HPH5}> HH薎L@HpHPL0HH9H0HHH@H0H0H@@H?H+H8H9$HHHH0L9tH@Hp9HPL9tH`HpHpL9t HEHpLeEHLuLpHDžxIt$}H?H+xL9YHLLiH?H9xHH5kC :HxHpH?H+H9HHpL9t HEHp-AH}HEH9t HEHp HI9tLD+HLHD}UtfDfDE?HHLHHC CH{HCHCoHHtHH)SHHH9tH Hp0HEdH+%(^HH8[A\A]A^A_]@7fDHMH1B!HPHMH"1HPRHEH5L( H]HHHH]LnHHuHUHA AHyAHHAfnH}H9HEHp~9A8HPD 9fE 8HuN9A829A8HPD 9fE 8Hu9A8A1AσL>M>D9rM1H{A1AσL>MM?D9rM1HKA1AσL>MD=D9rMD 1HHEHH5C HH]HH]L[HHuHUHA AHyAHHA`[H}H9HEHpkoe[QG:\HEdH+%(uH= ^HEdH+%(uH= ^HEdH+%(uHPH= H^HEdH+%(uH= ^HEdH+%(nHH=q HY^HAHHpHHHHHHHHHHf.UHAWAVAUATISHIyH]HfHB(fHF FHF(HB HtobfHF B fH8תHS@uff.UHSHHHHw@dH%(HE1E HEH;wHttfoEfoMfoUNV HG@H0HG@HH+C8HHHH=>I} HZt7HEdH+%(uAHH]HUH8 HC@DHEHtH}HGZUHAWAVAUATSHHH;HPLHHD0C59MuIE1ALP@tC59HuRfQHtD8uAbǃHHApfDAb~zAL$H$HH;HPHǃHHDVfAA>AD$< 1H HcH>DHHǃDAH1[A\A]A^A_]yGfHE1HǃAxALE1G|?HH;}HHR0DJdHPLHDHMt$L9HL9F HALBD E9sǃH[A\A]A^A_]HHEH@0BD`wH1HHELUFHH;u12F, HLBD HH;HHR0DJHPLHD(HMt$L9HL9sH}A11LNEHbǃHHEǃHHAnfDH11LALMDUDHLMDUIO,ǃUǃHVZff.UHAWAAVAULATSHHHuHLJHHH9u6fF HLBD HHH9D88tlHPLHDHMt$L9t=HL9sH11LADUCHDUkÐH9t;HHuH@80u'H9t"HPHx]uH[A\A]A^A_]f1}:@YUHAWAVAUATSHHH;D0LHC59MuIE1ALP@tC59HZHt8utHEĩ tHAHI0DAtA0uhH1ǃBHH[A\A]A^A_]@ǃEĹ1HHxBfDH1ǃSB떐HLHPHD0C59MuIE1ALP@tC59H uWJHtD8uHH1ǃDBH[HA\A]A^A_]AfDHAHR0DB0AD$<#HEĹ1LALLKAHH;H0HI0HDqt8vwHPLHDHML$L9HL9rPF HLBD At"HAH;qǃA11LLLMDU@HLMDU끐qLVff.UHAWAVIAUIATSH(LgdH%(HE1I48HEM_tt'I]HA<AOuA_tL9u(HEdH+%(H(L[A\A]A^A_]IM)A>ulIFI~IFLeIw:I~It%HuLTHEIVIIFAHEHu1QPIFHHEIFI~MnL9t IFHpFLAI~Mnu`=UHAUI1ATISHHuHHdH%(HE1HPIL$HUHH9sAAt#HH)HUdH+%(uH[A\A]]Aƅ<H H 5 HcH>DH5 LJ@H5 u֋C,LLAES(H([A\A]A^A_]DHvI?iwJLs1IIHL IMtsIHK0"H3Ht_HN01IHII9uKHI9uIWH;SuLULEHt HsI?LME>LMLEȅLUuIH3H(1[A\A]A^A_]UHAWAVAUIATSHXHULgHMdH%(HE1A<4%HFIHEHfHA<IuHuHEIHL}HELL}I86HULLuULHH}L9tHEHpF HHHEdH+%(u*HXH[A\A]A^A_]fHuH}=7HUHAVAULuLmATHMSHLH@dH%(HE1LmHEEIHx {HH{PtUL<;u ECH}L9t HEHpEHEdH+%(u8H@L[A\A]A^]f.HC`HuHUHCPH4CH6H1UHAVAULuLmATHMSHLH@dH%(HE1LmHEEIHx){pH{xuUHHuHUHCxHZ4CpH}L9t HEHpDHEdH+%(uH@L[A\A]A^]ÐLX;5H@UHAUIATISHHHdH%(HE1H 7<$4<%lPЀ vt<-tpA}uAEAEIU HLI|$HHPՁH<(HHHUdH+%(H[A\A]]@1HHuHIL$HUHH9sA}AEuAEHH)<+uHsIU L4HHA} tID$ifHsLLHVIT$,HHH؀)HD1H1HuHRIL$HHEHH9sA}IUuAEH)fHEdH+%(HL[A\A]]{1HuGIL$HUHH9s A}AEtHH)AEfHpLLHfIT$,HpLL'H@uA}t(AEHEdH+%(uH)LHfAE2@H8H]Lff.UHSHHxfoUHw@dH%(HE1HGE HEfoEHPH)UHGHUfoM)E)MH;wHtqfo]foe^f HG@H0HG@HH+C8HHHH=>I} HZtY} t3HEdH+%(u]HH]HUH8˓HC@DHEHtH}HHEHtH}HB1UHAWAVAUATSHHHHH9t'6H[A\A]A^A_]fDHPLHD0C59MuIEA LP@< tC59HIHA\A(A)uA[A{ED<]ZLEIC>9uI1ALP@tC>9uAUI8uAE@HPHDA-A[A]A\1$HHHߨtHHDHH; J؀v {HPHD @LJH[A\A]A^A_]HHPH8Hv0D~,@,r H9@\x}ǃHǃ H|H:?u~HBHH;4B<:<=1Ƀ HEdH+%( H8[A\A]A^A_]@LLLgLL.L H`H;@E 1EHxH;hhLgLwHLoH`HLH[HpKTmfHnHHIT$8foH@flH`HfBHVH9fo@HPHPHPH`LLLgLL-LH`H;@= 1EHxH;ho_H)@HGH`HPHHHHDHPH@HpHRHHQ8HBHVHPH`H9fo@H`HPHPH`DLLLgLL,LH`H;@=ƅEHxH9h[LLoHLwH`LE HEIt$@I;t$Hfoufo}6fou~v ID$@H0ID$@HI+D$8IILH=>IdI} HLHśHKvHpHHH@HIW8HHA8H@LbHVL`H`LPH96fo@HhHPHPH`^HLgH +LqH@H9`@HEdH+%(=7LL*LH`LLp*LH`LL8*LƅH`DH@H0U7H@LLLG3HxHPH@HxHhHHHpH`C@H@o)@HHP2HxHPH@HxHhHHHpH`@HUI|$8ID$@ H@LLLM2HxHPH@HxHhHHHpH`\HH9LHLHL HfHnflL'ƅHDžLc! t=HEdH+%(PA:HEH2H}HH8tƅEt gH@1IM~OLLHHHHHH@HID$8HHHHPHI9uLM_HSfH1H@HHH@HI)P)`)p)E-H 1HHMu]L0HHpHIT$8HH@HLtH0HHH9HLHHH(XHuHIHpHVH9^HLXH6H61ɋHIT$8Hk0HHpHtHH9PuA@HGHWHpHH@HIAoD$fAD$H9PtmHHUL`8H9xuHBHH@HI.HEHxHPHUHHxHHEHpxLHH0谘VLH@HHHHLP袔H@Ik0HQ8HBHk0IT$8HBHH4HEdH+%(t e6 HƅHL)HH@IUHHAUATISHHHHWH)HIH9HHH)HIH9rZHt7LIHIJ4fDH HHJHKHJKJH9uLH9tpID$H[A\A]]fH9t"HHHPHSHPSPH9uH)HHo HHHsHpHuHIHID$H[A\A]]fDH vL,L4oHsJ (HDHrHBH9uI<$It$I$IL$IL$HtHH)[A\A]]+IUHHAUATISHHHHWH)HIH9HHH)HIH9rJHt0LIHIJ4fDoKHZJH9uLH9tgID$H[A\A]]H9to SHHPH9uH)HHoHPHsHpHuHIHID$H[A\A]]fDH vL,L2oHsJ (HDHrHBH9uI<$It$I$IL$IL$HtHH)[A\A]]a*UHAWAVLPAUIATLSHH L=$L牕 dH%(HEH&L(HfHnIGfHnH%fofoflH)fHnfl)&Hu(f1EHEH1fEH_%HEHXH{HPLLpL7a2H&fof)`H@)PHHHH)p)Q5IGLLXHXLHDžHHHDžƅ1IuH(LL@HDž8L0L0ƅ@M$HpLHxLL9LCHLD11I)!Hc8Hc H0H 9HN!H0L9tH@Hp(H$foHH@)PHHH9tHHp'H#HHHX$HCHPLLPHT&HH<3HEdH+%(u)H[A\A]A^A_]HLI޼H H'I韼H߼UHЉHHdH %(HM1ɀxct:xHEdH+%(ugLnfDHEdH+%(uII0HI0H@@uH|u@ HEdH+%(uHuff.UHAWAVLPAUIATLSHH L= L牕 dH%(HEH"L(HfHnIGfHnH!fofoflH)fHnfl)"Hu$f1EHEH1fEH_!HEHXH{HPLLpL7a.H"fof)`H@)PHHHH)p)Q1IGLLXHXLHDžHHHDžƅ-IuH('LL@HDž8L0L0ƅ@M$HpLHxLL9LCHLD11I)Hc8Hc H0H 9HNH0L9tH@Hp$H foHH@)PHHH9tHHp#HHHHX HCHPLLPHT"HHHWH<-H(fL IH)@)PLH.Hr fLHr)0&HLHLH-HD fLHr)HLHLH-H fLHr)袚HLHLxHN-H]sfLHr)`LkLkL@L)#HLLItRAńHHH@HH)H9HHHHHHHxLuHELuLEA<$uA$H}AD$L9t HEHp6 HHH@HH)H9tHHuHD1xtHxH+8H{H{H{H+"HHLH4QHHH@HH)H9t#HHHHHH}HDx~HEELuLuL§A|$6H}ID$L9t HEHp;HHH@HH)H9tHHuHD1xtHpH+0HsHHsX"]fDE1HEdH+%( HxD[A\A]A^A_]DHsH!HsHX"HsH!E1HHt7HHHt7HHHt7HH8Ht7HeH@H(HPH)HDsfDH{H{H HHLH4BZH{H{HHHxLH4 HHH@HH)H9HHHHHHHMx(HHP H+PH~hHxKHEHEEHLuLuL=A|$uAD$AD$HnHHH@HH)H9HHHHHHH0x8LuHEEHEHH5" HHpHpH5 HH`HHh!A|$HI|$PIL$`H`HpHhH9'H9fHnIL$`ID$PpAD$XHH`HpHDžhHh9Hp-H!HHH@H9HHH)HHHHHxX HpPH+pHHHHxLuHEELpHH5 L苀H5 LLpULhHLI|$pL&LNHpBH6VHPH0HELuHLuHE H}@HHH@HH)H9kHHHHHHHHxHELuHEEHHEHH5 HHpIsH5 LDHH`HHhA|$HI|$PIL$`H`HpHhH9H9 fHnIL$`ID$PpAD$XHH`HpHDžhHhnAD$DHHPH0H}LuHE4H}tHDfDH`IT$`HpHhIT$PH9ID$PHpID$`IL$XH`HDžhƅpAD$H9fDHVH y.HMHHHPH0HELuHHHEbDH`IT$`HpHhIT$PH9GID$PHpID$`IL$XH`HDžhƅpAD$HfDHt~oH~H+>HZH9t#HHHHHH3HD-HPH0LuHHEy@LAL+M=H9t HHHHNHHztrHr1AHVHPH0HELuHHHEH}H9t1fHnID$PpAD$XH`Hp01HHtHHhI|$PIT$XH`HPH0LuHHE`HA_>A|$`O|f|>DH9tkfHnID$PpAD$XH`HpHA`>A|$`|f|HtHHhI|$PIT$XH`pH>I|$`LD>LD:I|$hIHH)I)Ѓ`1AуON9rDHMH H>I|$`LD>LD:I|$hIHH)I)Ѓ1AуON9rpHhI|$PpHhI|$Pj>A|$`||>A|$`||?H阪H阪HH錪HݪHHH6HSHSHXHZH\H\fDHGHxsUHAUATSHHHW<uH1[A\A]]@HHIHx=HCB< AtLHEttePH[A\A]]1DHHAHM)HCB<(#H߉¸L)LELHZ[HCB< LH߃H-fDUHAWAVAUATISHHwdH%(HE1HHwH>LfH@LL@H ) )0/HHH8H fLHr)HLHL(HHHp fLHr)͊HLHLHPyHcfLHr)苊HLHLHX7HcfLHr)IHLHLH0HcfLHr)H@HHH H@HHhH)AńH(H HH)H9HHHHHHHxHEHEHEIHEQA<$uA$H}AD$L9t HEHpH(H HH)H9tHHuHDE1xLsLsLsLHHH 1ILH@HHH(HhHH(H HH)H9t#HHHHHHHDxHEL}H}HEEH`?A|$ID$H`b H(H HH)H9tHHuHD1xHsHHsWE1HEdH+%(HD[A\A]A^A_]DHsHHsHHsHE1HHtx'H0L HHt['HX/ HHt>'HP HHt!'HH HHt'H8 H@HPH9tHPHpu H HH0H)V HDfDH@HHHHhH̎H@HHHHhH蠎H(H HH)H9cHHHHHH@HxIHEHEEH`L}L}LîA|$uAD$AD$H`H(H H9HH)HHHHHH0xfL}HEELuH`H5 LqH5 LPHH`HHA|$HH`IT$`HpHhIT$PH9 ID$PHpID$`IL$XAD$HH`HDžhƅpHLH`gfLpL+0k@HLpL}HEH`I)HL}HELxIIHELLuB0H}HpH+0@H(H HH)H9kHHHHHHHHxzHEL}HEEH`LuH`H5 LoH5ߞ L~HH`HHA|$HH`IT$`HpHhIT$PH9.HA H>I|$`LD>LD:I|$hIHH)I)Ѓ1AуON9r@AD$rDH*Hx1H HEHHxHEHL^LxHE5fDI|$PIL$`H`HpHhH9H9fHnIL$`ID$PpAD$XHH`HpHDžh#HLpHEL}H`I)HHELxIILMLuB0H}+HDfDH@HHHHhH脉|A|$uAD$H(H AD$HH)H9HHHHHHHxHEL}HEEH`LuH`H5' LlH5 LHH`HH HI|$HiHLH`yH(H H9HH)HHHHHH0xL}HEEH`H5] LlH5: LLHL7 LI|$p誫LLH`A<$AT$HA$A$.AƄ$ fMLHLpHEL}H`I)HHELxIILMLuB0DHD1HD?HELDHx1H HEHHxHEHLf LxHE1HDRf.HDeH9fHnID$PpAD$XH`HpHLpL}HEI)HLxII LMLuB0XHLpHEL}H`I)HHELxIILMLuB0H}xHtH^< HhI|$PIT$XH`7HEL-Hx1HuHEHHxHEHL LxHEHH@HUL}H`H)HHEIHxHHHELLuB0HH@L}HEH)HHHxHHHELHHM=>A|$`|f|HELL.HEL,Hx1HHEHHxHEHL\ LxHEH`Hx1HEHHxHEHL LxHEGHAH>I|$`LD>LD:I|$hIHH)I)Ѓ1AуON9rHL*HLuH`Hx1HEHHxHEHLLLxHEH`Hx1HEHHxHEHHHxHHELpHhI|$PLVL>A|$`||L)LyL+1HHHH.H酘H鿙H靘HGHH Hh H"HH[HeH鉘H鋘H驘HH逘f.UHAWAVAUATISHXHwdH%(HE1HHwH>yLpfHLLH))HxHH Hn fLHr)wHXLPHLH HX fLHr)`wLH0H5QLHLHLH5 HH?H+H5HH5ź LHHHpLHH9HHPHHPL8LLHHH@@ HfLHH0)@HHHlfo0HHf)0)@Ht^H`Dž0HtIHELuLxM9s$I>IM9rH`HhH4H@HPHH9tHPHpuH8HtHHHH9tHHp:HL9tHHpHH HH9tH HpHHH5 H?H+HHH5¸ gLHHHHpH9|HHPHHPLLLHHH@@zHfLHH) Hjfo0H(f)0) HtTH`DžHtGHEL}LpM9s"DI?IM9rH`HhH4H@HH9tHPHptH8HtHHH9tHHp@HL9tHHp$HHH9tH HpHHHHHHH{Ań HHHH)H9 HHHHHHHxH@ƅ@H0IHHDž8蟛A<$uA$H0AD$L9tH@Hp"HHHH)H9tHHuHDE1xaLsLsLsLHH1IL2HHHDžLHHƅ HHH'z/HHHH)H9t#HHHHHH{HDx4L0H@HDž8ƅ@_A|$+ID$HHHH9tH HpHHHH)H9HH1x,HsHHsE1HEdH+%(u HXD[A\A]A^A_]DHHLHHHxHHLHLHxHHH9tH HpHsHHsHSHsHE1H(HtHHHHtHHHH9tHHp7HhHtHZHHtiH=HHH9tHHpHH]HH)IfDHDfDHDfDLpL+0@HLpL@HDž8L0I)HLIIH@LL8B0H0HMHʃU1@t :A8@tD :fE 8HT:A8GHMHʃ51@t :A8@tD :fE 8H:A8HHHH)H9HHHHHHHxA|$HL0HDž8ƅ@I|$P1IT$XH0fDHDž8DAD$DHA1A׃L9MD=D9rMDHA1A׃L9MD=D9rMDHHH1H0HHH@HLlLH0fHH@L0HDž8H)HHHHkHHHqLHH8H0tHD:fDHpH+0M L(HHHH)H9:HHHHHHHxHDž8ƅ@L0L@LA|$uAD$AD$HKHHH9HH)HHHHHH0x{L0HDž8ƅ@LI|$HL裖LDHH@L0HDž8H)HHHH/H HLHH8A|$HH0H8'L9ID$PH@ID$`IT$XL0HDž8ƅ@AD$HqH@HH1LH0HHH@HHcHHH0SHD1HDiH@HH1LH0HHH@HHHHH0HH@L0HDž8H)HHHHHYHLHH8H0HH@L0HDž8H)HHHHHHLHH8-IL$`1IL$PHBs?@@1AtftL H@MH1I|7H|1HyHH)I)Ƀc1ɉ΃M1L79rHH@-H@HH1qH0HHH@HHHHH0HH1H0HHH@HHlHHH0L`LL_@1Att8HEdH+%(uH=} HEdH+%(uH=| IL$`IL$PI|$PIL$`H9t9L9tcfHnIL$`ID$P@AD$XHt/H0H@SL9t*fHnID$P@AD$XL0H@$HHtLMH8I|$P@H8I|$PH鮅H鵅HHHH߅HHZH鑆HHHqH銆H鏆HHHKHHL HHHH锅ff.UHAWAVAUATSHHdH%(HEȋ{j eAAĄHLD!LH= HIH@HIH fHnfl6HHH0HHEdH+%(&H[A\A]A^A_]ÐfL) ~ D!L  L)0QHfHnHH0flH-H0HuLLcH@LLHxHPH@HxHhHHH`HHpHH@HHB8LhLHH0NH@o)HHHxHPH@HxHhHHHpH`H I|$89IT$@DHLgHL聥LDž HDž(It$@I;t$H- fo >fo0Nfo@~ ID$@HP0IT$@HI+T$8HHHH>IKH fHnfl HHH0HZfDHLgH)L葤LDž HDž(It$@I;t$H] fo fo0~fo@N ID$@HP0IT$@HI+T$8HHHH>IgHLgHyLHL8nDžfoHDžfo)0fo) )@It$@I;t$H fo0~fo@f ID$@HP0IT$@HI+T$8HHHH>IH fHnflG H)PfoPLLLLgLSL転HHD8'HEdH+%(%NfDH@HH0)PHfoPHIH@HIzH fHnfl LHxLpl!HHHIE8HHJT LLƚHpH0HIk0IE8HPH]FpLLkALLL=L襛ƒujAH߅ 趝LLLLkLL[fH0)PfoPM~f1HDeL flHEfp) )0)@)P)`)pM)E)E1HpfInfHn苃fl)@Hƅpq HoH0}LLL-pvHHƅpH}H@0PHf%HfPL‰uf>wfPf EU fo@)   Hb0HPH8PHH I|$8,IT$@DH I|$8g,IT$@HpH;xHFHpH I|$8,IT$@WHHDž(H ~ L L )0CHfHnHH0flHn HHDž(H ~` L L' )0BHfHnHH0flH ]LL2L蚗pmL L(LM9t1LLL)HHcHLLDL(H LLE1A~H(LH|@LLD蒶LDLHHHLՠHHH H!@:}HEIHDՠIufHDžLHDž)UfLfo fo0fo@) P`HUfoPfo`(HPhHUfoppfouHPpUx fo})0)@)P)`)p~ PxHH0`@hPH HHP)s@HfHnH0LflHHHtHPHHhHtHxH)NHPHtH`H)3L@L8M9t%I<$ID$H9tID$HpI M9uH8HtHHH)H HhH0H)T诶BHMqH=@ H8PH8HHH@Hfo0Nfo@f IE@H0IE@HI+E8IILH=>I hI _HKdHH HHB8AnLhHfoDžHDžfoHfo) )0)@sfHn flH0)PfoPLL+L蓋pHHHƅpHuH8HHHQlHHuHHPH HPH8HPH@H;H?HPHHHHH"H@ H8^LL>L覊pUHHHƅpHuH8HHHmHHuHHPH HPH8HPH@H;H7HPHHHHH5H@ H8qLLQL蹉pHH}ƅpHH6<LfCmLLLMpHH}ƅpHH;`fW#j@LL}L  p<ai< kH8W-fxLL L興 ? p<,j<jH8-f~ L L )02HfHnHH0flH(~ HL HDž(L H )0e2HfHnHH0flH~ L L& )0 2HfHnHH0flHY~ HL HDž(L H )01HfHnHH0flHPH@H=6 H8HIh(H H HHH@HI]I} 'H(KDmDž`HLHA8L`KvHIG8L`H0foUHhH8fo`)UHpfop)E)MIu@I;uHfouvfo}~ IE@H0IE@HI+E8IILH=>I0]I} ` HH@H0LHLPH@snH@HLH(HH8HxHPH@HxHhHHHpH`fHUI|$8 ID$@H@HLLH0fHxHPH@HxHhHHHpH``fHEHH}HHUI}8c IE@Hf.HEHqHpH[DHEHhLgHH詞Lhff.@UHAWAVAUATSHHuHHH1[A\A]A^A_]@tuHDL'MtI|$HHt It$XH)艧I|$0Ht It$@H)rMl$ I\$I9t*H;HCH9t HCHpGH I9uI\$HtIt$(HH)$I<$Ht It$H)L@L.ۮfMuM+uIH@;LL譮HfHnIflMt$A$IuMuI)IHLHM} LfM+}IL$Mt$ID$(AD$HL9L(HfHnIM|$(flAD$Iu I}!M}8fM+}0ID$ ID$@AD$0;HL9nLfHnIflM|$@AD$0Iu8I}0H9t H)1 f HH9uHM}PfM+}HID$8ID$XAD$HHL9L;fHnIflM|$XAD$HIuPI}HH9tH)1f  HH9uHID$PAE`AoAoMxAD$`IEhAL$xID$hAEpA$AD$pL#1f1f1Nf1贫HJHJHJHJHJfUHAWAVAUATSHHuHHH1[A\A]A^A_]@t3tuHԐHHtH`H賣봐L.蓫fMuM+uIH@LeHfHnIflMt$A$IuMuI)IHḶHLID$Mu fM+uIL$HEID$(AD$7HL9`LܪHfHnIMt$(flAD$Iu I}ID$ M|$0Iu0L蟨MuPfM+uHID$XAD$HHL9LcfHnIflMt$XAD$HIuPI}HH9t!H)1f.  HH9uHAoID$PAoAE`A$AD$`IEhA$ID$hIEpID$pAExL#AD$x1f1Ff17j`Ԩ HHH"HH+HHGHGff.UHAWAVAUATSHHuHHH1[A\A]A^A_]@tuHDL'MtI|$HHt It$XH)ɠI|$0Ht It$@H)負Ml$ I\$I9t*H;HCH9t HCHp臠H I9uI\$HtIt$(HH)dI<$Ht It$H)NLA@L.fMuM+uIH@K\LHfHnIflMt$A$IuMuI)IHLTHM} LfM+}IL$Mt$ID$(AD$HL9LhHfHnIM|$(flAD$Iu I}aM}8fM+}0ID$ ID$@AD$0KHL9~LfHnIflM|$@AD$0Iu8I}0H9t H)1 f HH9uHM}PfM+}HID$8ID$XAD$HHL9L{fHnIflM|$XAD$HIuPI}HH9tH)1f  HH9uHAoID$PAoAE`A$AD$`IEhA$ID$hIEpID$pAExL#AD$x1tf1f1>f1HcDH_DHADHODHXDUHAUATISHHHHt It$XH)&Ml$8I\$0I9tHH{ HC0H9t HC0HpH;HCH9t HCHpݜH@I9uI\$0HtIt$@HH)躜Ml$ I\$I9t*H;HCH9t HCHp菜H I9uI\$HtIt$(HH)lI<$HtIt$H[A\H)A]]L@H[A\A]]ff.fUHAWAVAUATSHHuHHH1[A\A]A^A_]@t3tuHԐHHtHHÛ봐L.裣fMuM+uIH@LuHfHnIflMt$A$IuMuI)IHLܛHLID$Mu fM+uIL$HEID$(AD$7HL9`LHfHnIMt$(flAD$Iu I} ID$ M|$0Iu0L诠MuPfM+uHID$XAD$HHL9LsfHnIflMt$XAD$HIuPI}HH9t!H)1f.  HH9uHAoID$PAoAE`A$AD$`IEhA$ID$hIEpID$pAExL#AD$x1f1Ff17j`H:AHGAHPAHAHAff.UHSHHxfoUdH%(HE1HuHw@EfoEHUMfoM)E)M)UH;wHtrfo]foe^f HG@H0HG@HH+C8HHHH=>I@} HZt:} tTHEdH+%(u^HH]@HUH8HC@DHEHtH}HHEHtH}Hb3@UHAWAVAUATISHHLwHHw(HG0H+G8HMHI)HLHIHHLJ HHK H+KHHHHUUUUUUUH9H H{LH)IHI)IvmcAo $IFHC0IT$HPHSHHBHfHnfHnHflC0fHnflC@H[A\A]A^A_]fLzK?H9HHL4?LH<HȞHHELL)HLI<} HZ} tuHEdH+%(HH]fHUH{8cHC@DffoeHE)Mff])e)Mf]HEHtH}Ho@HEHXH}HE蛄;fUHAUIATSHH?HtLIEHI](L`L9sH;HL9rI}IuH[A\HA]]H[A\A]]Ðff.UHAWAVAUATSHH8LgL7HuHHMHLL)HH9=LmIM)M9H<H}H9HHEHEfIHIEIEHEAEHHLHL)H}jHH9H}HHEHHLHEI}HIEI9t9LHfDoHHJHpHrH9uHL)HH|HEI}L9L)LHHEHfH2oRH H HpHrPHpH9uHELi L9t6LH)LDHo[H H HPHSXHPI9uIMtIwLL)HEH}MoHI?HIGH8[A\A]A^A_]HHUHuHuHE`@1fHrHH9HFHHUH@HMHH9HFHEHHH=" 蠃H8@UHAWAVAUATSHH8LgL7HuHHMHLL)HH9=LmIM)M9H<H}H9HHEHEfIHIEIEHEAEHHLHL)H}jHH9H}^HHEHHLHEI}HIEI9t9LHfDoHHJHpHrH9uHL)HH|HEI}L9L)LHHEHfH2oRH H HpHrPHpH9uHELi L9t6LH)LDHo[H H HPHSXHPI9uIMtIwLL)tHEH}MoHI?HIGH8[A\A]A^A_]HHUHu!HuHE`@1fHrHH9HFHHUH@HMZHH9HFHEHHH=N H6@UHATIH=4 SHI$H@HL,H9uHtHLLtuЀ}tZfAFtL@HEI9tHELHp蟋HEdH+%(uYHX[A\A]A^A_]1@A^f.L=MG r@L5Q Lm1M7b|HEdH+%(u讌HH4fUHHAWAVAUATSHHOxdH%(HU1H:uiHAL5 AHs8L$@ILf8A<$ w?A$IcL>ID$DHH@HL,HCIT$MuIEdMuHEdH+%( H[A\A]A^A_]HCH;C : AtH;C(uuƃHEdH+%( H{@HH[A\A]A^A_]fDFIT$DHQ@A|$/IT$DHHxHHUdH+%( HDHH[A\A]A^A_] fID$H@HHЀxLCHK(LLPI9t#KLL)fDHH9tH9uHHC0HP HM)L)I9\Mt(LLLHRH3LCI9LHKIT$DHkLLCHSH;S HC0HHAЩBHqPH0HH~|H= 肎HH0H@H HHHEdH+%( hHSH;S(HC0HHAЩ:HqPH0HH{H=( HH0H@H HHL H荄DHB9uAH HLHP@< HLB9< tHS0HRBj< bHKxID$@HCH;C H;C( @L 1ɈHC0IPLLHxHPHH%LAHCH;C(tVIPL1DHC0HxHPHHƾDA1E8L$pID$HKxH:UDHKID$fHDž L)HHL)HH9#HHYHKLHHHHH I9t7LH@oHHRHpHrH9uHL)HH|fHoK)0ok(HC0)@flHPH`HHHpHB@H+B8HhHHH)PHHH=HHExHHH9HHxHHU@HH@H9uHhHA@H+A8HHHHHfHUHE)EHHHxHH1uHHMt EHHEHPHHH0HHH}Ht3HMHEHH9t;HxHtHpHH) HH H9uHEHtHuHH)HxHt HuH)ȂH0HtH@H)譂HHtH H)蒂A8D$ID$DHH@HL,IT$Aoe)0IEH@HCEuAEIEH0IEH8EuIEHCH;C(0I|$ L0I|$LAT$(YID$LchH0L;cp)LkfL++I$ID$AD$HL9#L`LChfHnIflMl$AD$H{L L9t6LHoHHYHrHqH9uHL)HHDID$I@ HChIT$DHDƃD`1qfHDH"ID$HKx@"HC0HHAЩBHqPH0HHtH=} 貆HH0H@H HHHEdH+%(蘁 ~fD ffDE1H9C(EL { [@HDžx1HEfDHH1HHH)HH1H9D|tH3LHLLDFLFHHH9rDH0HrPLHHLLH2sH=s| 6HH0H@HHHH{LHLLLHHL)L)H9M9u?fDLLLHIIHM9yAHA1HHHLLLP HHHHP 8b=DE1ME11H{`HLL{jHEdH+%(uvlnHEdH+%(uH=qpHEdH+%(uHEdH+%(u~HEdH+%(uu~H5&H>&Ha&Hu&Hi&Hz&HQ&UHAUATSHH[HHHH_HHW8DcL+HB8HWEtI9t3HWCHHP,L+DcH[A\A]]f.AADcHPkΐfUHHAWAAVL5K AUAATISHHO8dH%(HU1Hq8H@HH; w>IcL>fHCDLH@I$L,ID$HSMuIEtMuHEdH+%( H[A\A]A^A_]ID$EAD$tI;D$  AuIT$hHtH9sID$ID$hHEdH+%( I|$@HL[A\A]A^A_] fHSDLAA|$t;IL$8HCHq8fD{&HDL A|$tf.HCH@I$HЀxMD$IL$(LLPI9t!KLL) @HH9tH9uHID$0Hp-HM)L)I9{Mt)LLLH(qpH(RMD$I9L(IL$HSDLL(MD$IL$HCfHDž@M$)0HH L):HH9HH(IL$M$H(HHH0H@L9tbHEdH+%(upHEdH+%(u)uHHHH$HH#UHAUATSHH[HHHH_HHW8DcL+HB8HWEtI9t3HWCHHP|L+DcH[A\A]]f.AADcHPIkΐfUHHAWAVAUATSHHOxdH%(HU1H:uiHAL5 AHs8L$@ILf8A<$ w?A$IcL>ID$DHH@HL,HCIT$MuIEdMuHEdH+%(- H[A\A]A^A_]HCH;C  AtH;C(uuƃHEdH+%( H{@HH[A\A]A^A_]ΡfDFIT$DHQ@A|$/IT$DHHxHHUdH+%(1 HDHH[A\A]A^A_] fID$H@HHЀxLSHs(LHPML9 HLL)LDHH9 H9uHC0Hp HL)L)H9SHt2LLHLubLHMID$I9HKHDHLULLKDHSH;S HC0HHAЩBHqPH0HH_H=h qHH0H@H HHHEdH+%( lHSH;S(HC0HHAЩ*HqPH0HH_H=Hh qHH0H@H HH; HgDHB9uAH HLHP@< HLB9< tHS0HRBZ< RHKxID$@HCH;C H;C(@L f 1ɈHC0IPLLHxHPH?HELAHCH;C(tVIPL1DHC0HxHPHHDA1E8L$`ID$HKxH:EDHKID$fHDž L)HHL)HH9$HHypHKLHHHHH L9t7LH@oHHRHpHrH9uHL)HH|oCfHok(HHC0fl)0HPH`HHHpHB@H+B8HhH)PHDž@HHHHHHExHHHUoHHxHHUHH@H9uHhHA@H+A8HHHHHfHUHE)EqHHHxHH1 XHHMt EHHEHPHHH0HH_H}HtShHMHEHH9t;HxHtHpHH),fHH H9uHEHtHuHH)fHxHt HuH)eH0HtH@H)eHHtH H)eA8D$ID$DHH@HL,HCIT$AoEEuAEIE)foEuAEHCH;C(0I|$ L0I|$LAT$(aID$LchH0L;cp1LkfL++I$ID$AD$HL9<LlLChfHnIflMl$AD$H{L L9t6LHo"HHaHrHqH9uHL)HHDID$I@ HChfIT$DHDƃD`1fHDHBID$HKx@ YfD HC0HHAЩBHqPH0HHWH=a iHH0H@H HHHEdH+%(d%nfDE1H;C(ML)_ s@HDžx1HEfDHH1HHH)HH1H9 D|tH;oHGHHH9rDH*H0HPLHHHLLHcVH=_ ghHH0H@LMLH _HHLLHHLLL)L)H9I9u9%LLHLIIHI9ALA0LHIHLLP LILLP 8b=DE1ME11H{`HLLdzLgLSHEdH+%(uYQLKHEdH+%(uaHEdH+%(uaHEdH+%(u&fHEdH+%(uH=KSH_ HS Hj H~ H H H fDUHAUATSHH[HHHH_HHW8DcL+HB8HWEtI9t+HCHPL+DcH[A\A]]fDAADcHPkҐf.UHHAWAAVL5Õ AUAATISHHO8dH%(HU1Hq8H@HH; w>IcL>fHCDLH@I$L,ID$HSMuIEtMuHEdH+%( H[A\A]A^A_]ID$EAD$tI9D$  AuIT$hH9rHuID$hHEdH+%( I|$@HL[A\A]A^A_]鞒fDHSDLAA|$tCHCIL$8Hq8fD{HDL A|$tfHCH@I$HЀxMT$IL$(LHPMI9t&HLL)LHH9tH9uHID$0Hp%HL)L)H9Ht2LLHL SL HOML9L HCIL$HDLL ML$@IL$HCfHDž@M$)0HHL):HH9HH (dIL$M$H HHH0H@L9tMT$ML$CHEdH+%(uSHEdH+%(uH=CEHEdH+%(uSHEdH+%(u.XHH)H=HZHHfDUHAUATSHH[HHHH_HHW8DcL+HB8HWEtI9t+HCHPpL+DcH[A\A]]fDAADcHPAkҐf.UHAWAVAUATASHdH%(HEH8t+D`HEdH+%(ubH[A\A]A^A_]fDLoHH=N DpM}hIYH} HHHL HHtHJHzH9B |HHHuL9tH;F }'LHHLH.HƋ`H^(PHI9FeHhHtmHHt8LHHtHPHHH;p HHHuL9tH;w })HPH@HSH9AH0HH@` H@H; LLM9IA(IH@HHQ8HzHtQMLMf.HHtHHHpH;x IHHuM9tI;x MLI@(HBHlcL>IL9gMIvLLf.HHtHPHHH;p HHHuL9t H;w LIFHHLH,LHX(MIFLIMtIWIOI;G LIMuL9tH;F } HHLH?,H~F(IfHnHHflHCHLCHEdH+%(HH8[A\A]A^A_]fDHrHLMu6IMtIGIOI;w LIMuL9tH;w ILHG(HBL;fDHpHtpHHt;Lf.HHtHPHHH;p HHHuL9tH;w })HPH@HSH9H0HH@IFH9mDHUfHE)EHUHUHtHUf)M)EH9foufo}fF~ 6HEHF HF(HEHfoufHF )EvfDH@HHdFHXHPH@HXHHHHH@HHPI}8HU胙IE@f.HC fHEHE)pHLpHsLo{ M.)}fHEHVH}HHHHDLtHEH=HpH'D` HEHHpHM~H_(L(HHhL&L=HHLH@^HHpLL|5HL4HHH)fDUHAWAVAUATSHHH(LOL/LL)HH9BHIL)M9H H9HE1E1L9t3HLLL)Lf:HHxH9uHYL9tI)HLLMJLMLMtIvLL)hCM>I^MfH([A\A]A^A_]fDILHuHULMKHuHUIIċLML9I_A=fHrHH9HFIIHH9HGL$H=T 6fDUf1HAVAUATL@SHHHHdH%(HE1HH@0DPHH}HEH)@E)P)`)p)E)EEE轴u fVL@LHf EULM9t1LLL)HHcH3kLLjLHH@LL@yHHLHlLzfHDž0LHDž8) ?IUffo@L fomfouLLfoPo}P`HUfo`fopoM)@HPhU)P)`)p)E)E~= Ppo> PX `0h@pPxxH )0MHfHnHH0flHsH0Ht LLH}Ht HuH).@HpHt HuH)@L`HXI9t,H;HCH9t HCHp?H I9uHXHtHhHH)?H@HtHPH)?HEdH+%(uH[A\A]A^]0HHUHAWAVAUATSH@8H_8IH@H9t"@3HSI\$8H[A\A]A^A_]@Mt$0HI?L)HHL9L9H9H@4%E1E1%L)LLL HHfHH9uHXMtL)HL>M|$0I\$8Ml$@H[A\A]A^A_]HrZH?H9HFIMLUuHM!FHMȋuċUI|$@IIH@1QL9NHXiII?L9LFMH=p "1fUfHAWAVAUATL0SHH(dH%(HEHHE@u)0)@)P)`HE)p)EEER‹ HAD: L0HMHHW3H{AtHH}1MHH@0D4PHHfA,‰uffE$Uf EA HHL02H{L0A5L0L8LM9t1LLL)HHcH?eLLdL8H0LsH8LHfLufHDž LHDž()RCUffo0Hfo@fouL)0foPo}fo`fopP`HUoM)@)PHPhU)`)p)E~7 PpP{8 X `0h@pPxxHH) HSHfHnHH0flHmH HtHHHxHt HuH)-:H`HtHpH):LPHHI9t0H;HCH9t HCHp9H I9uHHHtHXHH)9H0HtH@H)9HEdH+%(MH([A\A]A^A_]HADA @HuH;uzHFHu@HHM/H{HHHL0HuHH <HHL0HLlH8AAH3 -HLDkqDHHM.H{AnHLHuL0HLH;HHHHHuHIHL6LLq1L)3HPH;XeHGHHHH&HP L2HHM-H{!AHH}1L0HH褩u ff EUHHL0F-H{ AwAA-A H2L0HDLifDE1E1HHL0,H{A-AH'=?A}A-HLD2iDHHxL0NCL0HDLhpL0HDLh.DHADAHHHLH4HL0uXHL0<A-LNE1fHLDhHALHLDg2HLDghh%HPHoHfdUHAWAVAUATLXSLHHH@DwdH%(HE1DXHsH;2Ańt*HEdH+%(HD[A\A]A^A_]fHEAH}H8HHHE6H=. LkhLuH]9HIEH@L,MYHEHEH(HEH0HEHXHmHKAEH0H]L`LHULHMIEHPH}H0H9t HEHp2H}HHH9t HEHpl2H@H0Lv0HN8L9 LhH AHHH`LMDMnLI>M9IFHt H(u LL)L9HH9~ ȅIN(LIv L9HFHtHH8P(H8uLH)L9}JHH9~7AHpH9HpHHp^1fI@L9HH LH@NbV`H~p@iAń8H@L(HHK HSLHppL` /HLHxHp 1H}IH0H9t HEHp0M9twH`ADHH0)fDH(1LG4HEHHXHEHL7HXHEmf.H@HL`HLpPM9uGH@HH@AL$A$Hxpsh8IM9ufDH`C HEdH+%(u;1HHI2fDUfHAWAVAUIATSH H8~dH%(HE1HEfl@u) )0)@)P)`)pM)E)EAIA L LL蚅BAII$I}]A;IH}1LIH@0D$PIHfAˠ‰ufLfEUf EAA IIH E$I}H AL L(LM9t1LLL)HHcHVLLRVL(H LE1AeH(HLHXf.LHDLDLHHHLՠHH HH!@:}HEIHDՠIufHDžMHDž)4Ufo fHfo0fo@) LP`HUfoPfo`HPhHUfopXfoUHPpfo]U)0)@)P)`)p~' Px` h0p@xPH( HH){IfHnI0LflH^HHtHHHhHtHxH)V+LXHPI9tFH{ HC0H9t HC0Hp&+H;HCH9t HCHp +H@I9uHPHtH`HH)*L@H8I9t,H;HCH9t HCHp*H I9uH8HtHHHH)*H HtH0H)u*HEdH+%(jH8[A\A]A^A_]ID AADA ^JfHpH;x}HFHpIILZ I}IIHH HuHH,HpHLH LH\H@AAH$A aM@HL|\IILqI}AILHuH ILH+HHSHHHuHH %'HLJ"H$H@H;HhHGHHHHH@ L#7IILI}AIH}1H IH耚u ff EUIIH %I}A AAAEAƅ-A nDH HH߈ZƅE1,IIH sI}ƅ-AAL-3Aƅ-HH߈ZLHhLH "xH HH߈YBH HH߈Y?HD ADAH8HLHq%LH |ubALH ,-HE1HH߈XIHHH߈X!HH߈}XQ#III0@Uf1HAWIAVAUATL SHHodH%(HE1HfoH@0flDPHUfH~HEH) E)0)@)P)`)p)E)E觖u fH L(f EUHI9t1LLH)HHcHMHLLH(H HL 1A[H(LLHN@LL[HډىLHHHLՠHH HH!@:}HEHHDՠHufHDžIHDž)*UfHfo fo0fo@) LP`HULfoPfo`HPhHUfop`foeHPpUh fom)0)@)P)`)p~S PxHp0x@XP@ )ČIfHnI0LflHUHHt LLHhHtHxH)!LXHPI9tCH{ HC0H9t HC0Hpv!H;HCH9t HCHp]!H@I9uHPHtH`HH)6!L@H8I9t,H;HCH9t HCHp!H I9uH8HtHHHH) H HtH0H) HEdH+%(uH[A\A]A^A_]HIHdff.UHAWAVAUIATSHh_dH%(HE1HH= L`h&HI$H@HHL=H(H HL 1ALH(LLH?LL+HډىLHHHLՠHH HH!@:}HEHHDՠHufHDžIHDž)UfHfo fo0fo@) LP`HULfoPfo`HPhHUfop`foeHPpUh fom)0)@)P)`)p~ PxHp0x@XP )}IfHnI0LflHFHHt LLHhHtHxH)LXHPI9tCH{ HC0H9t HC0HpfH;HCH9t HCHpMH@I9uHPHtH`HH)&L@H8I9t,H;HCH9t HCHpH I9uH8HtHHHH)H HtH0H)HEdH+%(uH[A\A]A^A_]HHf.@hRfhBfUHAUIATSHLgMt6LM$$H{HCH9t HCHp8HMuIEI}1I0H"I}IuIEIEL9tHH[A\A]]fH[A\A]]Ð@UHAUIH`ATSH MePI]HI9u8@H0I9t'; uHC HtH{H0HI9ufI]HHtIuXHH)I}HtIu H[A\H)A]]fH[A\A]]Ð@UiHAWIAVAUATSHHHvI?1HIHsLILL~HtHHtHH([A\A]A^A_]8^I7IWHIHxH@ID$HH}AD$(HC(H{ HSHsHE IׄuALK Ml$0HHHI$HL HCHID$([A\A]A^A_]HHH< L4LL1HLS0IHsHC1LKHt,H1H6HA0IILMtKIHHHHuH;HsL9tHLEALEL1L{ILIfDL[LHKLH9tI HuHCLcI$HtH@01HsM$HCHDLS0HC0M@I=t-HHH3@UHAWAVAUATSHdH%(HE1@8HG0IH`LpHHL`cH`I]hH= LhH^HHH@LwaHHLf HHtzL;cuHsMtLLuLL7H[A\A]A^A_]HviLO1LHHHLYHtH8uM}LLLf.UHAVIAUIHATISHtu&[A\A]A^]DMu[A\A]A^]fDI4$ML [A\A]A^]ff.UHAWAVAUATSHXDdH%(HE1EnHALL}H5n LHwiH}1Åx91LHx!HEHHEHxE1H}HEH9t HEHp;HEdH+%(HXD[A\A]A^A_]fDHO`HuH`AƄtLutL;ƃL1LfDeH7HuHEH >[H5 H= ^yHff.UHATISH`Ht;trtdtHLl7f.HIT$HHI4$Hƃ[A\]f[1A\]f1Ðff.UHATSDEuD[A\]HHHH9tHHp*H{`ƃtĀtH߾[A\]H H5 H= fHGpLWxI9L 1I.EtSDGDAH9}=H@HI9tIHP(LHtD:tċJHEu9|@H@I9tHP(LfDHtUH <H5Ǥ H= H+ff.UHAWAVAULmATSHXUdH%(HE1LmH IHL}IHEHHHuoA$ULHELLH}HL9t HEHpxHtCHEdH+%(HcuHXH[A\A]A^A_]ffDHLfHEdH+%(uNHXH [A\A]A^A_]LHu1HEHHEHEHL@HEHU/HEdH+%(uH=(LH韦fUHAWAVAULmATSHH`\dH%(HE1LmHHIL}IHxHHUHAULHELuHEHhLuML5HxHHAHA$ULHEHhH`L.H}HL9t HEHpH}L9t HEHpHtRHEdH+%($Hc\HĈH[A\A]A^A_]gHLHEdH+%(HĈH [A\A]A^A_]@HLLHx1HEHHxHEHLHxHUfHhHx1kHEHHxHEHLHxHUHEdH+%(u H=cnHEdH+%(uH=CL^LH+H+ff.UHAWAVIAUATASHXHHdH%(HEHGpHp0HH(HHH)HHHHHu-HEdH+%(6 HXD[A\A]A^A_]DII_pHDžHHH@HHIGxHDž HDž(Dž0?HDž8HDž@HH9 H01HH1HIԉHLHc1HIHLHIMIp9t"H8Ht~wI1HcIL9ukH9uI:t^H@H9.HH(`H Ht@;HtHHuIc1HHHHIH(D`HH8HHLIԄu6HI HH7HIEHL(H(DH HH< HHHH1HiIH 1L HDž Ht,H1H6HcAIILMtkIHHHHuHHHH9tHLLH1LLIHL LH LH9tI HOf.H L IEHtHc@1HM,H HfHH9IHDžHDžHLIHpHHHHpMILHHHHHHHxLPHHLHCH 11ffUHCEHH EHXHELkHPLLhL/H H5 LHA@H HHfHnHAHHfHnHHfl)Pf)`)p)H5 HDžLHFHXHDžHXƅH~ HHHH5ך H HDž)LH`HPHDžXHHHPƅ`M7HpLHxL9LCHLD11I)H H~% ~H@HH % )HfHnfl)PL9tHHpH HLHHXHCHPHLPHW HH?HLHfofoH`HHH50HPH`HDžXLxHh)I_pIGxH)HHH@H;(LH5ژ LXIWxIGpHH9HHXHL0fHLLfoLLH5 L Dž(L08,HHHLH{ Mx H5= LHK@H8H9IWxIGpHH)HKHH;(4H1foLHDžLH5 HHH_.f.HPHH9tH`Hp=HpHH9tHHpE1H HtHHHuHHH1&HHHDž(HDž HH9%H@A$HH1KHpHHHHLHHpDH5i LH5Z LHPHH9tH`HpHpHH9tHHpHHH9AfoHLHH5-HDžH7zfHHH5 LHHKLHMH{(tH5͔ L[HHH9HAHDž@LgI=tHEdH+%(u4HEdH+%(u HEdH+%(u H=T_HuH锗H頗H&I,HBHYHYff.t Hu 1fDH@UHAWAVAULmATSHxlL7dH%(HE1LmMLIL}HxHHHAULHEA|$PtA|$TtlI|$L(H}tH5!L豃H}L9t HEHpHEdH+%(IHx1[A\A]A^A_]HHLdLHx1GHEHHxHEHLHxHUf.H}It$TLxHEH]H}HUH9trfHnEL9tLHUHEEHtCH}HUHEH}H9HEHpfHEEH]H]HHtHtHHUH}HUH}EHUH}HEdH+%(uH=_LHϕf.UHAWLAVIAUIATSHH8dH%(HE1L?HGGH:șIH HHSL1IH LH{tA~Pu*HEdH+%(kH8H[A\A]A^A_]DA~Tt1ҹH5x HcHtA~P,H}IvTH#vH;HULeHEI9L9fHnHKHECHH}HMHEH}L9;HEHp)I}15iLkIHHLL1IHDHtHtJLHUH;HSH}hDL9tfHnHECLeLeL>EHUH;G"IΓfDUIHAWAVAUATISH(XHUI$M|$L9HEE1LhHI9tpL#M9l$HuHEI|$@H0HuMtLLMLMuIQHt#I;T$(uI1I|$ LMLMuMuCHMI9uH(L[A\A]A^A_]DH`HuSLM0E1fH HME1HF&H81輿f.UHSHHHtHH]HvfDH]1UHAWAVL}LuAUIATIH5Rw SHHLH8dH%(HE1Lu蕽LLLHdH}L9t HEHpHEdH+%(uH8[A\A]A^A_]'Hבff.UHAWAVAULmATSHxH`dH%(HE1LmHHIL}IHxHHHAULHELuHEHhLuMXL~HxHHHA$ULHEHhH`LgH}XL9t HEHpH}L9t HEHpHEdH+%(Hx[A\A]A^A_]ÐHL%HLbLHx1?HEHHxHEHLHxHUfHhHx1HEHHxHEHL^HxHUHEdH+%(u H=HHEdH+%(uH=(L^LH骏H骏ff.UHAWAVAULpATSHH0dH%(HE1H`L`HHHHIII\HXHHH^ApLHhLuHEH@LuMLLHXHHHAULHEL}HEH8L}MLHXHHHA$ULHEHHH8H@H0LH}؃L9t HEHpH}L9t HEHpH`L9tHpHpHEdH+%(sHĨ[A\A]A^A_]HoLH_LHOLHHHX1#H`HHXHpHLHXH`DH@HX1HEHHXHEHL6HXHU,fDH8HX1HEHHXHEHLHXHU9HEdH+%(u'H=HEdH+%(u H=hsHEdH+%(uH=HLL7LwH\HDH,ff.UHSDHHt&HǸH`uH]ÐH]H]1UHAWAVLpAUATSHH8dH%(HE1L`DH4HIL`ImHXHHaH'ApLHhL}HEHHL}MLHXHHOHA$ULHEH]H5o LeHHLeԵDDHHLHH8H}XL9t HEHpHH}L9t HEHp2H`L9tHpHpHEdH+%(HĨ[A\A]A^A_]HLHLLHX1H`HHXHpHLHXH`oHHHX1;HEHHXHEHLHXHUHEdH+%(u H=3>HEdH+%(uH=hLLWHeINHYfUHAWAVAULpATSHH(dH%(HE1AL`4H`HHHHIIIHXHHHdApLHhLuHEH@LuMRL8HXHHH"AULHEL}HEH8L}MLHXHHHA$ULHED4HHH@H8H(kH}؃L9t HEHp/H}L9t HEHpH`L9tHpHpHEdH+%(rHĸ[A\A]A^A_]fDHoLH_LHOLHHHX1SH`HHXHpHLHXH`DH@HX1HEHHXHEHLfHXHU&fDH8HX1HEHHXHEHLHXHU3HEdH+%(u'H=HEdH+%(u H=裲HEdH+%(uH=xLL7LwHHHׅff.UHAWAVAUATSH(LgxLopH}M9LHL)HHt HHHLLkHLLHMHQxHApHUH9iHH@H9\HXI@I@L9mAHI]H9uIuI}Ht HuIEI9EuMuL9uM}@L9}IXM}MeI9]IFHIvXMf@I}MNHHH9 IuM9#M~HI~XIvPIuIvXH IEI}IEfIFxAoEM~hMfpHEAFhIE LIFxIE AMM9tHHàaI9uMtHuLL)8I@IE@IM(H9MII^M}MeI9] I~H,HL葵IFHMVXMf@I}MNHHL9IuM9M~HIvPIEIFXMmLHELxxI^@L9tnIMe0Mu(M9tLIƠyM9uMu(MtIu8LL)LI}IEH9t IEHp2I@M9uHEHXxH([A\A]A^A_]fILH^I9RDHH@ԾI9u7f.M;&fILDIL9HHs:@t{AE@tfAD=fD:IFHIuYf.IELJMIHI|H|L)HI)r1ƒI4I49rIFHIuIHMVPBIU;AEMUIVHAEAD=D:IFHIuL fDUHAWAVAUIATLgSHHdH%(HE1HGH7HGHBLH2HH诫H fHC8LHC(H1HDžA|tiL LҺHL裨tLs0L;s8teLLZ)HC0LHHxLA|uHEdH+%(H[A\A]A^A_]HC(MHI)HLHHHH9uHI9H HH9H'HDžHLLHIw(HHLHLLHIڹHHII9t@LIǠM9uHtHs8HH)菺HHHC0HHK(HHHHC8|fDHH2HfDHrHH9HFHfHpH2HpHrHpHr H@H@oBHp@H9HrHxHxH0HrH9uHrLFAA&Et2@7AtDDD2fDD7Hr뀐HIL9LFLHHHMHUHuLELEHuHUHMILHY@MtI$LL)輷IM|$pK/I\$xI$H([A\A]A^A_]H2IH7DLL2LL7LH IL)A48I)1AOO9rHI#27DDD2DD7HrfHI9LGLHH=I >H~fUHAWAVAUATISHxHhL7HxLodH%(HE1M9HBHHpȸHIM9M>I9_(uI HtHpHuIWHI|$ HUH}xHUH9uI@Ht Hu转uH]HxIL$(LuH]DHxHM*HMHHEI>HyHHHELI4$L(膽IL$ IT$HhIML$0MD$HxL1PHCPPܼLsH{XZI9M.ILsH]HxM|$(LuH]iHxSHEHH*HHHHELLI4$LRH}H9t HEHp輴HEdH+%(He[A\A]A^A_]HhLHHH)HHH9I9'HH9HL.1E11H@H0HHHsI9uLH)LLsHtHHHUH)HUHhL(L+LpHPHxULHu1HE覷HMHEHHEHEHxHHEHULHu1iHMHEHHEHEHxLHMúHEHUHMHxU~HHrmHH9HGHHHpHMHUHUHpHHMHhL,3HIHxI9HHH@HEdH+%(u H=軹ƣHEdH+%(uH=E ˥HozHczHvzfDHHHH[f.UfHAWAVAUATISHHdH%(HE1HGH1HHGH HHHEHGHG HG(HG0G8?HG@HGHGPGTGXG`HLJƇ Ƈ0HHEPH}uiI$Ml$I9tM$H;M5HI9uH}HEH9t HEHp"HEdH+%(uPHH[A\A]A^A_]@H5H}LM$`tHuLaAƄ$0ZHM$xHxff.UHAWAVAUATSH(XH}HEHH H9tHEH HpHE?HExXfH]H{(HKHHMHEH9@HEL MA$M$Mt7@LMmH{HCH9t HCHp路8H誯MuI$I$1H֠I$I$IDŽ$IDŽ$I$H9t H4DMl$xM|$pM9tiDI_0Mw(L9tLIƠ!L9uMw(MtIw8LL)IIWH9t IGHpڮI@M9uM|$pMtI$LL)贮I|$@ID$PH9tID$PHp藮I|$ ID$0H9tID$0HpzI<$ID$H9tID$Hp^LQHEHEH9E6HEHHEHEHtPHMHHqH([A\H)A]A^A_] I$I$H9I$Hp߭H([A\A]A^A_]ËHMHHH9tHHpHE蒭HMHHH9tHHpHEgHMHHH9tHHpHE HxHk fHnH(HfHnfl),  LLPLLXL0@H f1EHEH1fEH˥ HEHHH@LyHPILH@H8迲Hx fofLX)`H@)PHHHH )p)訵H LLDžHƅHXHHHHDžL% R Hĥ H~(H@HH HfHnHfl)PH9tHHpèH H HHXH@H8H0HPH@HPH. HHHEdH+%(~ HL[A\A]A^A_]H H5 HX贝HHDžHHDžHDžDž?HDžHDžIDLPHHH0HH@HhH HxHP1L(IUI;Uu"DIEHH)HH9HcL$A$tMHhHMHDž8IvH0ƅ@ȢH?H+8L9jHLL蜲H?H98HH5a\ mIT$(It$ H?H+8H9H=HxHpHHHPH9kHHHH H0H@@H?HH9HH5[ HHp辱LHpHPLHH9HHHHH?H0@H)It$@H@ID$HHH9XLHLBHHpHPHpHHH9HHHHH0HHH@@L9tHHpHHxH9tH HpH0HhH9tH@HpϤHLMt|HL`LI M6MtPM;~uIvMtLLuLHpH9tHHpSIUf.L`LHXLL\LLLBHfHHiLL*1LHHHL(HuH8kLpHHMЃ~1t 9A8tD 9fE 8Ht9A8HP@HMH1t 9A8tD 9fE 8Ht9A8HP)LxHHMЃv1t 9A8tD 9fE 8Ht9A8HPS@HPHHHPH9HhLHDž8ƅ@H0MHpLHxHL9LCHLD11I)臛H0HhH= H8H9fHnH @H9H Hx y HH0H@HDž8HhH0H9tH@HpyL%" LfDA1AσL>M:D9rHxLH\fA1AσL>M>D9rMHfA1AσL>M:D9rHpLHTL% L裙gHt H= H֯ HS HpH@ I 贕L#HHpH9tHHpTE1L)HHHո ָ HhH0H@HhHPHt HtRHhCH8H= H H0H0HH@Hh$@H8H=6 HEdH+%(H=/ 赒HEdH+%(uwHH=/ Hp茒HEdH+%(u]H=/ LjHEdH+%(u@H=`/ OHEdH+%(uH=E/ 4 HgHgHgHXgHgHgHgH8gH}gf.UfHAWAVAUAATASHHdH%(HE1HGHGPHGHHGHG HG(HG0G8?HG@HGHwTHH]HCpHCXH{`HHC`HHHH0H8HHHH讌HHPHXLHLH而pHxLHULHHHIHHuHUHHH$HEpH~ڔH}HEH9t HEHp蠜HxHEH9t HEHp胜HPH`H9tH`Hp`H0H@H9tH@Hp=HL L9tH Hpƃ HDL LH5hHǃƃ0D1jGtVL#LkM9tf.I<$IM9uHEdH+%(iH[A\A]A^A_]fHD!jHH~I9t|L9 H HHtlHH HDžHL9tH HpH8ƃ0L9t(H LL LHH9tcfH~Ht"Ht9fH~LH~fփfH~H6 H~H]IcIcIcIcIcIcI_cUfHAWAVAUAATASHHHdH%(HE1HGHGPHGHHGHG HG(HG0G8?HG@HGHwTHHHCpHCXH{`HHC`HHYHH0H8HHHH'HHPHXLHLHpHxLHULHHH‡HHuHUHHH蝇HEpH~SH}HEH9t HEHpHxHEH9t HEHpHPH`H9tH`HpٗH0H@H9tH@Hp趗HL L9tH Hp蓗L D1HLLHLHǃƃ ƃ0,HurLsL#M9tfDI<$IM9uHHH9tHHpHEdH+%(H[A\A]A^A_]fDH5yHHFpHDSeHHHI9t}L9fHnH H HtmHH HDžHL9tH Hp"Ht>ƃ0L9t:fHnH LL LLrHH9tQHtHt-L HHHH9 HHH菆Ic_I__I_Ik_IG_IG_Io_I_ff.@UHAWAVAAUATSHdH%(HE1HHtGt FGCA|$Ct ID$CHCCA|$Ct AD$CCC C(A|$ ukCHCPA|$HCpCxA|$pƃA$ƃtA$ƃH[A\A]]f.HC8IT$0Lk(HC(It$(LH߀C CHCPA|$HpHC`IT$XLkPHCPIt$PLH覀CHCpCxA|$pKHI$LkxHCxIt$xLHgCpI[I[I$\f.UHAWAVAUATSHHL,MtlI]IIIIHK0*fH3HtXHN01IHIt$I9uBHI9uIPH;SuHtI8HsLELEȅuHL[A\A]A^A_]ÐE1f.UHGHAWL=Q AVfInIAUIATLXSHHH@~ HfldH%(HU1LHH)01Cpt v H^fo0fKtH hQ HCH$L@HCH*HC H+HC(H?HC0H|HC8HrHC@H HCHH0bf n HCPHr t v HCXH""//\\aHC`Hbf n r HC.HChHǃCx HSPL=P HLH=R ƃLLHXHJH;B HHHfHnHǃfHnƃflHl=HHHHǃNLFhHǃHHU fLPHB Lz`HBH5 LHHB0B(HB8B@HBXBBHH0躙LL߁LLԁLLiLL^L薊LL諁L胊L{H0H HǃHf@HHHƃ Hǃ0Hǃ8@P`p貔H8H0HHL,芔IEfHnHfInfHnHflH= fl@HPPH`p诒HIH@HHLHMu(M} IuIFIE(LXI;uL6HIuDž`fouHDžhfo`Lpfop)E)m)uIu@I;uHwfo}~fo}~ IE@L`0Me@HM+e8MILI>IWI} b` -KHHIE8LpHH0HH@4HEdH+%(HH0HH@蓓Hs`H I@L=L L=wL E1LEfDH40@HLLH0HH@QB@HUI}8Me@fHEHHpHDHEHH}H~HHHH0H@4HHIH`HxH;hLwLHH`IE8HNt HILKHIE8LpIt$@E HEI;t$H,fo}>fo}~fomn ID$@H0ID$@HI+D$8IILH=>ITI} AHKvHIE8H~@HV8L`H9tQ@HBHx,HN8fH@HBHxH@HHȃ8 tHv9t4H0H9uHEdH+%(HĨ[A\A]A^A_]fDHBHyDH@HBHxH@HHF88 tHUI|$8RID$@H@LL輇HxHPH@HxHhHHHpH`H}VHEdH+%(uxHEdH+%(uHH0HH@踈IrRIZR SIHH0R]SIRIHH0HH@MRHmS@UHOHATSHHPHdH%(HE1V1HUdH+%($H[A\A]A^A_]HH+P8IIIIHHExHHHI脉J0HxHUDHH@H9uHhHLp@L+p8ILfLLx HUHE)E8HLHxHL1_rHHPHHML}EHH¬AƄE@uI E2fHHfHnflHHPH;XuH}HtiHEL}HL9t+DIHt IwH)KI L9uL}MtHuLL)&HxHt HuH)H0HtH@H)~ flEI $IT$HH9tDxuHH9uLjH1HrHAI9BH9 fHnB BoHxAHH~ H0flHhH@)H)0foEHELLHDžxfHDžx1HEfDANpHEdH+%(uH=rHEdH+%(uH=qIKI LIKILIKff.UHAWAVAUATSHdH%(HEHAH*H@(HzIfL0IHLpLI)0ƅ@PfInffHnflA)0)@IG)PfInfHnLpHfl)`HP@H+P8IILHHExMQIL5IHxL}HH@L9uHhHpH@ LL}HEHEHPEHHEHULD}EwE@uh EQfHpHLEHPHHHE裲HULb}HPH;XuHxHdH0HtH@H)|LLHDž@H8H0N1HUdH+%(*Hĸ[A\A]A^A_]DfHnLpHfl)`HP@H+P8IIIIHHExHHHIQJ8HxHUfHH@H9uHhHLx@L+x8ILH@ fLHUHEH()EHLHxHL1(lHH(LHMEHEHPHH4ADŽE@uA E*HLHPHHHPH;XuH}Ht3|HMHEH(H9t;HxHtHpH H) zH H H9(uHEHtHuHH)yHxHt HuH)yH0HtH@H)yEIMIUHH9t@xuHXHHH9uLrHBHrHHVI9HQFH9HHX@R@HxAHVH0HvH@H) ybfDHDžxLHEDHDžx1HEfDAdiHEdH+%(uH=kHEdH+%(uH=wkH)FHHFHFHLFHFff.UHATSHHG@HSHHHL$I$fHnHfInfHnflflKC K0C@[A\]HEff.fUHAUATISHdH%(HE1HHuк LD(HˆL;etE"t#tHUdH+%(uFH[A\A]]D+HEdH+%(u'H=9 zHEdH+%(u H=8 5w hHRE@UIAѾHAWAVLw LAULATLSHH@dH%(HE1GGLwHGG LQnuLLxZLYILeH{HHI9L9fHnHK HCCHtvHHHDžHL9tHHpuHEdH+%(He[A\A]A^A_]L9t+fHnHCCLLL@HKI9tWHtHt,L|HH{HSHFDHH{f.H3fICfDUIAѾHAWAVLw LAULATLSHH8dH%(HE1GGLwHGG LsLLvLLIcH{HHI9L9fHnHK HCCHtyHHHDžHL9tHHpsHEdH+%(H8[A\A]A^A_]L9t+fHnHCCLLLHKI9tWHtHt,LzHH{HSHCDHH{f.HCdIAfDUILHAWAVLw LAULATLSHH8dH%(HE1GGLwHGG LQRqLLtZLYILaH{HHI9L9fHnHK HCCHtyHHHDžHL9tHHpqHEdH+%(He[A\A]A^A_]fDL9t+fHnHCCLLL@HKI9tOHtHt,LxHH{HSHCDHH{fHSbI?fDUAHAWAVLw LAULATLSHH@dH%(HE1GGLwHGG LAPLQRoLH LrLLI_H{HHI9L9fHnHK HCCHt}HHHDžHL9tHHpoHEdH+%(He[A\A]A^A_]f.L9t+fHnHCCLLL{HKI9tWHtHt,LvHH{HSH?DHH{f.HS`I>fDUHAWAVLw LAULATLSHH8dH%(HE1GGLwHGG LAQAAPLQRmLH LpLLI]H{HHI9L9fHnHK HCCHt{HHHDžHL9tHHpmHEdH+%(He[A\A]A^A_]L9t+fHnHCCLLL@HKI9tWHtHt,LtHH{HSHADHH{f.HS^I?!jH#% Hx TI<$AifnfAn̓tfbfրpIHǀXHPI$xA$IM$IFHMfLfAFAƄ$xADŽ$ I9t#H@H{HC(H9tHC(HpabI9uADŽ$L[A\A]A^]迣ff.UHAVIAUATISH>i.HHx RI<$AhfnfAn̓tfbfրpIHǀXHPI$xA$IM$IFHMfLfAFAƄ$xADŽ$ I9t#H@H{HC(H9tHC(HpAaI9uADŽ$L[A\A]A^]蟢ff.UHAVIAUATISH>gWH Hx QI<$AgfnfAn̓tfbfրpIHǀXHPI$xA$IM$IFHMfLfAFAƄ$xADŽ$ I9t#H@H{HC(H9tHC(Hp!`I9uADŽ$L[A\A]A^]ff.UHAVIAUATISH>fHXHx PI<$AffnfAn̓tfbfրpIHǀXHPI$xA$IM$IFHMfLfAFAƄ$xADŽ$ I9t#H@H{HC(H9tHC(Hp_I9uADŽ$L[A\A]A^]_ff.UHAVIAUATISH>eCHXHx OI<$A{efnfAn̓tfbfրpIHǀXHPI$xA$IM$IFHMfLfAFAƄ$xADŽ$ I9t#H@H{HC(H9tHC(Hp]I9uADŽ$L[A\A]A^]?ff.@UHAUIATSHdH%(HE1XkHuк LD HkbL;mtU "t3HH u%tHUdH+%(uHH[A\A]]fD#HEdH+%(u'H=5 `HEdH+%(u H= 5] NH,@UHAWAVIAUI͹ATSHH HHWLHuHwYLEȄuIE(HL[A\A]A^A_]fDH{ I9t HC0HpGXHGHHHq@4HK0@L2fAL7HH fDH9TLc(Lz(M9LIFHtH{ Iv HM=HMȅuM)1II|}DHHLC8IIHK0H| I|LL)I)ʃe1ɉσM :M 89rJHK0L2AL7HH4fUHAWAVIAUIHATISHHhNHIL{0H{ L{ HPH0H}H5IEHC@LHEL9Ls(MT$(H{ It$ M9MMFH}IHuMLLUL]H}LeEHHL[A\A]A^A_]@LL)H=H=|yMEM9L9>HH(Hx II9HIFHtHuHMHEn;LEHMuL)H1H|ȅy"Ix,M9fI}(}HuLI5HIHML9Eu&HMLHIG:IE(DuHC Ls(LHELQ(HA MIM9HEMFMt&H}HuLLULE:LELUu%M1M)IsIaD[@L]LUM9e yL9LUL]HH(Hp II9HIFHt-H}L]HMLUHE9LELUHML]uLH)H=H=|I|$LMfDME Ls(HC M`(LIx HEM9IFHtQHuLEt9LEuM)I7I|JD1Ʌ!.LC 4M)II}11HfDUHAWIAVIHAUATISHJHI$Lk0Lc Lk HPLH0HS1C@LLL-IIHt3INHtMLHI7IF(HL[A\A]A^A_]H{ I9t HC0HpAHHAH9tLc(Lj(M9LIFHtH{ Iw HM7HMȅuM)1IjI| DVLH@UHAWAVIAUIHATISHHHI$L{0L{ HHPH9HK HHHK0HHHLHS LHK(H@@HC@.IIHt<IMHLHId6IE(HL[A\A]A^A_]DH{ I9t HC0Hp2@HH%@HHHq@DHK0@/L2fAL7HHfDH9ULc(Lz(M9LIFHtH{ Iv HM?6HMȅuM)1II|}DHHLC8IIHK0H| I|LL)I)ʃu1ɉσM :M 89rZHK0L2AL7HHDfUHAWAVIAUI(ATSHHFIMIIAD$$D8E|$ H9D9{ ~>IUH9t~HHM7HMD9x HHxHڿQII9] HHM3HMD9x H~;H{H9tLM4IE(5I}(uIDLHM*HMHIHu(L=HL[A\A]A^A_]fIU D9z }1H9|fDI1E;~ L@if.UHAWIAVI`AUATISH8EHI$Lk0Lc Lk HPLH0Hs,HCPCPLLHC@LHCH&IIHt6INHtPLHI2IF(HL[A\A]A^A_]H{ I9t HC0Hp<`H<H9tLc(Lj(M9LIFHtH{ Iw HM 3HMȅuM)1IgI| DSIH @UHAWAVIAUIXATISHHCHIL{0H{ L{ HPH0H}H#+fIEHCPLHEC@L9Ls(MT$(H{ It$ M9MMFH}IHuMLLUL]LeH}2L]LEHMLUuLL)H=H=HuH}LLUHMLEL]1L]LEHMLUuLL)H=H=IM9tHC0LHp:XH:HHL[A\A]A^A_]@LL)H=H=|yMEM9L3HH(Hx II9HIFHtHuHMHE0HMLEuL)H9H|ȅy*Ix-MAf.I}(}HuLIHIHML9Eu&HMLHI/IE(DuHC Ls(LHELQ(HA IM9MHEMFMt&H}HuLLULE/LELUu%M1M)IsIaD[@LUL]M9e yL.L]LUHH(Hp II9HIFHt-H}LUL]HMHEk/HML]LELUuLH)H=H=|I|$LMfDME Ls(HC M`(LIx HEM9IFHtQHuLE.LEuM)I7I|CD1Ʌ!.LC ,M)II}1 1H ff.UHAWAVIAUIHATISH?IMHIL8HC8HC0fHnC8fInflC L9ID$ I9sFIUL9LHM}0HML9x HHxLYML9M9e LHMn,HML;x Hs@I|$H9tHI,IE(9@I}(uALLHM HMHIHuHHs6HL[A\A]A^A_]ÐIU L9z s1H9fDI1M;~ L@mf.UHAWAVIAUIHATISHH=HIL{0H{ L{ HPH0H}H#%IEHC@LHEL9Ls(MT$(H{ It$ M9MMFH}IHuMLLUL]H}Le,L]HMLELUuLL)H=H=HuH}LLULEHML]+L]HMLELUuLL)H=H=IM9tHC0LHp4HH4HHL[A\A]A^A_]@LL)H=H=|yMEM9L-HH(Hx II9HIFHtHuHMHE*HMLEuL)H1H|ȅy"Ix,M9fI}(uHuLsHIHML9Eu&HMLHI)IE(DuHC Ls(LHELQ(HA IM9MHEMFMt&H}HuLLELU*LULEu%M1M)IsIaD[@L]LUM9e yL(LUL]HH(Hp II9HIFHt)H}L]HMHE)LUHMLEL]uLH)H=H=|I|$LMfME Ls(HC M`(LIx HEM9IFHtYHuLE(LEuM)I?I|RD1Ʌ)6fLC 4M)II}11HfDUHAWAVIAUIHATISHH9HIL{0H{ L{ HPH0H}H IEHC@LHEL9Ls(MT$(H{ It$ M9MMFH}IHuMLLUL]H}Le'L]HMLELUuLL)H=H=HuH}LLULEHML]i'L]HMLELUuLL)H=H=IM9tHC0LHp{0HHn0HHL[A\A]A^A_]@LL)H=H=|yMEM9Li)HH(Hx II9HIFHtHuHMHE&LEHMuL)H1H|ȅy"Ix,M9fI}(}HuL>HIHML9Eu&HMLHIw%IE(DuHC Ls(LHELQ(HA MIM9HEMFMt&H}HuLLULE%LELUu%M1M)IsIaD[@L]LUM9e yLF$LUL]HH(Hp II9HIFHt-H}L]HMLUHE+%LELUHML]uLH)H=H=|I|$LMfDME Ls(HC M`(LIx HEM9IFHtQHuLE$LEuM)I7I|JD1Ʌ!.LC 4M)II}11HfDUHAWAVIAUIpATISHHH5HIL{0H{ L{ HPH0H}HfHCXLC@HCHIEHECPC`L9Ls(MT$(H{ It$ M9MMFH}IHuMLLUL]H}Le_#L]HMLELUuLL)H=H=HuH}LLULEHML] #L]HMLELUuLL)H=H=IM9tHC0LHp,pH,HHL[A\A]A^A_]@LL)H=H=|yMEM9L %HH(Hx II9HIFHtHuHMHE>"HMLEuL)H1H|ȅy"Ix,M9fI}(uHuLHIHML9Eu&HMLHI!IE(DuHC Ls(LHELQ(HA IM9MHEMFMt&H}HuLLULE_!LELUu%M1M)IsIaD[@LUL]M9e yLL]LUHH(Hp II9HIFHt)H}LUHMHE L]LEHMLUuLH)H=H=|I|$LMfME Ls(HC M`(LIx HEM9IFHtYHuLEL LEuM)I?I|RD1Ʌ)6fLC 4M)II}11HfDUHAWAVIAUIHATISHH0HIL{0H{ L{ HPH0H}H#IEHC@LHEL9Ls(MT$(H{ It$ M9MMFH}IHuMLLUL]H}LeL]HMLELUuLL)H=H=HuH}LLULEHML]L]HMLELUuLL)H=H=IM9tHC0LHp'HH'HHL[A\A]A^A_]@LL)H=H=|yMEM9L HH(Hx II9HIFHtHuHMHELEHMuL)H1H|ȅy"Ix,M9fI}(}HuL HIHML9Eu&HMLHIIE(DuHC Ls(LHELQ(HA MIM9HEMFMt&H}HuLLULELELUu%M1M)IsIaD[@L]LUM9e yLLUL]HH(Hp II9HIFHt-H}L]HMLUHE{LELUHML]uLH)H=H=|I|$LMfDME Ls(HC M`(LIx HEM9IFHtQHuLELEuM)I7I|JD1Ʌ!.LC 4M)II}11HfDUHAWAVIAUIHATISHH,HIL{0H{ L{ HPH0H}HIEHC@LHEL9Ls(MT$(H{ It$ M9MMFH}IHuMLLUL]H}LeL]HMLELUuLL)H=H=HuH}LLULEHML]iL]HMLELUuLL)H=H=IM9tHC0LHp{#HHn#HHL[A\A]A^A_]@LL)H=H=|yMEM9LiHH(Hx II9HIFHtHuHMHELEHMuL)H1H|ȅy"Ix,M9fI}(}HuL9HIHML9Eu&HMLHIwIE(DuHC Ls(LHELQ(HA MIM9HEMFMt&H}HuLLULELELUu%M1M)IsIaD[@L]LUM9e yLFLUL]HH(Hp II9HIFHt-H}L]HMLUHE+LELUHML]uLH)H=H=|I|$LMfDME Ls(HC M`(LIx HEM9IFHtQHuLELEuM)I7I|JD1Ʌ!.LC 4M)II}11HtfDUHAWAVAUATISHH_H;_t>HCC]H[UNKNOWNHHsHC CHG H[A\A]A^A_]DHL7HL)HHH9%L9H H9HHBB]E1E1H[UNKNOWNHHrHB BL)IVLL#@HH HHHxH H H9HpHzH0HJH9uHO6t:@>:HzfDHHH9HFIILHU&HUH[UNKNOWNIIHHBHrHB]HB BL9I_ fHX MtIt$LL)M<$I\$Ml$H[A\A]A^A_]f.H:H>LD:LD>HxIHH)I) 1AON9rI :ɉ>| |Hzt| f|Hz_HH9HGHIH=jff.UHAWAVIAUI0ATSHH%IMIIID$(D8E|$ H9D9{ ~>IUH9t~HHMHMD9x HHxHڿQII9] HHMHMD9x H~;H{H9tLMIE(5I}(uIDLHMaHMHIHu0LHL[A\A]A^A_]fIU D9z }1H9|fDI1E;~ L@if.UHAWAVIAUI0ATSHH$IMIIID$(L8M|$ H9L9{ ~>IUH9t~HHMHML9x HHxHڿQII9] HHMHML9x H~;H{H9tLMWIE(5I}(uILLHMRHMHIHu0LHL[A\A]A^A_]fIU L9z }1H9|fDI1M;~ L@if.UHAWAVAUIATISHHLvH>dH%(HE1I|$wgI\$Hu [HHtPL9suHsMtLH}H}uHE1HUdH+%(HHL[A\A]A^A_]fiLsML$1HII|$II$LMtzMIH( I0HthHN(1MHII9uTIH9uIUI;PuLMHt%IpI}LULE4LELULMuIE1H.D0V!IuIUHHHxH@HAHHMHMHLLLeHMBAE H#H>ff.fUHHAWIAVAUATLeSHhHwdH %(HMHLeHMHOHH9HuHpHuHp8@fIWH@oH(HuI7HHH0IwH}IH@8HxM@(H9IOHxHpHHIOHHIWHxIGfAoW(Lh(HP8HX0P(IO8HpMHH8IG8AG(I9tLIƠL9uMtHpLL)HEIIGHH9x*Hu~EL9HEIIwAGHHEH}HEfIG8o]Mw(EHxMo0HEA_(HEIG8M9LfHHàI9uMtHxLL)LmH]I9@HHàI9uH]HuH)HtHH}L9t HEHp~HEdH+%(Hh[A\A]A^A_]@HM~EL9t"IOEAGLeLeLDfH~HtKHf~f~fH~ƒKtu@0SIG~EfH~IOHMtfHw@D@DE@DD1fED4IwLHIL9>Ht>HOAAvtA@x@MGLHpD0IOMfANLOLEE1EAN O A9r&HuH)IwLIIHpHxDH|2H|1L)A4H)ʃI҃Q1ɉσM:M99r6HMHxMHHf~It HtH)HI)f~ȉ@1ƃM1L79r%AOHIwMHMIGD@DEDD1ED4-AxHx|2|1MGu0At tIG~EAt ftIG~EHx|2f|1MG7fDUHAWAVIAUI)ATSHH dH%(HE1I HHEH HMIH@HH II^HIH0ILhPHxHI\$M|$H8I9HIFHLH($ H(LH)H9}HH9~WxSH8Lu#HؿL)H9}HH9H I<$H9x@MNIvL9LH(HFH LLHgHLFHL)H=H=2*H(LLLuLH)H= H=|xIFI9$M9MMFM H(H8LLLuLL)H= H=|cx_H8H(LLtLuLL)H=H=H I^H9X@H0H L(HLDH8LHLL)H9}HH9H8LHu#LL)H9HH9~L90DH0LHHH@H IHXH8HXIM|$LMt$LM9IFHH8LH0H0LL)H9}HH9H8Lu#LL)H9HH9~L0L(HI@fMt$L(I\$M9MMFMHHL9tHXHp"H@H0@(HEdH+%(H[A\A]A^A_]LL)H=!H= HL)H=@H==,H LHL)H=,H=LL)H=H=lHL)H=H=sMIH LXMfL0LHHHLdHEH8HEMHINIFLHIVH@L9I6HHHXAoFIv fMvH8HPIFAHxIF HMH}hA~L9EHEHXHEHUHfH0H HuHLHHDžPƅXHDžxEh跴L}LeM9t"f.LIĠM9uLeMtHuLL)H}H8H9t HEHpgLpLhHHM9t"LIǠAM9uLhMtHxLL)HHL9tHXHpI@/HJL8LL8ML;1AL8N O 9r{HBtA6Au+LH@HPHEH8HHEHHL9HB,AMH8H8ALfLDID$HsHH9HtgHH(HsHHHHTHTHH)H)ȃr1҉уLL9rIL$HHSHCIT$"HCHP~AEnDfADHC\DH8It Ht1ɉL8I|5I<29rhHLILB1҉уH4 It 9rƃI|6I|51M>MD=9r&AEH8H8AD fDDH(H(TfTIL$jAD$ID$[HAEH8ɉAD DvA6AuAtAt AEDADHCAMH8ALLAtfAt^fDH(TTIL$ff.UHAWAVIAUATSHH9IIHq@CHCPA|$HCpCxA|$pƃA$ƃtA$ƃIĠHàM9A<$Ct AD$CCA|$Ct ID$CHCCA|$Ct AD$CCC C(A|$ -HC8IT$0L{(HC(It$(LH,C CHCPA|$HHC`IT$XL{PHCPIt$PLHCHCpCxA|$pHI$L{xHCxIt$xLHCpHHH[A\A]A^A_]III ff.@UHHAWAVAUATLgSHxLLodH%(HEHHEHEHhHEM9HGL}HEHA8LmfLqoY(LaHAAHEHA8]A(I^LMNL9HFHLLHpLxLxHpLH)H9}HH9LLLxLxu#HعL)H9bHH9~KHEIN@IF(I^(HhI9I9+fInHCL{ECMLeHEHEfA$oeHELk(HELc0Ls8c(HC8EM9LfDHHà!I9uMtLLL)LeH]I9HHàI9uH]HuH)HtHH}HhH9t HEHpHEdH+%(Hx[A\A]A^A_]DHEI;FIFIF(IF@I9M9IIV@MN0I^8IF@MMfIIFfA$MfPAoNIF AVI^XMn`IF MIF`ANPI9t@LIǠL9uMtLLL)MfL}I@Lm$@LH)H9HH9@WDM9tIMN0I^8IF@MvMHtHt(HLLwI^Mf0I^8AMfAA$I^Mf0I^8AMfI9tofInL{ECHhHEHEHhI;IEsxtWUtHhATfTLhMtItLLLLmLcLkC,LeM$rHhItHtr1҉HhI<4H<39rvHuH)AA$LmLc녋WHhUATT;fUHAWAVAUATSHHXdH%(HE1H9FHW@IH96HEHHhLcMnL{INM9LIFHHLHpHxHxHpgLL)H9YHH9~BHHhHUHEHCI9sHKL}HMHCHC8fo[(LeHEHC@H`HL)HCCHC8]c(HJL{LH)HpIGIO0Iw@IG(IGH9+I9JIG0IGIw@IG8IIG@HIOHI7IGfIG`MgPAoOAWHxI_XIG AOPMIG IG`I9tfDLIŠL9uMtHxLL)uI@L9p$HEINLeIIFHH9XHMHhH9JfInIvINEAFHKHEHuHEfomHEMf(HEI^0Mn8An(IF8uI9MDLIǠL9uMtLLL)H]LeL9LIĠL9uLeHuL)MtLTH}HhH9t HEHp7H`H9XHEdH+%(HĈ[A\A]A^A_]fDI9t#IG0IGIG8IIG@ML@IGHt'He'@IG8IGLHuLL)H9}HH9~x HI;H3HC@H`LL)H9}HH9EyM89rH{ MW(HMMLEO\N\L_IL)II)EAA7A1AO,!O,#D9rDLM ENlOl MjIM)G L)AAQHxAE1EAJKDE9rHx"fDKL$HLhMHHpIHHxHxH{ Hr |HxLpLhHB@HC@HTfTH{ MW(z@HUHHt>H ЃF2tU]Hs H}HHHS(HETDLVHpLxHhAE1xtHhDHpDAxtLhHpGfFIx"HhLpB<C<HfDHt5H%ƃTtE@SHEHHCHUf.HHMIkKMHHxE1HpAHHD9rL9HHxHpLxLpHhA1AσL:M9D9rM HHuMH2I|1H|2HzHHH)I)ƃ1ƒML9rHELFIIHHTHTHL)I)1҉փI<2I<09rEDGLFLH:LcHDEB|C| LR L[(GLfFLH:LcB|fC| LR L[(kEHUHC EHETTH{ MW(UTTHs H}EAD1D2AD1fD2TfTHs H}H9UHAWIAVIAUATSH_HH9tvA0HL)H~lLLH)HHE&L9t>D#AHA8|SHCA8}fPHPHA8|HD!L9uH[A\A]A^A_]fuÐUHAWAVIAUATISHLoL;oIMHFIMHH9IUHVIUIT$IM0IUI$ID$0ID$AD$IM IT$ H9 IU IT$0IU0IT$(IU(ID$ ID$(AD$0IF@H[A\A]A^A_]fDHHLH)HHH9I9H H9H@E11H1M$It$I|$LHLI9ZLMD$L@MD$ I4$LH0It$0HxI|$(ID$AD$LH I9gL@ MD$0L@0Hx(It$ ID$(AD$0I9HMLbHHURHK IL$ HK0I|$H{(I|$I9t I$HpID$0Hs@IL$@I9LIHHsH3IL$I9H I $HKIL$Hs0Md$I|$ ID$HKA$Hs IL$H9_I|$LGA$AEK9@>A6EBLfBLI|$"H&HH9HFIILHuHUHUHuHIHX@ID$HHA<$@>A| f|f.HMHUHHtIvHHMH)\HMII^M~H[A\A]A^A_]fDH9H>DLL9LL>H{8HH)H)DƃE1EAN NA9rfI<$H>MDH{MHH)I)1AON9rfHVHr@AT$AU@T0fT1IT$IT$(Hr@{AT$0AU0@T0fT1IT$(fIIT$IIUH|H|I}HH)I)Ƀ)1҉уM L9rIT$0IIU0H|H|I}8HH)I)Ƀ1҉уM L9rLGAAEET$DPA}EFTfGTiLGAs>AmEET$0DP0AuEFTfGTaMT$0LP0EN\O\LP8IIM)EM)AA&HEADEE1EAK K EA9rHEMT$LPEN\O\LPIIM)EM)AA{HEADEE1EAK K EA9rHELA<$ɉ>A| |9E>BLBLI|$AT$0AU0T0T1IT$(RAT$AUT0T1IT$ET$0EDP0FTGT ET$EDPFTGTHH9HGHIH=i`UHH)HATISH~VH_HZHI9t7fWHHG8~fDPHPH8|HI9u[A\]fD[A\]UHAWIAVI)AUATSHIIIIHEII]A}IAUIKD=EHAMf8@8A8A8fAuApLH8~\f.H@IH8|@8~EHGH0H@8I9sA8~EMAHAUAM*A}AMAUApI_HHALLHLHuIf.AEA $L1L)LIAD$HHH[A\A]A^A_]Ð@H9tWUHHATISHGHHH)H9tH~:HHHID$HH)HH9tIL$[A\]uHGHH)̐@UHAWAVAAUATISHHL@H_hudH%(HE1HHEH;_pMofM+/HHCCHL9LMD$hHfHnIflLkCIwML9t8LHDoHHZHHHJH9uHFL)HH|I H{MD$hA~D$`fInM9D$`AƄ$EflfI~fI~fID$8LHP@H+P8HHHHtI|$x1)E foEID$p)EfID$pHEAD$`M9{foCHCHCKI<$It$A$ID$HtH)OHDLdH L9uLmH]Au A$MID$I;D$(HID$I9t"H{Ht HsH)H I9uH]HtHuHH)AoD$`ID$hAƄ$IT$`fI~fI~M9}u A$MHH9t3H{HtHsHUHEH)cHUHEH H9uIT$hHEdH+%(EHH[A\A]A^A_]IE11f.MI9t%H{Ht HsH)H I9uH]HtHuHH)IT$`ID$h!HUH`LHh@MD$hpHEdH+%(u H鏤UHAWAVAAUATISHHL@H_hudH%(HE1HHEH;_pMofM+/HHCCHL9LMD$hHfHnIflLkCIwML9t8LHDoHHZHHHJH9uHFL)HH|I H{MD$hA~D$`fInM9D$`AƄ$EflfI~fI~fID$8LHP@H+P8HHHHtI|$x1)EYfoEID$p)EfID$pHEAD$`M9{foCHCHCKI<$It$A$ID$HtH)HDLCH L9uLmH]Au A$MID$I;D$(HID$I9t"H{Ht HsH);H I9uH]HtHuHH)AoD$`ID$hAƄ$IT$`fI~fI~M9}u A$MHH9t3H{HtHsHUHEH)HUHEH H9uIT$hHEdH+%(EHH[A\A]A^A_]IE11f.MI9t%H{Ht HsH);H I9uH]HtHuHH)IT$`ID$h!HUH`LH:MD$hpHEdH+%(uZHHO@HG0HQH9toH@HVHPHG0fk4f.UHAWAVAUIATSHHHGH;GtHGH[A\A]A^A_]fHH)IHI9HMMIK$L9LFL9LBLMHMIAEC&~eHLOd&L[HsHMH)HL3MLcLsH[A\A]A^A_]AxHMIAEAOd&HtHsH)H=]誾f.H9UHAWAVAUATISHLvHH?ID$MI)H)L9ID$HH)L9r^M~6HLHHHoKHH@HHuIMl$H[A\A]A^A_]@H3HH~D@o sHHI@qH9uI9tfDoHHPHJHHI9ufHL9r\LIt$I<$IHI9t"DoHHZHKHJI9uHtH)MM<$Ml$PH9UHAWAVAUATISHLvHH?ID$MI)H)L9IT$HH)L9rfM~=HLHHHH HHHHHKHHKHHuIMl$H[A\A]A^A_]DH 3HH~L@H3HHHpHsHps@pH9uI9toHHBHAHBI9uzfDHL9r\LIt$I<$IHI9t"Do HHJHKHJI9uHtH)VMM<$Ml$ UHATISH_Hu GHHS HCL9HOCHuHބu"1I9HNHOHH[A\]fDH_H9_tHHHP HfH1HH[A\]HH9ux@:ztHH@H9ufH9tL99rdHH H|H| IN8HH)H)1L8L99rHHUAM ALL D0D2IMHH9HFHEHHUH=yN+IHHfDUHATASH_Hu GHËS HCD9HOCHuHބu#1A9HNHOHH[A\]H_H9_tH~HދP HH1HH[A\]UHATASH_Hu GHËS HCD9HOCHuHބu#1A9HNHOHH[A\]H_H9_tHHދP HH1HH[A\]UHAWAVAUATSH8H}HHEH@HEHiHEH@HEHHEH@HEHHEHXH*LcMMl$MM}MFMwMtDI~TLMvHz0HJ@H9tHB@HUHp迹HUȾXH讹MuI0IW@MwH9t IG@Hp苹XL~MMwH{0HC@LcH9t HC@HpOXHBMtILDI|$0ID$@Ml$H9tID$@HpXLMtMHMHy0HA@HYH9tHA@HpHEθH}XHtGH]fI}0IE@MuH9t IE@Hp蒸XL腸MLMqHMHy0HA@HYH9tHA@HpHENH}X@Ht H]HUHz0HB@HZH9tHB@HpHE H}XHt H]HMHy0HA@HYH9tHA@HpHEʷH}X輷Ht H]@H8[A\A]A^A_]Ðff.HtgUHATISI|$LH{HHCXMd$H9t HCXHpQH{ HC0H9t HC0Hp7pH*Mu[A\]Ðff.UHAUAATASHH_Hu!VfDD9uD;k$rHC1HtHËK A9sHCHuH@uD9s4H1H[A\A]]@H_H9_t.HƯHڋH HD9ruD9k$rHH1[A\A]]HH1H[A\A]]Ðff.fDfDVfDwfD鷧fD7ifDUHAWI0AVAUATISHH訽oK HsIH IEAEIEMeHtLLIELcMt_L0IQAoD$ H@ A$HCHCI^LsIt$HtHL@HCMd$MuHL[A\A]A^A_]H邊@H9UHAWAVAUIATISHL~HL7HWLH)L)HEH98HGHHEHEL)HH9H~9IMIHLH I IuHE HHOIL9ut)fDI>IFH9t IFHp'I L9uuLuMuMuH[A\A]A^A_]fH~>L<HLH I eI9uIEMuM|$I$HEL)HHLeL9DID$HSLI$H3HբH I L9uVHHMH9H}@LHHIO"M}I]I9t(fH;HCH9t HCHpH I9uI]HtIuHH)HEMuIMufHEIOH{H酈fDUHATASH_Hu GHËS HCD9HOCHuHބu#1A9HNHOHH[A\]H_H9_tH~HދP HH1HH[A\]UHAWAVAUATSHHdH%(HE1L'IIHM}A$< VLmADLmMu HLeILLI2HNH H<LDpHO`L9ILEt~M9HcoEHHHHt2pLG`DhHtiHMHuHEH}L9t HEHpHEdH+%(HH[A\A]A^A_]@M9t#oMHcLG`HLhLmLmL뒐HuHD`II9Ht@Ha@tUALO`LULLHwh1HM&DHWH:}L::A$I$A$ADŽ$HHML,L9t&fI@I}IU(H9t IE(HpL9muADŽ$~讷IH@`I$@HPH@H HP@H9uI$I$H|wI$I$ I$HmwI$M&hDHEIIqITHITLMH)I)DЃ1҉уM L9rkHEdH+%(ukH=I@EAHuHO`F@LqUAATATLO`LUATfATLO`LUU蠟H q AH5MH=aff.UHATISH_Hu GHHS HCI9HBCHuHބu"1L9HCHBHH[A\]fDH_H9_tHHHP HfH1HH[A\]UHAVIAUIATISHHfEEU܁HL[MLA\A]A^]8Ht_UHATISI|$LH{@Md$HtHPH{ HC0H9t HC0HpHHMu[A\]ÐfDHtgUHATISI|$LH{8Md$Ht t=t-H{0H{(ӪHH膬Mu[A\]@c̐H (H5H=m`UHATASH_Hu GHËS HCA9HBCHuHބu#1D9HCHBHH[A\]H_H9_tHHދP HH1HH[A\]H?UHSHHHH+FH9HHKHKH HHpH9t0HHPHSHPHSH0@H@HH]DHPHzs+@ustPS@tT>fT9HPfHPIHSLDLDLCIL)I)ʃp1҉уM M 9rUPST>T9HP@H=:ff.fH9UHAWIAVAUIATSH_HH9ACHL)HLL)EH)H軪foEHMuAEI9tQoCL3HfH~I;MrH;Ks%HC@oHPHHH0HP@H;HrHL6FI9uH[A\A]A^A_]@uAoUIEHCrÐfDUHAWAVAUIATISHHdH%(HE1H}0HMuHHHL{HEL{MLL}eHMHHEI`HASHCI|$H]Ml$LsH{MuMmMM;uuIuMtLH}HH}uE1L9t HCHp苨0H~HEdH+%(HHLL[A\A]A^A_]fDHHfLsH{iL苪1IIt$I|$IvFHULLL,Ht/L(Mt'H]E1HiH{L{=f.HLLLJIA3H}Hu1聫HCHHEHCHLLHEHKx袘HEdH+%(uH=̧wHm}H}ff.@UHH)HAWAVIAUATSH(H=pIIHHMfHHIv LGIHAoFMHHHHfH~IHHH9L9L9 ogA&HGIIFLOGIV INHLH9szDH@IHPHH9rL9scHFHHH;H rI9sVoIEfHnAEAMHVLFIUFIU INHIEH9rIL9rHI9rHLLLL)H=MtHLL97L9soA>oAHPIV@IV LGLHHHL`HIIKdH HLAoIDLHE)EHD$$H MuHIAoAoEM1M)IEH LAUIVIHEIU(LH)EHHD$$谳H IHe[A\A]A^A_]AonA.IF(MNAF LGIFAovA6UHH)HAWAVAUATSHHHH=IILo8Im۶m۶mHHIN`H~IIAoAoNAoF )UH)MH)EH)IHP(H93H9CIF0HEH9o~A>o~A~o~A~ HVIV0HFVNFHL@IN(H9K(sHC8fHH8H9HrH;Js}HBfHH8H;H`rH9snooH8oKoC[obHC)Ucoj HEkHJ0)MHK)EHB0JB bfH8H9rLHUHL)H=mMtDH}H9H9]ovIF0A6o~HEA~ovAv Hm۶m۶mHHLxIIJL)M,IAoUIE0LLAoMAoE H@LHEI8)U)M)EHD$0$L$D$ ZH@MuIm۶m۶mH8Ao6oIH@oKoC M)13Ao~HC0L)UH8{HAov HEsXIV0)MHShLH)EIHD$0$L$D$ ıH@I8vHe[A\A]A^A_]o8IV0A>opHUAvox A~ HH0IN0HP0H@ mAo~8IF0AovHA>Ao~XHEAvA~ IVhAV8IFhIV0ANHAFX%Aov8Ao~HA6AovXA~Av o8IV0A>oxHUA~Qff.UHAWAVAUATSHdH%(HEHH)H=\IHHIHH(HLuHLmHHqLAH988HIH(HHII4$HUHHt,HeЃA&HHIT$(HEKfDHEIHt.HAA#LHID$HU@LOMIAE1At EEAAtC fC IAnGG`LGMHAE1At D E AAtF fG IAB C H H(HHGHL)H=H(WHIHOE1AуL M D9rMHBEE1ADAL MT E9rEO\IH9 H9sH LLwH cHLH YH EHEdH+%(H[A\A]A^A_]EHEI$EHUID$ A|$@{I|$EAIT$(Hs HMPIIDHtItLIL)I)Dʃr1M M 9rLC ML$(ILNIHDITHTHLL)H)Dr1҉уLM 9rI4$LE"IELFMIHITHTHL)I)r1҉уI4 I49rIt$ H}{H8LVIIH>DLL8LL>HL)I)DǃrE1DAM M A9rMD$HLH mH YAATfTI4$LE/AUBATfTIt$ H}DD@rDD8fDD>MD$>f7A0@tfAtLC ML$(HHMH988HHH(HMLL@L`HHHHIHMtHELH IIH0H@MFIN MvH8IvIFALPI9,LPMF L`ININ0HXIFAF HpL}L9HUH@HUH(HPH}L0HDž8ƅ@HEL9HUH`HUHMHHHHuHLPHDžXƅ`RH}H(H9t HEHpeH}L9t HEHpOHPHVHL9tH`Hp&H0L9tH@Hp IHIVI~L0L9RHwML1@"@L)LFL(LA1AA}A:A9LOMLAE1A-AA3BC%LNMIAVE1AAAGGHLL9tH`HpƓH0L9tH@Hp誓IGHHHIG0L)HIG HLIHHHrH0IOH@IOIWIGH8IOAGLPL9uHPIH`IOMAHHXIOIGHHpH H9HSHIOIWHSIWHHCIWHK HL9+HH9Hs(I?IOIwHK0IHHS H{0HC(H HS@HEIWH0L9HUH@HUH8HUH(HPL0ƅ@HXHDž8HEL9OHUH`HUHpI)HM1H988HHLPHULHƅ`HDžXHJH}H(H9t HEHp]H}H H9t HEHp@HPL9tH`Hp$H0L9tH@HpIHIHMIOIWL0MwH9~IGMHHp1@t 9A9@tD9fE9HJ 9A 9=HqIILp1@t :A9@tD:fE9H{:A9nHKHI9vHtgHɃHHH HtHt HrHH) H)ЃIr1҉ЃI<H<9rH{HIWIO H3IGMLHp1@t 9A9@tD9fE9HV 9A 9IH8IILHrc1@t 9A9@tD9fE9H 9A 9HS(MWIL9"HtfHgA3HHDHLHLHNHH)HH)Dʃr1LL9rIwLK(LIWHS HHH9YHS(IOIWHS0IHHHC A1AȃH<I<D9rM H>A1AЃI|I<D9rH(L LaA1AȃI<I<D9rH L LoA1AȃI<I|D9rML LH7CfCIA_EEAA?FfGIADEAAD:fE9HA1p:A9AR AL;D fE H׋ A@ALfLIwLK(@H0@2tHtft H{^fDE1AL(I|I<D9rM LMA1AЃI I D9rMLEE1ADALMTE9rO\I~E1AЃMMD9rMLHS(IwIWHS AATTI4$LESAWIWHKIO H3c7A0tAtLC ML$(DDDD8DD>MD$AUATTIt$ H}H^H02tt H{LLIwLK( {UHAVAUIATIESH?HHVH6H9HCH9IuIMIUHSIUHH;HKfHCoC K Me(AE MtCIT$IL$HH9H1 8pAD$PAT$oS0I}0fIu@AU0HC@IE@HC@C0HtH)胉CHHSpAEHHCPIEPCXAEXHC`IE`HChIEhIEpH9MMt<MM6I|$ID$H9tID$Hp0LMuI}pMIuxL9t HoHKpHAH9rHsxHIMpHIuxIIHtH@(1HIHHǃHCxHǃH{pHǃHǃoIfIAHIHǃHt[H)A\A]A^]f[A\A]A^]ID$I$LPI$LPfDH9t#IuHIUHSIUH;uL9trHtHtXێHSI}IUH;@fHLIxHLmnHSI}HUHoogoo HG0HO()]HE)e)mH;OsDHGooHHH8oPXHPh@pHH;H(rHEfoufo}fo]HG07_ ]@H9UHAVAUIATISH_8H@H9A8zfooKHoS HC0L))EHE)M)UH8~rLLH)H聆fo]foeH8fomHEA$ID$0Ad$Al$ I9tID$(H9C(rHH8I9uH@[A\A]A^]fDuAo4$3Ao|${Aot$ s ID$0HC0pff.@UHAWAVLuAUIATIHSHhIt$dH%(HE1HGLuH9HEID$HEIT$ L}ID$0HuI<$IL$(ID$AD$L}H9$HUIT$0HUID$ ID$@HMHUID$(AD$0HEI;D$gI\$I8fI9HCLC(HsHS HC(HH{LCHCHSHHC8H9HHSHH9HsH{HHS8HHs@HSHHHCH;HCIHHHHCXHHAH9E H{HC(HSHsLkHH90I9HCHsLHS HC(Lc9H9t#HCHS8HC@HHCHH[Hh@HDHSIHt=HЃ7tHs8LCLHHS@HCfDHCI9Ht%H<Hx HSH{HxHS H{^IEI}HUHuH9gL9>fHnIMIUEAEHZHEHMHEIU0IE H9HHUL9oMIM0IU AM(HHEHMHEHEH}IE@L9t HEHp߁H}L9t HEHpɁHEdH+%( Hh[A\A]A^A_]LHSH{HS H{0fHSHC8HS@HCffL9oUIU AU(L}L}L!fL9fHnIUEAELuLuLDHLNIHHTHTHL)H)D1҉փL7M19rHUHHt>HuЃtUIM HuHHIU(HE=HfHt5H 2tMNHuIEIu0HEHVMH1t AtD fE HALAMHAsPE1At D E AAtF fG IAB C HE1AAуNOD9rMHA1ALMD9rMHHUHxMHHILHLH)HI)1I4H49rHEHyMHHITHTHH)I) 1҉уI4H49rTTHs8LC6TfTHs8LCUHuEHUIE MALLUATTIM HuxATfTIM Hu`ALfLnUHAWAVAUATSHxdH%(HE1H9LgHHIL9Lm@It$@LLIHH;s@WLHOHWLmI97LELGLELW HL@0HMHULO(HGGHMM9LULW0LULG HG(G0H)LMHuHHPH8II)H9HrHrLJ(Hr HrHr(HHzHLJHBHz8HrHH9HrH9 Hr8HrLJHHr@H2HrHHHzHL HBHHHHHrXHL9AHzLJ(HrL9HHUHSHu~DD D@TDL2fDL7Hz8Hr@DDAEBtfBtHzLJ3LhLpE6E2Ax<5G4fG4IA'EEAAbLhLpG3fG2IxEE1AEANO\E9rO\E1IAHxEE1HpADAI0H1E9rN4HpHxLxLpO4LhE1x-EHUHC EHUH:HELFIIHHTHTHL)I)r1҉փI<1I<09rHs H}IELFMIHI|H|HL)I)׃r1ƒI4I49rHD DDL2DL7Hz8HrnDEDBtBtHzLJUTTHs H}AEAD=D>H#HeqfDUHAWAVAUATISHHdH%(HE1讌t-f)@AD$uGH@HHHu=E1HEdH+%(HeD[A\A]A^A_]DAoL$0)@ID$AT$(H HHH(ID$ xHpfopHEHD$$H AƄsAD$tVHIT0 t@Dz Ml@Et2IMfI M9tLH|nuLH}LPjHUfo]HELeH`L})PHXI9tL]fH0HBZHXu&HPHHPI9uI9uDHv"L}HPHXf.LdHPHX]I9](bff.UHAVAUIATISH`dH%(HE؋FtCA1@HL9t/AD$9IDLH0HPNu1|fDLH}LeiHUfoEHEH]HULu)EHUH9t}tLdH0LXtHUu=HEHHEH9uI9uҸHUdH+%(utH`[A\A]A^]fDHv"L:|HEHUH9uI9zfLcHEHUWH  H5H=$W`rafUHAWAVIAUATISHxHvdH%(HE1Iot3AFI^0L,L9u%DHI9t?H3LIuƅoHEdH+%(oHx[A\A]A^A_]AFHIL0AFIL,L9uIfDud{t'HCHLH0HPOwIM9Ivf{uHsLW{(t"Hs@lHLVHHetH}LHpd?IM9uLH}LpfHUfoEHEH]HULu)pHxH9trtL\bH0LAVyHxu%HpHHpH9uI9uS@Hv*LyHpHxH9uI9u$DL{`HpHxZ1)HEdH+%(u H5>H=zh^^H H5H=]UHAWAVIAUATSHHhHv(IV0dH%(HE1Yu-E1HEdH+%(HhD[A\A]A^A_]DAAFLH}Lp7eHUfoEHELmHUL})pHxI9tttL`H0HTfHxu'HpHHpI9uI9uHEHHEI9uI9uθHUdH+%(H`[A\A]A^]Hv*L"vHEHUI9zI9qfDL\HEHUFfDHHI^1LHeLHHAD$$EE 1I'[fDUHAUATSH(dH%(HE1Ht{HFLfHL9HE1LmHEHEI9}tL]H0HfQt'HUu9HEHHEL9uHuHUdH+%(ufH([A\A]]ÐHv*LtHEHUI9HzfDL[HEHUOfDE11%ZH * tH5H= XfUHAWAVAUIATISHF@t'Hv HW<{ AF%HD H0HPNAD$AT$@@%@I\ HL4HD IL9tzL;I$MA<{v%H BH5jjH=jWfDHtH2HBLHtBLLOt3HII9uH[A\A]A^A_]DSOH1[A\A]A^A_]H mH5iH=ps;W?fDUHAWAVAUIATSHHhHvIUdH%(HE1 u-E1HEdH+%(xHeD[A\A]A^A_]DAoE H H$IE0HD$9H AĄtAELH}Lp^HUfoMHELmHUL})pHxI9tutL7ZH0HN?Hxu(HpHHpI9uI9uHv*LqHpHxI9uI9uDLSXHpHxWAE8AEDMuHHN<0@LH-aI M9uVfUfHAWAVAUIATISHdH%(HE1)@Ft oN )@H@HHLu,E1HEdH+%(HeD[A\A]A^A_]@IEAUH LHH(IExHpfopHEHD$$"H AƄtAELH}LP\HUfo]HEH]H`L})PHXH9tLXH0LKHXHPHHPH9uI9uHHIT ADz I\0E/IIfHLE_H I9uHv2LnHPHXH9I9LDLUHPHX;Tf.UHAWAVAUIATSHHhdH%(HEHFHH0HPu0E1HEdH+%(HhD[A\A]A^A_]LH}AZHUfoELpHELmHUL})pHxI9totLAVH0H&JnHxu"HpHHpI9uI9uDHv*LmHpHxI9uI9uDLcTHpHx]Rf.UHAWAVAUIATSHHhdH%(HEHFH0HPhu,E1HEdH+%(HhD[A\A]A^A_]@LH}AyYHUfoELpHELmHUL})pHxI9twtLTH0HHrHxu*HpHHpI9uI9uHfHv*L2lHpHxI9uI9uDLSHpHxU{Qf.UHAVAUATISHH`dH%(HEHFtHH0HPLH}Lm:XHUfoEHELeHULu)EHUI9ttLSH0HGHUu;HEHHEI9uI9uθHUdH+%(ueH`[A\A]A^]@Hv*LjHEHUI9uI9xf.LQHEHUMfD17PfDUHAWAVAUIATSHHhHv IU(dH%(HE1 QAIE0HtH0HPH.I}@"HtH0HPH LH}LpVHUfoEHELmHUL})pHxI9tL)RH0HFHxuBHpHHpI9uI9uHEdH+%(uwHhD[A\A]A^A_]DHv2LZiHpHxI9mI9dL#PHpHx1E1zNfUHAWAVAUIATSHHhdH%(HEHF H0HP(u,E1HEdH+%(HhD[A\A]A^A_]@LH}A9UHUfoELpHELmHUL})pHxI9twtLPH0HDrHxu*HpHHpI9uI9uHfHv*LgHpHxI9uI9uDLNHpHxU;Mf.UHAWAVAUIATSHHhHv IU(dH%(HE1u-E1HEdH+%(xHeD[A\A]A^A_]DAoE0H H$IE@HD$H AĄtAELH}LpSHUfoMHELmHUL})pHxI9tutLOH0HB?Hxu(HpHHpI9uI9uHv*LbfHpHxI9uI9uDL3MHpHxWAEHAETMuXHN<0@LH VI M9ubKfUHAVIAUATISH`dH%(HEHFHt1HXL,L9u HI9tH3L7u1z@LH}LmRHUfoEHEH]HULu)EHUH9t}tLMH0LrAtHUu=HEHHEH9uI9uҸHUdH+%(uUH`[A\A]A^]fDHv"LdHEHUH9uI9zfLKHEHUW!JUHAVAULmATSHH}H`dH%(HE1QHUfoEHELeHULu)EHUI9tLLH0Hl@t(HUu?HEHHEI9uI9uҸ@HUdH+%(u[H`[A\A]A^]@Hv*LcHEHUI9}I9t뱐LJHEHUIIUHAWAVAUIATSHHhdH%(HE1Q-u-E1HEdH+%(HhD[A\A]A^A_]DLH}AOHUfoELpHELmHUL})pHxI9totL1KH0H?qHxu"HpHHpI9uI9uGHv*LbHpHxI9uI9uDLSIHpHx]Gf.UHAWAVAUIATSHHhdH%(HE1qu-E1HEdH+%(HhD[A\A]A^A_]DLH}AqNHUfoELpHELmHUL})pHxI9totLIH0H=qHxu"HpHHpI9uI9uGHv*L2aHpHxI9uI9uDLHHpHx]{Fff.UHAWAVAUATSHHxdH%(HE1HHELuIIH`LuHxHHLEHEH}ML}H}LLL}CH}H}u>Hbpf_probH3He_read_uH3WH oL9u"DL9#ƅoHEHp;TH}L9t HEHp%ToHCHCHCHEdH+%(HxH[A\A]A^A_]Hbpf_probH}He_read_uH3H3WH userL9XHEMHpSH=Kk H1HpHVHDžp"HCLLHHB;LuHELuEH}L9HEHpSDHx1HVHEHHxHELL:ZHxHUf.Hz1LDH`LLLuAH}H}#Hbpf_probH3He_read_uH3WH HEHpRRHC1HxHHHDžxVHxfoHHStrfPHxHHCfD1tHi HSDHuser_strH9GJ1HDuserLQHCCHbpf_probHKHobe_readHHKHCef.L9HEHpMmBLPH'H'ff.fUHHAWIAVIAUATSHHHHxdH%(HU1IWHH?HHH9 L8HH0H@HKHxL HMcHMLILqIIMUM}M9LIFHLLLPLXH`LhHpFHpLhH`LXLPu%LȾL)H9HH9~IEHxHHHHCHSH9HIUL9IMHsL{HKIMHKHIEIuIEfAo](HC8L{(Ls0[(IU8HpHS8LIE8Ae(M9tHHà1NI9uMtHpLL)OH@I9uLMDLLLXL`HhLpaELpHhL`LXuLоL)H9})HH9~yHMIMDHIEH9MHIMrLȾL)H9}HH9Dt7IUHL9Ht>H Ѓ tA HKIuHHHSIE2@L9tIEL{HCIEHCHIE L8L0AuILH?LHL9qIIvL}L}MFHUIVH9HuIvHuIVIV8fAon(LEHUIT$HIFH?AFHIF8mHAF(L9H&LXMMfDHxILHMIN$Ml$MT$M9IFHHLH`HhLpCLpHhH`HLL)H9:HH9~#I$HxILHHPHHHH9I|$HhI9GIL$HpLPHHIL$HHHIT$It$ID$fAoL$(Lx(Hp8Lp0H(IL$8HpMHH8ID$8AT$(M9t@LIŠaJM9uMtHpLL)5KHSL}IHH?HHH9HhHPLHLhHpAHpLhu#LL)H9{HH9~dLxMMHuILXMIUIEIuH9qL9fInIUIMEAEHdHEHUHEfIE8ouMu(EHxMe0HEAu(HEIE8M9L@HHàHI9uMtHxLL)ILeH]I9@HHàHI9uH]HuH)HtHIH}L9t HEHpnIHEdH+%(THĨ[A\A]A^A_]fI$HuH9LxMMLXIMIEIUIuH9L98fInIMEAEL}L}L@LL)H9HH9@IL$HI9gHt2HʃxvHHfDHH IT$fDIL$HhL9tIT$LPHPIT$HPHhHhIt$GHhH\AIUHCHSIEOAIL$HPHH IT$MHuHMMLXHhILFIHILHLL)HI)r1ɉ΃I<2I<09rHpI|$HHIHyMHHITHTHH)I)11҉уI4H49rOd$HxMEMIIIIwIUIUL9HMGI9MOI}IuMMIwIuH9IWIIGfAo(IE8I}(I]0A}(Iw8HpIu8IIG8AG(H9t*LhIfLIĠ!EL9uLhLHtHpH)EMA ALfLHpI|$bHMt9IDAAtu@0jLEIEMEBHE'Ipsz@*:@}@|2fA|7fLfLLHHxLHL,M`LL:ML?1H I 9rHuH)HEIUHMIEIEH9HHUMHDItHtHpHH)HI)Dƒ1I< H<9rAATTHKIuPATfTHKIu8ULEoA ALLHpI|$tI9t IWIuIUIWIULIW5MOMM9'Mt?IDAAtDDu:I}MGMHMMB IWL댋:}|2A|7 tftI}MGAtft24u0AttnHHDLLLLLOIL)HH)DƒW1H I 9r<MOIU8DDttI}MGHff.UHSHdH%(HE1H<{v @HGHHHHHH@HHHHHHH{ u.CfUf%fHUdH+%(uvH]{*u:HGH@JtHnG@LHv@H}HEsHHtx }-hn2YHfHHHvHHUHB-fUHAVAUIATLeSHHdH%(HE1@IALH]70HLHE0?HLHE/jMvE11HEdH+%(HHL[A\A]A^]HHmHeHHHB<<#tlzHx-{DH{ MH I1LHI)Հ{f.H[ {#u*H{ aMHMl 1LHI)Հ{#tH 9BH5 BH=6Bq/{u.H{ MHpMl 1LHI)Հ{lH MBH5AH=A/DHxooHx{CAf<uE1H{ AIH{(IULHK .1L,1LHI)Հ{H[(H,x{w*H{ LHtfMl 1LHI)Հ{b]-Hx{ubH{KHtMl 1LHI)Հ{u-ff.6@tHH@uHv HH@UH)UHHt !u ]QQff.Ht;WJ{v#18wHHt B UH mH5h?H=IH,HUHAWAVAUATISH8Ml$MMuM]M~M7I_HHCHEHHEH@HEH$HEH@HHPHHzHEHUUHUHHRHy@HU HMHUHEHy Hq0H9t!HEHA0HUHp;HUHEHMXHHUHE;HUHEHwHPHx@HEHU HEHx HP0H9tHH0HqZ;HEXHI;H}HEHCHEH@HtH0HH HtHHHHtHHHHtHHHHH9tHHp:HHH9tHHps:{`x2H{@HCPH9t HCPHpM:H{ HC0H9t HC0Hp3:XH&:H}tlH]fDHEHHHx@HM HMHy HA0H9tHA0HpHE9H}ȾX9H}HEHEjI@I_HtI0HI HtIHIHtIHIHtIHIIH9tIHp9IIH9tIHp8A`x1I@IGPH9t IGPHp8I IG0H9t IG0Hp8XL8HtrI3f.HEHPHx@HU HMHHy H0H9tHA0HpHEV8H}XH8H}-HEHEI@I^HtI0HI HtIHIHtIHIHtIHIIH9tIHp7IIH9tIHpr7A~`x/I~@IFPH9t IFPHpK7I~ IF0H9t IF0Hp17XL$7HtII@I]HtI0HI HtIHIHtIHIHtIHIIH9tIHp|6IIH9tIHpY6A}`xl.I}@IEPH9t IEPHp26I} IE0H9t IE0Hp6XL 6HtI}I$@I\$HtI$0HI$ HtI$HI$HtI$HI$HtI$HI$I$H9tI$HpW5I$I$H9tI$Hp15A|$`xC-I|$@ID$PH9tID$PHp5I|$ ID$0H9tID$0Hp4XL4HtI@H8[A\A]A^A_]Ðff.UHATISHH0H?HVdH%(HE1ID$H6H9HC@H9I4$IL$IT$HSIT$HGH;HKHCA|$ xG,C IL$`HSPAD$ C$C AD$$C(AD$(HC0ID$0HC8ID$8HC@ID$@CHAD$HID$PH9HHK`WH9~HsXI|$`IT$PIt$XHS`IT$`HHCPH{`HCXI$HID$pH9HHSpH9HsxIT$pI$It$xHI$H;HCpHHCxfH~)EHtof)efoEI$Ao$Ao$A$fHnfl)U)]A$HtH}HHf~)EHtof)mfoEI$Ao$Ao$A$fHnfl)e)mA$HtH}HHf~)EHtof)ufoEI$Ao$Ao$A$fHnfl)u)}A$HtH}HHf~)EHtof)}foEI$Ao$Ao$A$fHnfl)U)]A$HtH}HA$A$HEdH+%(HH0[A\]L9HtH7HSI<$IT$H;:f.H9t+HCXIT$PID$XHC`ID$`HHCPHKXLKPMD$PHM97Ht>Hȃ},t gIt$PH{XHHIL$XHCPAfH9t+HCxIT$pID$xHI$HHKpfH{xLSpML$pIM9Ht?HP@tIt$pLCxLHI|$x8HCpH9wI4$HIT$HSIT$H;f.HHH=HHH~HTHHTHH)H)D\1҉փL1L79rAHLFIHHLHLHL)H)l1ɉ΃H<2I<09rQ@HKXID$PIDH{xID$pDHSI<$sfDHHWH TTIt$PH{XTTIt$pLCx[TfTIt$pLCxCTfTIt$PH{Xff.@UHAWIAVIAUATISHHHw/HCHIHCCHKt%(H?H+CL9rALLH8H?H+CL9r,LLH8HH[A\A]A^A_]H= H= ILff.UHAWAVL5AUATMSHH=H8HLHLΉdH%(HE141LM,L @H߅L]HMDH1AT*H115^_GALn*HLPL1L*ZY=7DEHLHAWATDHr1C*H =!H\-HDH.9H5D#1L#+AWH߅ATHL LHLE1)X1ZHUdH+%(He[A\A]A^A_]HHt DEtX}~ |LAWDHrH1H:)Y^PMLH1H)AXAYDMLWAW78$LHbIH& H81xD!Q78$IؾH `IHi& HH810HO& HHH81 H)& LH"H81kH& LHڅH8UHATISH_Hu GHHS HCI9HBCHuHބu"1L9HCHBHH[A\]fDH_H9_tH!HHP HfH1HH[A\]UHATISHHHH9HFHt u L)HHM[A\]Ðff.UHAWAVAUIATSHHLgL;gt[IL$HFI $HHvH9.I$HSIT$It$HHCCIE H[A\A]A^A_]fHL?LL)HHH9M9HH9H[A E11H H;HKHsLHLH9$H8H{HxHpH HCCM9M)IOHI%fDH0H1HpL@H H I9HxLAH8HqH9uIp@EtDD@KLAHHH9HFIILHM".HMHIL@ MD$ MtIuLLEHUL)%LEHUIUMEMuH[A\A]A^A_]@LLANLNLL@IIL)I)51AOO9rfHVsGgsAt$totftHsIHsIIt$H|0H|1I|$HH)I)Ƀr1ɉ΃M1L79rHs?H~s?@DSDP@DT9fET9LSLPAN\O\LPIIM)DM)˃jHE}1AK K E9rHE@DDDD1DD7LA`DD1fDD7LAIsAt$ttHsKDSDPDT9ET9HH9HGHIxH=Hf.UHATASH_Hu GHËS HCA9HBCHuHބu#1D9HCHBHH[A\]H_H9_tHnHދP HH1HH[A\]UHAWIAVAAUMATASH(H}Mt8A7H}DMDA_^2LH/DMȅtCM|I)uAEHEEDMD HEH8B#HHU7IHtvHUIwJ< L9HщIBL)?AGDEt+DM11DLLDʉAG9rH]L+H]H(D[A\A]A^A_]AUHAWAVAUATSH(HMdH%(HE1HHHHHEH9IIL= HEn)H}L8LpHEHtHPIELeLP HKHHHHttZHHHuH;LeLELH}HtHPH H9]pHEdH+%(u.H([A\A]A^A_]H ~6H5o#H=#HrHfDUHAWAVAUATSH(H}HHEH@HEHhHEH@HEH3HELxMI_HLkMtbMeMt|IT$HLrMt'I~HU`LMv(HUMuLr(HMthLLc(HMt+LwDMe(LMtM]I_(LyHt3I)@IT$(LHURHUHtIH}(H_/Ht H]H}Ⱦ(H_Ht H]H}(H_Ht H]cH([A\A]A^A_]fUHAWAVAUATSH8H}HHEH@HEHiHEH@HEHHEH@HEHHEHXH*LcMMl$MM}MFMwMtDI~TLMvHz HJ0H9tHB0HUHpHUȾ@HMuI IW0MwH9t IG0Hp@LMMwH{ HC0LcH9t HC0Hp@HMtILDI|$ ID$0Ml$H9tID$0HpN@LAMtMHMHy HA0HYH9tHA0HpHEH}@HtGH]fI} IE0MuH9t IE0Hp@LMLMqHMHy HA0HYH9tHA0HpHEH}@Ht H]HUHz HB0HZH9tHB0HpHELH}@>Ht H]HMHy HA0HYH9tHA0HpHE H}@Ht H]@H8[A\A]A^A_]Ðff.UHAWAVAUATSH8H}HDHEH@HEHHEH@HEHHEH@HEHXHEHXH1LcM%Ml$MMuMIFHEHL}IHIGIIHEH9tIHpIHIOXH9t IGXHpI(IO8H9t IG8HpLH}uIIM~H9tIHp~I~HIVXH9t IFXHpdI~(IV8H9t IF8HpJL=MMHHLcH9tHHpH{HHCXH9t HCXHpH{(HC8H9t HC8HpHMLUI$I$Ml$H9tI$HpI|$HID$XH9tID$XHphI|$(ID$8H9tID$8HpKL>M MHMHHHYH9tHHpHEHUHzHHBXH9tHBXHpHEHUHz(HB8H9tHB8HpHEH}HH]+f.IIM}H9tIHpiI}HIEXH9t IEXHpOI}(IE8H9t IE8Hp5L(MoMHMHHHYH9tHHpHEHMHyHHAXH9tHAXHpHEHUHz(HB8H9tHB8HpHEH}Ht H]HUHHHZH9tHHpHEYHMHyHHAXH9tHAXHpHE7HUHz(HB8H9tHB8HpHEH}ȾHt H]`HMHHHYH9tHHpHEHMHyHHAXH9tHAXHpHEHUHz(HB8H9tHB8HpHEH}xHt H]H8[A\A]A^A_]Ðf.HtWUHATSHH{II|$ ID$0H[H9tID$0HpHLHu[A\]fÐff.HtWUHATSHH{II|$ ID$0H[H9tID$0HpXLHu[A\]fÐff.HtgUHATISI|$LH{@HCPMd$H9t HCPHp1H{ HC0H9t HC0Hp`H Mu[A\]Ðff.HtWUHATSHH{II|$(ID$8H[H9tID$8HpHLHu[A\]fÐff.HUHATISI|$LHMd$HH9tHHp4H{pHH9tHHpH{PHC`H9t HC`HpH{ HC0H9t HC0HpHMa[A\]DÐff.HUHAVIAUATSI~MMeHI]@MvI9t.H;HCH9t HCHpWH I9uI]@HtIuPHH)6I} IE0H9t IE0HpXLMq[A\A]A^]ff.UHATASH_Hu GHËS HCD9HOCHuHބu#1A9HNHOHH[A\]H_H9_tH HދP HH1HH[A\]UHGHAWII4AVIAUMATISHHHHGG H?H+CL9rALLHH?H+CL9r,LLHHH[A\A]A^A_]H=!H=IUHAUIATIHSHHdH%(HE1I<$Hu HH]HwGHu1AEAD$I\$HEdH+%(umH[A\A]]@Ht'fLHu1I$HHEID$HLGH]I<$HEdH+%(u H=7ff.UH)HAUIATISHHdH%(HE1HUHwJH?Hu1H]I<$I\$HEdH+%(uLH[A\A]]ÐHt$fHu1I$HHEID$HLjH]I<$+HHconst PtrTy llvm::SmallPtrSetIterator::operator*() const [with PtrTy = llvm::AnalysisKey*]/usr/lib/llvm-18/include/llvm/ADT/SmallPtrSet.hbool llvm::SmallPtrSetImplBase::erase_imp(const void*)void llvm::SmallPtrSetIteratorImpl::AdvanceIfNotValid()const PtrTy llvm::SmallPtrSetIterator::operator*() const [with PtrTy = void*]basic_string: construction from null is not validconstruct into lambda captured variableconstruct into member variable/usr/lib/llvm-18/include/clang/Analysis/ConstructionContext.hstd::experimental::optional::operator->() const::decltype(auto) llvm::cast(const From&) [with To = detail::UniqueFunctionBase::NonTrivialCallbacks*; From = PointerUnion::TrivialCallback*, detail::UniqueFunctionBase::NonTrivialCallbacks*>]/usr/lib/llvm-18/include/llvm/Support/Casting.hisa(Val) && "cast() argument of incompatible type!"bool llvm::DenseMapBase::LookupBucketFor(const LookupKeyT&, const BucketT*&) const [with LookupKeyT = const llvm::AnalysisKey*; DerivedT = llvm::DenseMap::Invalidator>, std::default_delete::Invalidator> > >, llvm::DenseMapInfo, llvm::detail::DenseMapPair::Invalidator>, std::default_delete::Invalidator> > > > >; KeyT = llvm::AnalysisKey*; ValueT = std::unique_ptr::Invalidator>, std::default_delete::Invalidator> > >; KeyInfoT = llvm::DenseMapInfo; BucketT = llvm::detail::DenseMapPair::Invalidator>, std::default_delete::Invalidator> > > >]/usr/lib/llvm-18/include/llvm/ADT/DenseMap.h!KeyInfoT::isEqual(Val, EmptyKey) && !KeyInfoT::isEqual(Val, TombstoneKey) && "Empty/Tombstone value shouldn't be inserted into map!"typename PassT::Result& llvm::AnalysisManager::getResult(IRUnitT&, ExtraArgTs ...) [with PassT = llvm::PassInstrumentationAnalysis; IRUnitT = llvm::Module; ExtraArgTs = {}; typename PassT::Result = llvm::PassInstrumentation]/usr/lib/llvm-18/include/llvm/IR/PassManager.hAnalysisPasses.count(PassT::ID()) && "This analysis pass was not registered prior to being queried"static bool llvm::isa_impl_cl::doit(const From*) [with To = llvm::object::ObjectFile; From = llvm::object::SymbolicFile]Val && "isa<> used on a null pointer"decltype(auto) llvm::cast(From*) [with To = object::ObjectFile; From = const object::SymbolicFile]inner map %s has inner map %s could not open bpf map: %s, error: %s failed to pin map: %s, error: %s /var/tmp/bcc/bpf_prog_%llx/%s.c/var/tmp/bcc/bpf_prog_%llx/%s.rewritten.c/var/tmp/bcc/bpf_prog_%llx/%s.dis.txt%s: __pos (which is %zu) > this->size() (which is %zu)Internal error: missing bcc/helpers.he-m:e-p:64:64-i64:64-i128:128-n32:64-S128Could not create ExecutionEngine: %s llvm::StringRef llvm::StringRef::drop_front(size_t) const/usr/lib/llvm-18/include/llvm/ADT/StringRef.hsize() >= N && "Dropping more elements than exist"llvm::StringRef llvm::StringRef::drop_back(size_t) constllvm::Twine::Twine(const llvm::StringRef&)/usr/lib/llvm-18/include/llvm/ADT/Twine.hllvm::StringRef llvm::getTypeName() [with DesiredTypeName = AlwaysInlinerPass]/usr/lib/llvm-18/include/llvm/Support/TypeName.h!Name.empty() && "Unable to find the template parameter!"Name.ends_with("]") && "Name doesn't end in the substitution key!"llvm::StringRef llvm::getTypeName() [with DesiredTypeName = PrintModulePass]void llvm::ICmpInst::AssertOK()/usr/lib/llvm-18/include/llvm/IR/Instructions.hisIntPredicate() && "Invalid ICmp predicate value"getOperand(0)->getType() == getOperand(1)->getType() && "Both operands to ICmp instruction are not of the same type!"(getOperand(0)->getType()->isIntOrIntVectorTy() || getOperand(0)->getType()->isPtrOrPtrVectorTy()) && "Invalid operand types for ICmp instruction"llvm::SmallPtrSetImplBase::SmallPtrSetImplBase(const void**, unsigned int)SmallSize && (SmallSize & (SmallSize-1)) == 0 && "Initial size must be a power of two!"decltype(auto) llvm::cast(const From&) [with To = detail::UniqueFunctionBase::NonTrivialCallbacks*; From = PointerUnion::TrivialCallback*, detail::UniqueFunctionBase::NonTrivialCallbacks*>]static To llvm::CastInfoPointerUnionImpl::doCast(From&) [with To = llvm::detail::UniqueFunctionBase::TrivialCallback*; PTs = {llvm::detail::UniqueFunctionBase::TrivialCallback*, llvm::detail::UniqueFunctionBase::NonTrivialCallbacks*}; From = llvm::PointerUnion::TrivialCallback*, llvm::detail::UniqueFunctionBase::NonTrivialCallbacks*>]/usr/lib/llvm-18/include/llvm/ADT/PointerUnion.hisPossible(F) && "cast to an incompatible type!"decltype(auto) llvm::cast(const From&) [with To = detail::UniqueFunctionBase::TrivialCallback*; From = PointerUnion::TrivialCallback*, detail::UniqueFunctionBase::NonTrivialCallbacks*>].BTF.ext reloc func_info failed .BTF.ext reloc line_info failed struct %s is not a valid map struct 'key' should be the first member expect key size to be %d, got %d 'value' should be the second member expect value size to be %d, got %d .BTF string table overflowed, some lines missing Processing .BTF section failed Processing .BTF.ext section failed std::pair, bool> llvm::StringMap::try_emplace(llvm::StringRef, ArgsTy&& ...) [with ArgsTy = {}; ValueTy = std::unique_ptr; AllocatorTy = llvm::MallocAllocator]/usr/lib/llvm-18/include/llvm/ADT/StringMap.hNumItems + NumTombstones <= NumBucketsllvm::Twine::Twine(const char*)Debug Error: no section entry for section Debug Error: disassembler failed: const T& llvm::ArrayRef::operator[](size_t) const [with T = unsigned char; size_t = long unsigned int]/usr/lib/llvm-18/include/llvm/ADT/ArrayRef.hIndex < Length && "Invalid index!"llvm::ArrayRef llvm::ArrayRef::slice(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]N+M <= size() && "Invalid specifier"llvm::Twine::Twine(const std::string&)Debug Error: cannot get target Debug Error: cannot get register info Debug Error: cannot get assembly info Debug Error: unable to create instruction printer Debug Error: dwarf context creation failed T& llvm::SmallVectorTemplateCommon >::operator[](size_type) [with T = std::unique_ptr; = void; reference = std::unique_ptr&; size_type = long unsigned int]/usr/lib/llvm-18/include/llvm/ADT/SmallVector.hstatic bool llvm::isa_impl_cl::doit(const From*) [with To = llvm::DWARFCompileUnit; From = llvm::DWARFUnit]decltype(auto) llvm::cast(From*) [with To = DWARFCompileUnit; From = DWARFUnit]Debug Error: dwarf context failed to get line table HARDWARE perf event config out of range SOFTWARE perf event config out of range Unable to open or attach perf event for BPF_OUTPUT HW_CACHE perf event config out of range Unable to open or attach TRACEPOINT or BREAKPOINT events Invalid perf event type %u config %lu bpf: Failed to load program: %s HINT: Looks like you exceeded the BPF stack limit. This can happen if you allocate too much local variable storage. For example, if you allocated a 1 Kbyte struct (maybe for BPF_PERF_OUTPUT), busting a max stack of 512 bytes. invalid mem access 'map_value_or_null'HINT: The 'map_value_or_null' error can happen if you dereference a pointer value from a map lookup without first checking if that pointer is NULL. HINT: The invalid mem access 'inv' error can happen if you try to dereference memory without first using bpf_probe_read_kernel() to copy it to the BPF stack. Sometimes the bpf_probe_read_kernel() is automatic by the bcc rewriter, other times you'll need to be explicit. HINT: The 'unknown opcode' can happen if you reference a global or static variable, or data in read-only section. For example, 'char *p = "hello"' will result in p referencing a read-only section, and 'char p[] = "hello"' will have "hello" stored on the stack. HINT: bpf_%s missing (added in Linux %s). decltype(auto) llvm::dyn_cast(From*) [with To = StructType; From = Type]detail::isPresent(Val) && "dyn_cast on a non-existent value"constexpr llvm::ArrayRef::ArrayRef(const T*, const T*) [with T = llvm::Type*]llvm::Type* llvm::Type::getContainedType(unsigned int) const/usr/lib/llvm-18/include/llvm/IR/Type.hi < NumContainedTys && "Index out of range!"static bool llvm::isa_impl_cl::doit(const From*) [with To = llvm::Instruction; From = llvm::Value]decltype(auto) llvm::cast(From*) [with To = Instruction; From = const Value]static bool llvm::isa_impl_cl::doit(const From*) [with To = llvm::GlobalValue; From = llvm::Value]static bool llvm::isa_impl_cl::doit(const From*) [with To = llvm::VectorType; From = llvm::Type]decltype(auto) llvm::dyn_cast(From*) [with To = VectorType; From = Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = llvm::AllocaInst; From = llvm::Value]static bool llvm::isa_impl_cl::doit(const From*) [with To = llvm::FunctionType; From = llvm::Type]decltype(auto) llvm::cast(From*) [with To = FunctionType; From = Type]static llvm::GetElementPtrInst* llvm::GetElementPtrInst::Create(llvm::Type*, llvm::Value*, llvm::ArrayRef, const llvm::Twine&, llvm::Instruction*)PointeeType && "Must specify element type"bpf: Failed to allocate temporary log buffer: %s bpf_btf_get_next_id failed: %d bpf_btf_get_fd_by_id failed: %d bpf_btf_get_info_by_fd failed: %d btf__load_vmlinux_btf failed: %d btf__load_module_btf failed: %d btf__find_by_name_kind failed: %d bpf: %s is not found in %s BTF bpf: %s. Program %s too large (%u insns), at most %d insns bpf: log_buf size may be insufficient bpf: Resolving device name to index: %s bpf_attach_raw_tracepoint (%s): %s bpf_attach_raw_tracepoint (kfunc): %s bpf_attach_raw_tracepoint (lsm): %s bpf: Attaching prog to %s: %s ioctl(PERF_EVENT_IOC_SET_BPF) failedioctl(PERF_EVENT_IOC_ENABLE) failedExactly one of sample_period / sample_freq should be set ioctl(PERF_EVENT_IOC_DISABLE) failed/sys/bus/event_source/devices/%s/type/sys/bus/event_source/devices/%s/format/retprobefilename (%s) is too long for buffer cannot detach kprobe, probe entry may not exist specified path %s is not on BPF FS %s: extra data at end of sample (check your kernel for PERF_COUNT_SW_BPF_OUTPUT support, 4.4 or newer) get_current_ancestor_cgroup_idconst clang::ExtQualsTypeCommonBase* clang::QualType::getCommonPtr() const/usr/lib/llvm-18/include/clang/AST/Type.h!isNull() && "Cannot retrieve a NULL type pointer"const T* clang::Type::castAs() const [with T = clang::ReferenceType]T llvm::PointerUnion::get() const [with T = clang::TypeSourceInfo*; PTs = {clang::TypeSourceInfo*, clang::TypedefNameDecl::ModedTInfo*}]isa(*this) && "Invalid accessor called"static intptr_t llvm::PointerIntPairInfo::updatePointer(intptr_t, PointerT) [with PointerT = void*; unsigned int IntBits = 1; PtrTraits = llvm::pointer_union_detail::PointerUnionUIntTraits; intptr_t = long int]/usr/lib/llvm-18/include/llvm/ADT/PointerIntPair.h(PtrWord & ~PointerBitMask) == 0 && "Pointer is not sufficiently aligned"T llvm::PointerUnion::get() const [with T = clang::Decl::MultipleDC*; PTs = {clang::DeclContext*, clang::Decl::MultipleDC*}]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CXXRecordDecl; From = clang::DeclContext]decltype(auto) llvm::cast(From*) [with To = clang::CXXRecordDecl; From = const clang::DeclContext]T llvm::PointerUnion::get() const [with T = clang::TemplateArgumentLoc*; PTs = {clang::TemplateArgumentLoc*, clang::TemplateTemplateParmDecl*, clang::DefaultArgStorage::Chain*}]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AArch64SVEPcsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AArch64SVEPcsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AArch64VectorPcsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AArch64VectorPcsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AMDGPUFlatWorkGroupSizeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AMDGPUFlatWorkGroupSizeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AMDGPUKernelCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AMDGPUKernelCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AMDGPUNumSGPRAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AMDGPUNumSGPRAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AMDGPUNumVGPRAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AMDGPUNumVGPRAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AMDGPUWavesPerEUAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AMDGPUWavesPerEUAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ARMInterruptAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ARMInterruptAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AVRInterruptAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AVRInterruptAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AVRSignalAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AVRSignalAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AbiTagAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AbiTagAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AcquireCapabilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AcquireCapabilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AcquireHandleAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AcquireHandleAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AcquiredAfterAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AcquiredAfterAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AcquiredBeforeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AcquiredBeforeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AliasAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AliasAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AlignMac68kAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AlignMac68kAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AlignNaturalAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AlignNaturalAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AlignValueAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AlignValueAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AlignedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AlignedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AllocAlignAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AllocAlignAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AllocSizeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AllocSizeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AlwaysDestroyAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AlwaysDestroyAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AlwaysInlineAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AlwaysInlineAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AnalyzerNoReturnAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AnalyzerNoReturnAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AnnotateAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AnnotateAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AnnotateTypeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AnnotateTypeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AnyX86InterruptAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AnyX86InterruptAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AnyX86NoCallerSavedRegistersAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AnyX86NoCallerSavedRegistersAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AnyX86NoCfCheckAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AnyX86NoCfCheckAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArcWeakrefUnavailableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArcWeakrefUnavailableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArgumentWithTypeTagAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArgumentWithTypeTagAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmBuiltinAliasAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmBuiltinAliasAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmInAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmInAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmInOutAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmInOutAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmLocallyStreamingAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmLocallyStreamingAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmMveStrictPolymorphismAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmMveStrictPolymorphismAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmNewAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmNewAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmOutAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmOutAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmPreservesAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmPreservesAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmStreamingAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmStreamingAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArmStreamingCompatibleAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArmStreamingCompatibleAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArtificialAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ArtificialAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AssertCapabilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AssertCapabilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AssertExclusiveLockAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AssertExclusiveLockAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AssertSharedLockAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AssertSharedLockAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AssumeAlignedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AssumeAlignedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AssumptionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AssumptionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AvailabilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AvailabilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AvailableOnlyInDefaultEvalMethodAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AvailableOnlyInDefaultEvalMethodAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BPFPreserveAccessIndexAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::BPFPreserveAccessIndexAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BPFPreserveStaticOffsetAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::BPFPreserveStaticOffsetAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BTFDeclTagAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::BTFDeclTagAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BTFTypeTagAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::BTFTypeTagAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BlocksAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::BlocksAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BuiltinAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::BuiltinAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BuiltinAliasAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::BuiltinAliasAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::C11NoReturnAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::C11NoReturnAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CDeclAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CDeclAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CFAuditedTransferAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CFAuditedTransferAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CFConsumedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CFConsumedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CFGuardAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CFGuardAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CFICanonicalJumpTableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CFICanonicalJumpTableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CFReturnsNotRetainedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CFReturnsNotRetainedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CFReturnsRetainedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CFReturnsRetainedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CFUnknownTransferAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CFUnknownTransferAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CPUDispatchAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CPUDispatchAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CPUSpecificAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CPUSpecificAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDAConstantAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDAConstantAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDADeviceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDADeviceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDADeviceBuiltinSurfaceTypeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDADeviceBuiltinSurfaceTypeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDADeviceBuiltinTextureTypeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDADeviceBuiltinTextureTypeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDAGlobalAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDAGlobalAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDAHostAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDAHostAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDAInvalidTargetAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDAInvalidTargetAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDALaunchBoundsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDALaunchBoundsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CUDASharedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CUDASharedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CXX11NoReturnAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CXX11NoReturnAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CallableWhenAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CallableWhenAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CallbackAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CallbackAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CalledOnceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CalledOnceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CapabilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CapabilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CapturedRecordAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CapturedRecordAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CarriesDependencyAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CarriesDependencyAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CleanupAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CleanupAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CmseNSCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CmseNSCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CmseNSEntryAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CmseNSEntryAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CodeAlignAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CodeAlignAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CodeModelAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CodeModelAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CodeSegAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CodeSegAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ColdAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ColdAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CommonAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CommonAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ConstAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ConstAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ConstInitAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ConstInitAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ConstructorAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ConstructorAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ConsumableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ConsumableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ConsumableAutoCastAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ConsumableAutoCastAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ConsumableSetOnReadAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ConsumableSetOnReadAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ConvergentAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ConvergentAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CoroDisableLifetimeBoundAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CoroDisableLifetimeBoundAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CoroLifetimeBoundAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CoroLifetimeBoundAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CoroOnlyDestroyWhenCompleteAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CoroOnlyDestroyWhenCompleteAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CoroReturnTypeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CoroReturnTypeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CoroWrapperAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CoroWrapperAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CountedByAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::CountedByAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DLLExportAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DLLExportAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DLLExportStaticLocalAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DLLExportStaticLocalAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DLLImportAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DLLImportAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DLLImportStaticLocalAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DLLImportStaticLocalAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DestructorAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DestructorAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DiagnoseAsBuiltinAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DiagnoseAsBuiltinAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DiagnoseIfAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DiagnoseIfAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DisableSanitizerInstrumentationAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DisableSanitizerInstrumentationAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DisableTailCallsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DisableTailCallsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::EmptyBasesAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::EmptyBasesAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::EnableIfAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::EnableIfAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::EnforceTCBAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::EnforceTCBAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::EnforceTCBLeafAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::EnforceTCBLeafAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::EnumExtensibilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::EnumExtensibilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ErrorAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ErrorAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ExcludeFromExplicitInstantiationAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ExcludeFromExplicitInstantiationAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ExclusiveTrylockFunctionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ExclusiveTrylockFunctionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ExternalSourceSymbolAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ExternalSourceSymbolAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FallThroughAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::FallThroughAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FastCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::FastCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FinalAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::FinalAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FlagEnumAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::FlagEnumAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FlattenAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::FlattenAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FormatAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::FormatAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FormatArgAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::FormatArgAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FunctionReturnThunksAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::FunctionReturnThunksAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::GNUInlineAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::GNUInlineAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::GuardedByAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::GuardedByAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::GuardedVarAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::GuardedVarAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HIPManagedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HIPManagedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HLSLGroupSharedAddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HLSLGroupSharedAddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HLSLNumThreadsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HLSLNumThreadsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HLSLParamModifierAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HLSLParamModifierAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HLSLResourceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HLSLResourceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HLSLResourceBindingAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HLSLResourceBindingAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HLSLSV_DispatchThreadIDAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HLSLSV_DispatchThreadIDAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HLSLSV_GroupIndexAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HLSLSV_GroupIndexAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HLSLShaderAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HLSLShaderAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::HotAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::HotAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::IBActionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::IBActionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::IBOutletAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::IBOutletAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::IBOutletCollectionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::IBOutletCollectionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::IFuncAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::IFuncAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::InitPriorityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::InitPriorityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::InitSegAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::InitSegAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::IntelOclBiccAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::IntelOclBiccAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::InternalLinkageAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::InternalLinkageAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LTOVisibilityPublicAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LTOVisibilityPublicAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LayoutVersionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LayoutVersionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LeafAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LeafAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LifetimeBoundAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LifetimeBoundAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LikelyAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LikelyAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LoaderUninitializedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LoaderUninitializedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LockReturnedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LockReturnedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LocksExcludedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LocksExcludedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::LoopHintAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::LoopHintAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::M68kInterruptAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::M68kInterruptAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::M68kRTDAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::M68kRTDAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MIGServerRoutineAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MIGServerRoutineAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MSABIAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MSABIAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MSAllocatorAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MSAllocatorAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MSConstexprAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MSConstexprAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MSInheritanceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MSInheritanceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MSNoVTableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MSNoVTableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MSP430InterruptAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MSP430InterruptAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MSStructAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MSStructAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MSVtorDispAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MSVtorDispAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MaxFieldAlignmentAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MaxFieldAlignmentAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MayAliasAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MayAliasAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MaybeUndefAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MaybeUndefAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MicroMipsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MicroMipsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MinSizeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MinSizeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MinVectorWidthAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MinVectorWidthAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::Mips16Attr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::Mips16Attr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MipsInterruptAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MipsInterruptAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MipsLongCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MipsLongCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MipsShortCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MipsShortCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ModeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ModeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MustTailAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::MustTailAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NSConsumedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NSConsumedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NSConsumesSelfAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NSConsumesSelfAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NSErrorDomainAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NSErrorDomainAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NSReturnsAutoreleasedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NSReturnsAutoreleasedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NSReturnsNotRetainedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NSReturnsNotRetainedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NSReturnsRetainedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NSReturnsRetainedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NVPTXKernelAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NVPTXKernelAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NakedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NakedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoAliasAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoAliasAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoBuiltinAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoBuiltinAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoCommonAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoCommonAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoDebugAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoDebugAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoDerefAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoDerefAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoDestroyAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoDestroyAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoDuplicateAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoDuplicateAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoEscapeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoEscapeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoInlineAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoInlineAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoInstrumentFunctionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoInstrumentFunctionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoMergeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoMergeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoMicroMipsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoMicroMipsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoMips16Attr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoMips16Attr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoProfileFunctionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoProfileFunctionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoRandomizeLayoutAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoRandomizeLayoutAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoReturnAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoReturnAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoSanitizeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoSanitizeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoSpeculativeLoadHardeningAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoSpeculativeLoadHardeningAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoSplitStackAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoSplitStackAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoStackProtectorAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoStackProtectorAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoThreadSafetyAnalysisAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoThreadSafetyAnalysisAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoThrowAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoThrowAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoUniqueAddressAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoUniqueAddressAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NoUwtableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NoUwtableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NonNullAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NonNullAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::NotTailCalledAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::NotTailCalledAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OMPAllocateDeclAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OMPAllocateDeclAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OMPCaptureKindAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OMPCaptureKindAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OMPCaptureNoInitAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OMPCaptureNoInitAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OMPDeclareSimdDeclAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OMPDeclareSimdDeclAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OMPDeclareTargetDeclAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OMPDeclareTargetDeclAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OMPDeclareVariantAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OMPDeclareVariantAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OMPReferencedVarAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OMPReferencedVarAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OMPThreadPrivateDeclAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OMPThreadPrivateDeclAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OSConsumedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OSConsumedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OSConsumesThisAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OSConsumesThisAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OSReturnsNotRetainedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OSReturnsNotRetainedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OSReturnsRetainedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OSReturnsRetainedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OSReturnsRetainedOnNonZeroAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OSReturnsRetainedOnNonZeroAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OSReturnsRetainedOnZeroAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OSReturnsRetainedOnZeroAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCBoxableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCBoxableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCBridgeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCBridgeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCBridgeMutableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCBridgeMutableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCBridgeRelatedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCBridgeRelatedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCClassStubAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCClassStubAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCDesignatedInitializerAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCDesignatedInitializerAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCDirectAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCDirectAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCDirectMembersAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCDirectMembersAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCExceptionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCExceptionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCExplicitProtocolImplAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCExplicitProtocolImplAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCExternallyRetainedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCExternallyRetainedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCGCAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCGCAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCIndependentClassAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCIndependentClassAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCInertUnsafeUnretainedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCInertUnsafeUnretainedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCKindOfAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCKindOfAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCMethodFamilyAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCMethodFamilyAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCNSObjectAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCNSObjectAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCNonLazyClassAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCNonLazyClassAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCNonRuntimeProtocolAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCNonRuntimeProtocolAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCOwnershipAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCOwnershipAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCPreciseLifetimeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCPreciseLifetimeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCRequiresPropertyDefsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCRequiresPropertyDefsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCRequiresSuperAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCRequiresSuperAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCReturnsInnerPointerAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCReturnsInnerPointerAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCRootClassAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCRootClassAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCRuntimeNameAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCRuntimeNameAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCRuntimeVisibleAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCRuntimeVisibleAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCSubclassingRestrictedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ObjCSubclassingRestrictedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLAccessAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLAccessAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLConstantAddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLConstantAddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLGenericAddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLGenericAddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLGlobalAddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLGlobalAddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLGlobalDeviceAddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLGlobalDeviceAddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLGlobalHostAddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLGlobalHostAddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLIntelReqdSubGroupSizeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLIntelReqdSubGroupSizeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLKernelAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLKernelAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLLocalAddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLLocalAddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLPrivateAddressSpaceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLPrivateAddressSpaceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpenCLUnrollHintAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OpenCLUnrollHintAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OptimizeNoneAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OptimizeNoneAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OverloadableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OverloadableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OverrideAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OverrideAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OwnerAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OwnerAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OwnershipAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::OwnershipAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PackedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PackedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ParamTypestateAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ParamTypestateAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PascalAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PascalAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PassObjectSizeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PassObjectSizeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PatchableFunctionEntryAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PatchableFunctionEntryAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PcsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PcsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PointerAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PointerAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PragmaClangBSSSectionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PragmaClangBSSSectionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PragmaClangDataSectionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PragmaClangDataSectionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PragmaClangRelroSectionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PragmaClangRelroSectionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PragmaClangRodataSectionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PragmaClangRodataSectionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PragmaClangTextSectionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PragmaClangTextSectionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PreferredNameAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PreferredNameAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PreferredTypeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PreferredTypeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PreserveAllAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PreserveAllAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PreserveMostAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PreserveMostAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PtGuardedByAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PtGuardedByAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PtGuardedVarAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PtGuardedVarAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::Ptr32Attr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::Ptr32Attr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::Ptr64Attr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::Ptr64Attr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PureAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::PureAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RISCVInterruptAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::RISCVInterruptAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RandomizeLayoutAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::RandomizeLayoutAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReadOnlyPlacementAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ReadOnlyPlacementAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RegCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::RegCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReinitializesAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ReinitializesAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReleaseCapabilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ReleaseCapabilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReleaseHandleAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ReleaseHandleAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RenderScriptKernelAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::RenderScriptKernelAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReqdWorkGroupSizeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ReqdWorkGroupSizeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RequiresCapabilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::RequiresCapabilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RestrictAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::RestrictAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RetainAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::RetainAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReturnTypestateAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ReturnTypestateAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReturnsNonNullAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ReturnsNonNullAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReturnsTwiceAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ReturnsTwiceAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SPtrAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SPtrAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SYCLKernelAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SYCLKernelAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SYCLSpecialClassAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SYCLSpecialClassAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ScopedLockableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ScopedLockableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SelectAnyAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SelectAnyAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SentinelAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SentinelAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SetTypestateAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SetTypestateAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SharedTrylockFunctionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SharedTrylockFunctionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SpeculativeLoadHardeningAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SpeculativeLoadHardeningAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::StandaloneDebugAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::StandaloneDebugAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::StdCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::StdCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::StrictFPAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::StrictFPAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::StrictGuardStackCheckAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::StrictGuardStackCheckAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SuppressAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SuppressAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftAsyncAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftAsyncAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftAsyncCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftAsyncCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftAsyncContextAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftAsyncContextAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftAsyncErrorAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftAsyncErrorAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftAsyncNameAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftAsyncNameAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftAttrAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftAttrAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftBridgeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftBridgeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftBridgedTypedefAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftBridgedTypedefAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftContextAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftContextAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftErrorAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftErrorAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftErrorResultAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftErrorResultAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftImportAsNonGenericAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftImportAsNonGenericAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftImportPropertyAsAccessorsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftImportPropertyAsAccessorsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftIndirectResultAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftIndirectResultAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftNameAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftNameAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftNewTypeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftNewTypeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftObjCMembersAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftObjCMembersAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftPrivateAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftPrivateAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftVersionedAdditionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftVersionedAdditionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SwiftVersionedRemovalAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SwiftVersionedRemovalAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SysVABIAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SysVABIAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TLSModelAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TLSModelAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TargetAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TargetAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TargetClonesAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TargetClonesAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TargetVersionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TargetVersionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TestTypestateAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TestTypestateAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ThisCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ThisCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ThreadAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ThreadAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TransparentUnionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TransparentUnionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TrivialABIAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TrivialABIAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TryAcquireCapabilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TryAcquireCapabilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypeNonNullAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TypeNonNullAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypeNullUnspecifiedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TypeNullUnspecifiedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypeNullableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TypeNullableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypeNullableResultAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TypeNullableResultAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypeTagForDatatypeAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TypeTagForDatatypeAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypeVisibilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::TypeVisibilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UPtrAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UPtrAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UnavailableAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UnavailableAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UninitializedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UninitializedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UnlikelyAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UnlikelyAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UnsafeBufferUsageAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UnsafeBufferUsageAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UnusedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UnusedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UseHandleAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UseHandleAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UsedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UsedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UsingIfExistsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UsingIfExistsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UuidAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::UuidAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::VecReturnAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::VecReturnAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::VecTypeHintAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::VecTypeHintAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::VectorCallAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::VectorCallAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::VisibilityAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::VisibilityAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WarnUnusedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WarnUnusedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WarnUnusedResultAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WarnUnusedResultAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WeakAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WeakAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WeakImportAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WeakImportAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WeakRefAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WeakRefAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WebAssemblyExportNameAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WebAssemblyExportNameAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WebAssemblyFuncrefAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WebAssemblyFuncrefAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WebAssemblyImportModuleAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WebAssemblyImportModuleAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WebAssemblyImportNameAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WebAssemblyImportNameAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::WorkGroupSizeHintAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::WorkGroupSizeHintAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::X86ForceAlignArgPointerAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::X86ForceAlignArgPointerAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::XRayInstrumentAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::XRayInstrumentAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::XRayLogArgsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::XRayLogArgsAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ZeroCallUsedRegsAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::ZeroCallUsedRegsAttr; From = clang::Attr]auto llvm::cast_if_present(Y*) [with X = clang::RecordDecl; Y = clang::TagDecl]isa(Val) && "cast_if_present() argument of incompatible type!"decltype(auto) llvm::cast(From*) [with To = clang::FieldDecl; From = clang::Decl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::IncompleteArrayType; From = clang::Type]/usr/lib/llvm-18/include/clang/AST/AttrVisitor.incstatic bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AdjustedType; From = clang::Type]T llvm::PointerUnion::get() const [with T = clang::TypeSourceInfo*; PTs = {clang::TypeSourceInfo*, clang::TemplateTypeParmDecl*, clang::DefaultArgStorage::Chain*}]void* llvm::BumpPtrAllocatorImpl::Allocate(size_t, llvm::Align) [with AllocatorT = llvm::MallocAllocator; long unsigned int SlabSize = 4096; long unsigned int SizeThreshold = 4096; long unsigned int GrowthDelay = 128; size_t = long unsigned int]/usr/lib/llvm-18/include/llvm/Support/Allocator.hAdjustment + Size >= Size && "Adjustment + Size must not overflow"AlignedAddr + Size <= (uintptr_t)NewSlab + PaddedSizeAlignedAddr + SizeToAllocate <= (uintptr_t)End && "Unable to allocate memory!"T llvm::PointerUnion::get() const [with T = const void*; PTs = {clang::Decl*, const void*}]static intptr_t llvm::PointerIntPairInfo::updatePointer(intptr_t, PointerT) [with PointerT = void*; unsigned int IntBits = 1; PtrTraits = llvm::pointer_union_detail::PointerUnionUIntTraits, clang::LazyGenerationalUpdatePtr >; intptr_t = long int]T llvm::PointerUnion::get() const [with T = clang::LazyGenerationalUpdatePtr; PTs = {llvm::PointerUnion, clang::LazyGenerationalUpdatePtr}]T llvm::PointerUnion::get() const [with T = clang::Decl*; PTs = {clang::Decl*, clang::LazyGenerationalUpdatePtr::LazyData*}]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RecordType; From = clang::Type]decltype(auto) llvm::dyn_cast(const From&) [with To = clang::ConstantArrayType; From = clang::QualType]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ConstantArrayType; From = clang::Type]const T& clang::ASTVector::operator[](unsigned int) const [with T = long unsigned int; const_reference = const long unsigned int&]/usr/lib/llvm-18/include/clang/AST/ASTVector.hT llvm::PointerUnion::get() const [with T = clang::TypeSourceInfo*; PTs = {const clang::Type*, clang::TypeSourceInfo*}]decltype(auto) llvm::cast(From*) [with To = clang::DecayedType; From = const clang::AdjustedType]decltype(auto) llvm::cast(From*) [with To = clang::ConstantArrayType; From = const clang::ArrayType]decltype(auto) llvm::cast(From*) [with To = clang::DependentSizedArrayType; From = const clang::ArrayType]decltype(auto) llvm::cast(From*) [with To = clang::IncompleteArrayType; From = const clang::ArrayType]decltype(auto) llvm::cast(From*) [with To = clang::VariableArrayType; From = const clang::ArrayType]decltype(auto) llvm::cast(From*) [with To = clang::BitIntType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ComplexType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::AutoType; From = const clang::DeducedType]decltype(auto) llvm::cast(From*) [with To = clang::DependentBitIntType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::DependentTemplateSpecializationType; From = const clang::Type]const T& llvm::ArrayRef::operator[](size_t) const [with T = clang::TemplateArgument; size_t = long unsigned int]decltype(auto) llvm::cast(From*) [with To = clang::FunctionNoProtoType; From = const clang::FunctionType]decltype(auto) llvm::cast(From*) [with To = clang::InjectedClassNameType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::DependentSizedMatrixType; From = const clang::MatrixType]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCObjectType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ObjCInterfaceType; From = const clang::ObjCObjectType]decltype(auto) llvm::cast(From*) [with To = clang::LValueReferenceType; From = const clang::ReferenceType]decltype(auto) llvm::cast(From*) [with To = clang::RValueReferenceType; From = const clang::ReferenceType]decltype(auto) llvm::cast(From*) [with To = clang::SubstTemplateTypeParmPackType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::SubstTemplateTypeParmType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::EnumType; From = const clang::TagType]decltype(auto) llvm::cast(From*) [with To = clang::RecordType; From = const clang::TagType]decltype(auto) llvm::cast(From*) [with To = clang::TemplateSpecializationType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::TemplateTypeParmType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::UnresolvedUsingType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::UsingType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::VectorType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ExtVectorType; From = const clang::VectorType]clang::TypeSourceInfo* clang::TypeTraitExpr::getArg(unsigned int) const/usr/lib/llvm-18/include/clang/AST/ExprCXX.hI < getNumArgs() && "Argument out-of-range"T llvm::PointerUnion::get() const [with T = clang::Expr*; PTs = {clang::Expr*, clang::concepts::Requirement::SubstitutionDiagnostic*}]/usr/lib/llvm-18/include/clang/AST/RecursiveASTVisitor.hdecltype(auto) llvm::dyn_cast(From*) [with To = clang::OpaqueValueExpr; From = clang::Expr]static intptr_t llvm::PointerIntPairInfo::updatePointer(intptr_t, PointerT) [with PointerT = clang::Stmt*; unsigned int IntBits = 1; PtrTraits = llvm::PointerLikeTypeTraits; intptr_t = long int]T llvm::PointerUnion::get() const [with T = clang::TypeSourceInfo*; PTs = {clang::TypeSourceInfo*, clang::DeclaratorDecl::ExtInfo*}]constexpr llvm::ArrayRef::ArrayRef(const T*, const T*) [with T = clang::TemplateArgument]T llvm::PointerUnion::get() const [with T = clang::TemplateArgumentLocInfo::TemplateTemplateArgLocInfo*; PTs = {clang::TemplateArgumentLocInfo::TemplateTemplateArgLocInfo*, clang::Expr*, clang::TypeSourceInfo*}]T clang::TypeLoc::castAs() const [with T = clang::QualifiedTypeLoc]/usr/lib/llvm-18/include/clang/AST/TypeLoc.hT clang::TypeLoc::castAs() const [with T = clang::AdjustedTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DecayedTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ConstantArrayTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DependentSizedArrayTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::IncompleteArrayTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::VariableArrayTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::AtomicTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::AttributedTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::BTFTagAttributedTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::BitIntTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::BlockPointerTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::BuiltinTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ComplexTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DecltypeTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::AutoTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DeducedTemplateSpecializationTypeLoc]decltype(auto) llvm::cast(From*) [with To = clang::DeducedTemplateSpecializationType; From = const clang::DeducedType]T clang::TypeLoc::castAs() const [with T = clang::DependentAddressSpaceTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DependentBitIntTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DependentNameTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DependentSizedExtVectorTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DependentTemplateSpecializationTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::DependentVectorTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ElaboratedTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::FunctionNoProtoTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::FunctionProtoTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::InjectedClassNameTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::MacroQualifiedTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ConstantMatrixTypeLoc]decltype(auto) llvm::cast(From*) [with To = clang::ConstantMatrixType; From = const clang::MatrixType]T clang::TypeLoc::castAs() const [with T = clang::DependentSizedMatrixTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::MemberPointerTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ObjCObjectPointerTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ObjCObjectTypeLoc]decltype(auto) llvm::cast(From*) [with To = clang::ObjCObjectType; From = const clang::Type]clang::TypeSourceInfo* clang::ObjCObjectTypeLoc::getTypeArgTInfo(unsigned int) consti < getNumTypeArgs() && "Index is out of bounds!"T clang::TypeLoc::castAs() const [with T = clang::ObjCInterfaceTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ObjCTypeParamTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::PackExpansionTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ParenTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::PipeTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::PointerTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::LValueReferenceTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::RValueReferenceTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::SubstTemplateTypeParmPackTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::SubstTemplateTypeParmTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::EnumTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::RecordTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::TemplateSpecializationTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::TemplateTypeParmTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::TypeOfExprTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::TypeOfTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::TypedefTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::UnaryTransformTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::UnresolvedUsingTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::UsingTypeLoc]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::Expr; From = clang::Stmt]decltype(auto) llvm::cast(From*) [with To = clang::Expr; From = clang::Stmt]const T& clang::ASTVector::operator[](unsigned int) const [with T = clang::Stmt*; const_reference = clang::Stmt* const&]void llvm::SmallVectorBase::set_size(size_t) [with Size_T = unsigned int; size_t = long unsigned int]uint64_t llvm::alignTo(uint64_t, uint64_t)/usr/lib/llvm-18/include/llvm/Support/MathExtras.hAlign != 0u && "Align can't be 0."uintptr_t llvm::alignAddr(const void*, Align)/usr/lib/llvm-18/include/llvm/Support/Alignment.hstatic_cast(ArithAddr + Alignment.value() - 1) >= ArithAddr && "Overflow"bool clang::FunctionProtoType::hasExtraBitfields() const(getExceptionSpecType() != EST_Dynamic || FunctionTypeBits.HasExtraBitfields) && "ExtraBitfields are required for given ExceptionSpecType"clang::TemplateDecl* clang::DeclarationName::getCXXDeductionGuideTemplate() const/usr/lib/llvm-18/include/clang/AST/DeclarationName.hgetPtr() && "getCXXDeductionGuideTemplate on a null DeclarationName!"clang::DeclGroup& clang::DeclGroupRef::getDeclGroup()/usr/lib/llvm-18/include/clang/AST/DeclGroup.hisDeclGroup() && "Isn't a declgroup"clang::TemplateName clang::TemplateArgument::getAsTemplateOrTemplatePattern() const/usr/lib/llvm-18/include/clang/AST/TemplateBase.h(getKind() == Template || getKind() == TemplateExpansion) && "Unexpected kind"const clang::TemplateArgument* clang::TemplateArgument::pack_begin() constunsigned int clang::GenericSelectionExpr::getIndexOfControllingExpression() const/usr/lib/llvm-18/include/clang/AST/Expr.hisExprPredicate() && "Asking for the controlling expression of a " "selection expr predicated by a type"unsigned int clang::GenericSelectionExpr::getIndexOfControllingType() constisTypePredicate() && "Asking for the controlling type of a " "selection expr predicated by an expression"clang::TemplateParameterList* clang::FriendTemplateDecl::getTemplateParameterList(unsigned int) const/usr/lib/llvm-18/include/clang/AST/DeclTemplate.hclang::QualType clang::TemplateArgument::getAsType() constgetKind() == Type && "Unexpected kind"constexpr llvm::ArrayRef::ArrayRef(const T*, const T*) [with T = clang::QualType]llvm::StringRef clang::NamedDecl::getName() const/usr/lib/llvm-18/include/clang/AST/Decl.hName.isIdentifier() && "Name is not a simple identifier"clang::QualType clang::FunctionProtoType::getParamType(unsigned int) consti < getNumParams() && "invalid parameter index"clang::Decl*& clang::DeclGroup::operator[](unsigned int)i < NumDecls && "Out-of-bounds access."clang::ObjCInterfaceDecl::DefinitionData& clang::ObjCInterfaceDecl::data() const/usr/lib/llvm-18/include/clang/AST/DeclObjC.hData.getPointer() && "Declaration has no definition!"clang::ObjCProtocolDecl::DefinitionData& clang::ObjCProtocolDecl::data() constData.getPointer() && "Objective-C protocol has no definition!"T& llvm::SmallVectorTemplateCommon >::back() [with T = llvm::PointerIntPair; = void; reference = llvm::PointerIntPair&]T clang::TypeLoc::castAs() const [with T = clang::VectorTypeLoc]T clang::TypeLoc::castAs() const [with T = clang::ExtVectorTypeLoc]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BuiltinType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::BuiltinType; From = const clang::Type]decltype(auto) llvm::dyn_cast(const From&) [with To = clang::RecordType; From = clang::QualType]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AttributedType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::AttributedType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BTFTagAttributedType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::BTFTagAttributedType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ElaboratedType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ElaboratedType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ParenType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ParenType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::AdjustedType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MacroQualifiedType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::MacroQualifiedType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ArrayType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ArrayType; From = const clang::Type]T llvm::PointerUnion::get() const [with T = clang::TypeSourceInfo*; PTs = {clang::TemplateArgumentLocInfo::TemplateTemplateArgLocInfo*, clang::Expr*, clang::TypeSourceInfo*}]T llvm::PointerUnion::get() const [with T = clang::Expr*; PTs = {clang::TemplateArgumentLocInfo::TemplateTemplateArgLocInfo*, clang::Expr*, clang::TypeSourceInfo*}]clang::Expr* clang::TemplateArgumentLoc::getSourceExpression() constArgument.getKind() == TemplateArgument::Expressionstatic bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FunctionProtoType; From = clang::FunctionType]decltype(auto) llvm::cast(From*) [with To = clang::FunctionProtoType; From = const clang::FunctionType]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UnresolvedLookupExpr; From = clang::OverloadExpr]T llvm::PointerUnion::get() const [with T = clang::TypeSourceInfo*; PTs = {clang::concepts::Requirement::SubstitutionDiagnostic*, clang::TypeSourceInfo*}]clang::TypeSourceInfo* clang::concepts::TypeRequirement::getType() const/usr/lib/llvm-18/include/clang/AST/ExprConcepts.h!isSubstitutionFailure() && "Attempted to get type when there has been a substitution failure."clang::Expr* clang::concepts::ExprRequirement::getExpr() const!isExprSubstitutionFailure() && "ExprRequirement has no expression because there has been a " "substitution failure."T llvm::PointerUnion::get() const [with T = clang::ObjCInterfaceDecl*; PTs = {clang::Stmt*, const clang::Type*, clang::ObjCInterfaceDecl*}]decltype(auto) llvm::dyn_cast(From*) [with To = clang::TemplateTypeParmDecl; From = clang::Decl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::AccessSpecDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::AccessSpecDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::EmptyDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::EmptyDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::HLSLBufferDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::LifetimeExtendedTemporaryDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::FileScopeAsmDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::TopLevelStmtDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::ImportDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ImportDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::FriendDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::FriendTemplateDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::LinkageSpecDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ExportDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::ObjCPropertyImplDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ObjCPropertyImplDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::StaticAssertDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::PragmaCommentDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::PragmaCommentDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::PragmaDetectMismatchDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::PragmaDetectMismatchDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ExternCContextDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::LabelDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::LabelDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::NamespaceDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::ObjCCompatibleAliasDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ObjCCompatibleAliasDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ObjCCategoryImplDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ObjCImplementationDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ObjCTypeParamDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UsingDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UsingEnumDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::UsingPackDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UsingPackDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UsingDirectiveDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::UsingShadowDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UsingShadowDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::ConstructorUsingShadowDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ConstructorUsingShadowDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::OMPThreadPrivateDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::OMPRequiresDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::OMPCapturedExprDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::OMPAllocateDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ClassTemplateDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::VarTemplateDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::FunctionTemplateDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::TemplateTemplateParmDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::BuiltinTemplateDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::TemplateTypeParmDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::TypedefDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::TypeAliasDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::TypeAliasTemplateDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ConceptDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UnresolvedUsingTypenameDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::UnresolvedUsingIfExistsDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UnresolvedUsingIfExistsDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::CXXRecordDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::VarTemplateSpecializationDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::VarTemplatePartialSpecializationDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::EnumConstantDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UnresolvedUsingValueDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::IndirectFieldDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::IndirectFieldDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::DecompositionDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::BindingDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::BindingDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::MSPropertyDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::MSGuidDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::MSGuidDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::UnnamedGlobalConstantDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::UnnamedGlobalConstantDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclContext; From = clang::TemplateParamObjectDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::TemplateParamObjectDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::FieldDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ObjCAtDefsFieldDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ObjCIvarDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::CXXConstructorDecl; From = clang::FunctionDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::CXXMethodDecl; From = clang::FunctionDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::VarDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ImplicitParamDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::NonTypeTemplateParmDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ParmVarDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::RequiresExprBodyDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::ImplicitConceptSpecializationDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ReferenceType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ReferenceType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TemplateSpecializationType; From = clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FunctionType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::FunctionType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PointerType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::PointerType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BlockPointerType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::BlockPointerType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MemberPointerType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::MemberPointerType; From = const clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::VectorType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::MatrixType; From = clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DependentAddressSpaceType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::DependentAddressSpaceType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCObjectPointerType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ObjCObjectPointerType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AtomicType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::AtomicType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DecltypeType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::DecltypeType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PipeType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::PipeType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BitIntType; From = clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ParmVarDecl; From = clang::VarDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::RecordDecl; From = clang::TagDecl]decltype(auto) llvm::cast(From*) [with To = clang::RecordDecl; From = clang::TagDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CompoundStmt; From = clang::Stmt]decltype(auto) llvm::cast(From*) [with To = clang::CompoundStmt; From = clang::Stmt]auto llvm::cast_if_present(Y*) [with X = clang::Expr; Y = clang::Stmt]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::OpaqueValueExpr; From = clang::Stmt]decltype(auto) llvm::cast(From*) [with To = clang::OpaqueValueExpr; From = clang::Stmt]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FunctionNoProtoType; From = clang::FunctionType]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CXXRecordDecl; From = clang::RecordDecl]decltype(auto) llvm::cast(From*) [with To = clang::CXXRecordDecl; From = clang::RecordDecl]T llvm::PointerUnion::get() const [with T = clang::Expr*; PTs = {clang::Expr*, clang::NonTypeTemplateParmDecl*, clang::DefaultArgStorage::Chain*}]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::PackExpansionType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::PackExpansionType; From = const clang::Type]clang::ValueDecl* clang::LambdaCapture::getCapturedVar() const/usr/lib/llvm-18/include/clang/AST/LambdaCapture.hcapturesVariable() && "No variable available for capture"static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeclStmt; From = clang::Stmt]decltype(auto) llvm::cast(From*) [with To = clang::DeclStmt; From = clang::Stmt]decltype(auto) llvm::cast(From*) [with To = clang::UnresolvedMemberExpr; From = clang::OverloadExpr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::concepts::TypeRequirement; From = clang::concepts::Requirement]decltype(auto) llvm::cast(From*) [with To = clang::concepts::TypeRequirement; From = clang::concepts::Requirement]decltype(auto) llvm::cast(From*) [with To = clang::concepts::ExprRequirement; From = clang::concepts::Requirement]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::concepts::NestedRequirement; From = clang::concepts::Requirement]decltype(auto) llvm::cast(From*) [with To = clang::concepts::NestedRequirement; From = clang::concepts::Requirement]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::AsmLabelAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::AsmLabelAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeprecatedAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::DeprecatedAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::SectionAttr; From = clang::Attr]decltype(auto) llvm::cast(From*) [with To = clang::SectionAttr; From = clang::Attr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::Type; From = clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FieldDecl; From = clang::Decl]static intptr_t llvm::PointerIntPairInfo::updatePointer(intptr_t, PointerT) [with PointerT = void*; unsigned int IntBits = 1; PtrTraits = llvm::pointer_union_detail::PointerUnionUIntTraits::LazyData*>; intptr_t = long int]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypedefType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::TypedefType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TagType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::TagType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::ObjCTypeParamType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::ObjCTypeParamType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DependentVectorType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::DependentVectorType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DependentSizedExtVectorType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::DependentSizedExtVectorType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypeOfExprType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::TypeOfExprType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TypeOfType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::TypeOfType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DependentNameType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::DependentNameType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DependentTemplateSpecializationType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::MatrixType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UnaryTransformType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::UnaryTransformType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::DeducedType; From = clang::Type]decltype(auto) llvm::cast(From*) [with To = clang::DeducedType; From = const clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::TranslationUnitDecl; From = clang::Decl]clang::CXXRecordDecl::DefinitionData& clang::CXXRecordDecl::data() const/usr/lib/llvm-18/include/clang/AST/DeclCXX.hDD && "queried property of class with no definition"static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::UsingShadowDecl; From = clang::Decl]const char* tinyformat::detail::streamStateFromFormat(std::ostream&, bool&, int&, const char*, const FormatArg*, int&, int)./src/cc/vendor/tinyformat.hpp0 && "tinyformat: Not enough conversion specifiers in format string"0 && "tinyformat: Not enough arguments to read variable precision"0 && "tinyformat: the %a and %A conversion specs " "are not supported"0 && "tinyformat: %n conversion spec not supported"0 && "tinyformat: Conversion spec incorrectly " "terminated by end of string"void tinyformat::detail::formatImpl(std::ostream&, const char*, const FormatArg*, int)0 && "tinyformat: Not enough format arguments"0 && "tinyformat: Too many conversion specifiers in format string"WARNING: Couldn't find .text section in %s WARNING: BCC can't handle sym look ups for %sstatic int tinyformat::detail::convertToInt::invoke(const T&) [with T = std::__cxx11::basic_string; bool convertible = false]0 && "tinyformat: Cannot convert from argument type to " "integer for use as variable width or precision"static int tinyformat::detail::convertToInt::invoke(const T&) [with T = const char*; bool convertible = false]Unable to create temp file: %s Failed to write to vDSO image: %s %lx-%lx %4s %llx %lx:%lx %lu%[^ ]WARNING: invalid address 0x%lx for probe (%s,%s) in binary %s madvise failed, saddr %lx, eaddr %lx %lx-%lx %7s %lx %x:%x %lu %n%*[^ ]%n/sys/devices/system/cpu/online/sys/devices/system/cpu/possiblemips64el-unknown-linux-gnuabi64clang::CompilerInvocation& clang::CompilerInstance::getInvocation()/usr/lib/llvm-18/include/clang/Frontend/CompilerInstance.hInvocation && "Compiler instance has no invocation!"void llvm::RefCountedBase::Release() const [with Derived = clang::DiagnosticOptions]/usr/lib/llvm-18/include/llvm/ADT/IntrusiveRefCntPtr.hRefCount > 0 && "Reference count is already zero."llvm::RefCountedBase::~RefCountedBase() [with Derived = clang::DiagnosticOptions]RefCount == 0 && "Destruction occurred when there are still references to this."void llvm::RefCountedBase::Release() const [with Derived = clang::DiagnosticIDs]void llvm::ThreadSafeRefCountedBase::Release() const [with Derived = llvm::vfs::FileSystem]NewRefCount >= 0 && "Reference count was already zero."void llvm::SmallVectorBase::set_allocation_range(void*, size_t) [with Size_T = unsigned int; size_t = long unsigned int]clang::DiagnosticBuilder clang::DiagnosticsEngine::Report(clang::SourceLocation, unsigned int)/usr/lib/llvm-18/include/clang/Basic/Diagnostic.hCurDiagID == std::numeric_limits::max() && "Multiple diagnostics in flight at once!"clang::DiagnosticStorage* clang::StreamingDiagnostic::getStorage() constvoid clang::StreamingDiagnostic::AddString(llvm::StringRef) constDiagStorage->NumDiagArgs < DiagnosticStorage::MaxArguments && "Too many arguments to diagnostic!"const clang::SrcMgr::SLocEntry& clang::SourceManager::getSLocEntryByID(int, bool*) const/usr/lib/llvm-18/include/clang/Basic/SourceManager.hID != -1 && "Using FileID sentinel value"const clang::SrcMgr::SLocEntry& clang::SourceManager::getLoadedSLocEntry(unsigned int, bool*) constIndex < LoadedSLocEntryTable.size() && "Invalid index"bool llvm::BitVector::operator[](unsigned int) const/usr/lib/llvm-18/include/llvm/ADT/BitVector.hIdx < Size && "Out-of-bounds Bit access."const T& llvm::SmallVectorTemplateCommon >::operator[](size_type) const [with T = long unsigned int; = void; const_reference = const long unsigned int&; size_type = long unsigned int]T& llvm::PagedVector::operator[](size_t) const [with T = clang::SrcMgr::SLocEntry; long unsigned int PageSize = 42; size_t = long unsigned int]/usr/lib/llvm-18/include/llvm/ADT/PagedVector.hIndex / PageSize < PageToDataPtrs.size()const clang::SrcMgr::SLocEntry& clang::SourceManager::getLocalSLocEntry(unsigned int) constIndex < LocalSLocEntryTable.size() && "Invalid index"/virtual/include/bcc/bpf_workaround.hconst clang::DiagnosticBuilder& clang::DiagnosticBuilder::operator<<(T&&) const [with T = llvm::StringRef; = void]isActive() && "Clients must not add to cleared diagnostic!"Unable to find kernel headers. Try rebuilding kernel with CONFIG_IKHEADERS=m (module) or installing the kernel development package for your running kernel version. Running from kernel directory at: -Wno-gnu-variable-sized-type-not-at-end-Wno-pragma-once-outside-header-fno-asynchronous-unwind-tables-DLINUX_VERSION_CODE_OVERRIDE=WARNING: Linux version for eBPF program is being overridden with: WARNING: Due to this, the results of the program may be unpredictable /virtual/include/bcc/helpers.hbool clang::operator==(specific_attr_iterator >, specific_attr_iterator >)/usr/lib/llvm-18/include/clang/AST/AttrIterator.h(Left.Current == nullptr) == (Right.Current == nullptr)decltype(auto) llvm::dyn_cast(From*) [with To = clang::MemberExpr; From = clang::Expr]#if defined(CONFIG_ARCH_HAS_SYSCALL_WRAPPER) decltype(auto) llvm::dyn_cast(From*) [with To = clang::CompoundStmt; From = clang::Stmt]) _val; __builtin_memset(&_val, 0, sizeof(_val)); bpf_probe_read_kernel(&_val, sizeof(_val), (void *) bpf_probe_read(&_val, sizeof(_val), (void *) bpf_probe_read_kernel(&_val, sizeof(_val), (void *)(( bpf_probe_read(&_val, sizeof(_val), (void *)((internal error: MemberLoc is invalid while preparing probe rewrite bpf_probe_read_kernel(&_val, sizeof(_val), (void *)& bpf_probe_read(&_val, sizeof(_val), (void *)&decltype(auto) llvm::dyn_cast(From*) [with To = clang::RecordDecl; From = clang::TagDecl]cannot use more than 3 conversion specifierscannot use several %%s conversion specifiersclang::Expr* clang::InitListExpr::getInit(unsigned int)Init < getNumInits() && "Initializer access out of range!"T& clang::ASTVector::operator[](unsigned int) [with T = clang::Stmt*; reference = clang::Stmt*&]clang::APValue::APSInt& clang::APValue::getInt()/usr/lib/llvm-18/include/clang/AST/APValue.hbool llvm::APInt::operator[](unsigned int) const/usr/lib/llvm-18/include/llvm/ADT/APInt.hbitPosition < getBitWidth() && "Bit position out of bounds!"int64_t llvm::APSInt::getExtValue() const/usr/lib/llvm-18/include/llvm/ADT/APSInt.hisRepresentableByInt64() && "Too many bits for int64_t"int64_t llvm::APInt::getSExtValue() constgetSignificantBits() <= 64 && "Too many bits for int64_t"uint64_t llvm::APInt::getZExtValue() constgetActiveBits() <= 64 && "Too many bits for uint64_t"cannot have macro at the end of expresssion, workaround: put perentheses around macro "(MARCO)"too many arguments, bcc only supports in-register parametersarguments to BPF program definition must be named__attribute__((always_inline)) bpf_map_lookup_elem_(bpf_pseudo_fd(1, bpf_map_update_elem_(bpf_pseudo_fd(1, .leaf) _zleaf; __builtin_memset(&_zleaf, 0, sizeof(_zleaf)); , &_key, &_zleaf, BPF_NOEXIST); } get_stackid only available on stacktrace mapsbpf_ringbuf_output((void *)bpf_pseudo_fd(1, bpf_ringbuf_reserve((void *)bpf_pseudo_fd(1, bpf_ringbuf_query((void *)bpf_pseudo_fd(1, cannot use map function inside a macrodecltype(auto) llvm::dyn_cast(From*) [with To = clang::NamedDecl; From = clang::Decl]bool clang::operator==(specific_attr_iterator >, specific_attr_iterator >)cannot use builtin inside a macro; bpf_trace_printk_(_fmt, sizeof(_fmt)/usr/lib/llvm-18/include/clang/Basic/Linkage.hcannot call non-static helper function#define bpf_probe_read_kernel bpf_probe_read #define bpf_probe_read_kernel_str bpf_probe_read_str #define bpf_probe_read_user bpf_probe_read #define bpf_probe_read_user_str bpf_probe_read_str #if defined(BPF_LICENSE) #error BPF_LICENSE cannot be specified through cflags #endif #if !defined(CONFIG_CC_STACKPROTECTOR) #if defined(CONFIG_CC_STACKPROTECTOR_AUTO) \ || defined(CONFIG_CC_STACKPROTECTOR_REGULAR) \ || defined(CONFIG_CC_STACKPROTECTOR_STRONG) #define CONFIG_CC_STACKPROTECTOR #endif #endif invalid type for bpf_table, expect structconst clang::DiagnosticBuilder& clang::DiagnosticBuilder::operator<<(T&&) const [with T = char*; = void]histogram leaf type must be u64, got %0const clang::DiagnosticBuilder& clang::DiagnosticBuilder::operator<<(const T&) const [with T = clang::QualType]const clang::DiagnosticBuilder& clang::DiagnosticBuilder::operator<<(const T&) const [with T = std::__cxx11::basic_string]clang::ParmVarDecl* clang::FunctionDecl::getParamDecl(unsigned int)i < getNumParams() && "Illegal param #"struct bpf_raw_tracepoint_args *decltype(auto) llvm::dyn_cast(const From&) [with To = clang::BuiltinType; From = clang::QualType]clang::SourceLocation clang::SourceLocation::getLocWithOffset(IntTy) const/usr/lib/llvm-18/include/clang/Basic/SourceLocation.h((getOffset()+Offset) & MacroIDBit) == 0 && "offset overflow"clang::Expr* clang::CallExpr::getArg(unsigned int)Arg < getNumArgs() && "Arg access out of range!"clang::SourceManager& clang::CompilerInstance::getSourceManager() constSourceMgr && "Compiler instance has no source manager!"clang::ASTContext& clang::CompilerInstance::getASTContext() constContext && "Compiler instance has no AST context!"const T& llvm::SmallVectorTemplateCommon >::operator[](size_type) const [with T = clang::SrcMgr::SLocEntry; = void; const_reference = const clang::SrcMgr::SLocEntry&; size_type = long unsigned int]void clang::StreamingDiagnostic::AddTaggedVal(uint64_t, clang::DiagnosticsEngine::ArgumentKind) conststatic bool llvm::isa_impl_cl::doit(const From*) [with To = clang::EnumType; From = clang::Type]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FunctionDecl; From = clang::Decl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclContext; From = clang::RecordDecl]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::VarDecl; From = clang::Decl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::DeclRefExpr; From = clang::Expr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::CallExpr; From = clang::Expr]decltype(auto) llvm::dyn_cast(From*) [with To = clang::CallExpr; From = clang::Expr]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::FieldDecl; From = clang::ValueDecl]decltype(auto) llvm::dyn_cast(From*) [with To = clang::FieldDecl; From = clang::ValueDecl]bool clang::operator==(specific_attr_iterator >, specific_attr_iterator >)-Iarch/mips/include/asm/mach-loongson64-Iarch/mips/include/asm/mach-genericCleaning up already existing path %s/sys/bus/event_source/devices/uprobe/format/ref_ctr_offsetUnable to attach %skprobe for %s using %sAttachng uprobe with addr %lx and offset %lx is not supportedUnable to attach %suprobe for binary %s symbol %s addr %lx offset %lx using %s Failed to detach kprobe event Failed to detach uprobe event Failed to detach Raw tracepoint Failed to close perf event array Failed to unload BPF program for Failed to detach all probes on destruction: Can't find start of function %sWARNING: cannot get prog tag, ignore saving source with program tag Tracepoint %s already attachedUnable to attach Tracepoint %s using %sRaw tracepoint %s already attachedUnable to attach Raw tracepoint %s using %sFailed to close perf event FD Perf Event type %d config %d not attachedPerf event type %d config %d already attachedFailed to attach perf event type %d config %dopen_perf_event: unable to find table_storage %sopen_perf_buffer: unable to find table_storage %sUnable to generate program text for USDT vector::_M_range_check: __n (which is %zu) >= this->size() (which is %zu)Failed to delete element when clearing table %sArray map %s do not support clearing elementsClearing for map type of %s not supported yetUnable to close perf buffer on CPU %dUnable to open perf buffer on CPU %d: %sUnable to add perf_reader FD to epoll: %sPerf buffer already open on CPU %dError constructing perf event %u:%luUnable to open perf event on CPU %d: %sPerf event already open on CPU %dFailed to close all perf buffer on destruction: %s __res = 0x0; bpf_probe_read_user(&__res, sizeof(__res), (void *)__addr); %s = __res; }{ u64 __addr = 0x%xull + %d; %s __res = 0x0; bpf_probe_read_user(&__res, sizeof(__res), (void *)__addr); %s = __res; }std::experimental::optional::operator*() const::Number of NFA states exceeds limit. Please use shorter regex string, or use smaller brace expression, or make _GLIBCXX_REGEX_STATE_LIMIT larger.Invalid '\xNN' control character in regular expressionInvalid '\uNNNN' control character in regular expressioninvalid '\cX' control character in regular expressionInvalid escape at end of regular expressionInvalid '(?...)' zero-width assertion in regular expressionIncomplete '[[' character class in regular expression^(-?[0-9]+)?\(%r([0-9]|1[0-5])(?:,%r([0-9]|1[0-5]))?\)(?: +|$)^(?:%r)?([1-2]?[0-9]|3[0-1])( +|$)^(\-?[0-9]+)\((?:%r)?([1-2]?[0-9]|3[0-1])\)( +|$)^(?:%r)?([1-2]?[0-9]|3[0-1])\,(?:%r)?([1-2]?[0-9]|3[0-1])( +|$)((a[0-9])|((s[0-9p])|s1[0-1])|(t[0-6p])|(pc)|(ra)|(fp)|(gp))Unexpected back-reference in polynomial mode.Back-reference index exceeds current sub-expression count.Back-reference referred to an opened sub-expression.Invalid start of '[x-x]' range in regular expressionInvalid end of '[x-x]' range in regular expressionInvalid location of '-' within '[...]' in POSIX regular expressionUnexpected character within '[...]' in regular expressioncannot create std::deque larger than max_size()cannot create std::vector larger than max_size()Invalid range in bracket expression.T& std::experimental::optional::operator*() [with T = int]#include __asm__ __volatile__("": : :"memory");T* std::experimental::optional::operator->() [with T = std::__cxx11::basic_string]bool USDT::Probe::add_to_semaphore(int16_t)const char* USDT::Probe::largest_arg_type(size_t)static __always_inline int _bpf_readarg_%s_%d(struct pt_regs *ctx, void *dest, size_t len) { if (len != sizeof(%s)) return -1; switch (PT_REGS_IP(ctx) %% 0x%xULL) { Two same-name probes (%s) but different providers HINT: Binary path %s should be absolute. HINT: Specified binary %s doesn't exist. Unable to find offset for binary %s symbol %s address %lxCan't detach for prog_fd %d, attachable_fd %d, attach_type %d: error %dCan't attach for prog_fd %d, attachable_fd %d, attach_type %d, flags %ld: error %dNo open %suprobe for binary %s symbol %s addr %lxcannot use "packet" header type inside a macroonly %%d %%u %%x %%ld %%lu %%lx %%lld %%llu %%llx %%p %%s conversion specifiers allowedinvalid bpf_table operation %0all element of an array already exist; insert() will have no effectdecltype(auto) llvm::dyn_cast(From*) [with To = ArrayType; From = Type]std::experimental::optional >::operator*() const::std::experimental::optional >::operator->() const::const clang::DiagnosticBuilder& clang::DiagnosticBuilder::operator<<(const T&) const [with T = llvm::StringRef]void clang::RopeRefCountString::Release()/usr/lib/llvm-18/include/clang/Rewrite/Core/RewriteRope.hdecltype(auto) llvm::dyn_cast(const From&) [with To = clang::EnumType; From = clang::QualType]static bool llvm::isa_impl_cl::doit(const From*) [with To = clang::BlockDecl; From = clang::Decl]Event name (%s) is too long for buffer Event alias (%s) too long for buffer cannot attach %s, probe entry may not exist decltype(auto) llvm::cast(const From&) [with To = detail::UniqueFunctionBase::NonTrivialCallbacks*; From = PointerUnion::TrivialCallback*, detail::UniqueFunctionBase::NonTrivialCallbacks*>] /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* Copyright (c) 2011-2014 PLUMgrid, http://plumgrid.com * * This program is free software; you can redistribute it and/or * modify it under the terms of version 2 of the GNU General Public * License as published by the Free Software Foundation. */ #ifndef _UAPI__LINUX_BPF_H__ #define _UAPI__LINUX_BPF_H__ #include #include /* Extended instruction set based on top of classic BPF */ /* instruction classes */ #define BPF_JMP32 0x06 /* jmp mode in word width */ #define BPF_ALU64 0x07 /* alu mode in double word width */ /* ld/ldx fields */ #define BPF_DW 0x18 /* double word (64-bit) */ #define BPF_ATOMIC 0xc0 /* atomic memory ops - op type in immediate */ #define BPF_XADD 0xc0 /* exclusive add - legacy name */ /* alu/jmp fields */ #define BPF_MOV 0xb0 /* mov reg to reg */ #define BPF_ARSH 0xc0 /* sign extending arithmetic shift right */ /* change endianness of a register */ #define BPF_END 0xd0 /* flags for endianness conversion: */ #define BPF_TO_LE 0x00 /* convert to little-endian */ #define BPF_TO_BE 0x08 /* convert to big-endian */ #define BPF_FROM_LE BPF_TO_LE #define BPF_FROM_BE BPF_TO_BE /* jmp encodings */ #define BPF_JNE 0x50 /* jump != */ #define BPF_JLT 0xa0 /* LT is unsigned, '<' */ #define BPF_JLE 0xb0 /* LE is unsigned, '<=' */ #define BPF_JSGT 0x60 /* SGT is signed '>', GT in x86 */ #define BPF_JSGE 0x70 /* SGE is signed '>=', GE in x86 */ #define BPF_JSLT 0xc0 /* SLT is signed, '<' */ #define BPF_JSLE 0xd0 /* SLE is signed, '<=' */ #define BPF_CALL 0x80 /* function call */ #define BPF_EXIT 0x90 /* function return */ /* atomic op type fields (stored in immediate) */ #define BPF_FETCH 0x01 /* not an opcode on its own, used to build others */ #define BPF_XCHG (0xe0 | BPF_FETCH) /* atomic exchange */ #define BPF_CMPXCHG (0xf0 | BPF_FETCH) /* atomic compare-and-write */ /* Register numbers */ enum { BPF_REG_0 = 0, BPF_REG_1, BPF_REG_2, BPF_REG_3, BPF_REG_4, BPF_REG_5, BPF_REG_6, BPF_REG_7, BPF_REG_8, BPF_REG_9, BPF_REG_10, __MAX_BPF_REG, }; /* BPF has 10 general purpose 64-bit registers and stack frame. */ #define MAX_BPF_REG __MAX_BPF_REG struct bpf_insn { __u8 code; /* opcode */ __u8 dst_reg:4; /* dest register */ __u8 src_reg:4; /* source register */ __s16 off; /* signed offset */ __s32 imm; /* signed immediate constant */ }; /* Key of an a BPF_MAP_TYPE_LPM_TRIE entry */ struct bpf_lpm_trie_key { __u32 prefixlen; /* up to 32 for AF_INET, 128 for AF_INET6 */ __u8 data[0]; /* Arbitrary size */ }; struct bpf_cgroup_storage_key { __u64 cgroup_inode_id; /* cgroup inode id */ __u32 attach_type; /* program attach type (enum bpf_attach_type) */ }; enum bpf_cgroup_iter_order { BPF_CGROUP_ITER_ORDER_UNSPEC = 0, BPF_CGROUP_ITER_SELF_ONLY, /* process only a single object. */ BPF_CGROUP_ITER_DESCENDANTS_PRE, /* walk descendants in pre-order. */ BPF_CGROUP_ITER_DESCENDANTS_POST, /* walk descendants in post-order. */ BPF_CGROUP_ITER_ANCESTORS_UP, /* walk ancestors upward. */ }; union bpf_iter_link_info { struct { __u32 map_fd; } map; struct { enum bpf_cgroup_iter_order order; /* At most one of cgroup_fd and cgroup_id can be non-zero. If * both are zero, the walk starts from the default cgroup v2 * root. For walking v1 hierarchy, one should always explicitly * specify cgroup_fd. */ __u32 cgroup_fd; __u64 cgroup_id; } cgroup; /* Parameters of task iterators. */ struct { __u32 tid; __u32 pid; __u32 pid_fd; } task; }; /* BPF syscall commands, see bpf(2) man-page for more details. */ /** * DOC: eBPF Syscall Preamble * * The operation to be performed by the **bpf**\ () system call is determined * by the *cmd* argument. Each operation takes an accompanying argument, * provided via *attr*, which is a pointer to a union of type *bpf_attr* (see * below). The size argument is the size of the union pointed to by *attr*. */ /** * DOC: eBPF Syscall Commands * * BPF_MAP_CREATE * Description * Create a map and return a file descriptor that refers to the * map. The close-on-exec file descriptor flag (see **fcntl**\ (2)) * is automatically enabled for the new file descriptor. * * Applying **close**\ (2) to the file descriptor returned by * **BPF_MAP_CREATE** will delete the map (but see NOTES). * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_MAP_LOOKUP_ELEM * Description * Look up an element with a given *key* in the map referred to * by the file descriptor *map_fd*. * * The *flags* argument may be specified as one of the * following: * * **BPF_F_LOCK** * Look up the value of a spin-locked map without * returning the lock. This must be specified if the * elements contain a spinlock. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_MAP_UPDATE_ELEM * Description * Create or update an element (key/value pair) in a specified map. * * The *flags* argument should be specified as one of the * following: * * **BPF_ANY** * Create a new element or update an existing element. * **BPF_NOEXIST** * Create a new element only if it did not exist. * **BPF_EXIST** * Update an existing element. * **BPF_F_LOCK** * Update a spin_lock-ed map element. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * May set *errno* to **EINVAL**, **EPERM**, **ENOMEM**, * **E2BIG**, **EEXIST**, or **ENOENT**. * * **E2BIG** * The number of elements in the map reached the * *max_entries* limit specified at map creation time. * **EEXIST** * If *flags* specifies **BPF_NOEXIST** and the element * with *key* already exists in the map. * **ENOENT** * If *flags* specifies **BPF_EXIST** and the element with * *key* does not exist in the map. * * BPF_MAP_DELETE_ELEM * Description * Look up and delete an element by key in a specified map. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_MAP_GET_NEXT_KEY * Description * Look up an element by key in a specified map and return the key * of the next element. Can be used to iterate over all elements * in the map. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * The following cases can be used to iterate over all elements of * the map: * * * If *key* is not found, the operation returns zero and sets * the *next_key* pointer to the key of the first element. * * If *key* is found, the operation returns zero and sets the * *next_key* pointer to the key of the next element. * * If *key* is the last element, returns -1 and *errno* is set * to **ENOENT**. * * May set *errno* to **ENOMEM**, **EFAULT**, **EPERM**, or * **EINVAL** on error. * * BPF_PROG_LOAD * Description * Verify and load an eBPF program, returning a new file * descriptor associated with the program. * * Applying **close**\ (2) to the file descriptor returned by * **BPF_PROG_LOAD** will unload the eBPF program (but see NOTES). * * The close-on-exec file descriptor flag (see **fcntl**\ (2)) is * automatically enabled for the new file descriptor. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_OBJ_PIN * Description * Pin an eBPF program or map referred by the specified *bpf_fd* * to the provided *pathname* on the filesystem. * * The *pathname* argument must not contain a dot ("."). * * On success, *pathname* retains a reference to the eBPF object, * preventing deallocation of the object when the original * *bpf_fd* is closed. This allow the eBPF object to live beyond * **close**\ (\ *bpf_fd*\ ), and hence the lifetime of the parent * process. * * Applying **unlink**\ (2) or similar calls to the *pathname* * unpins the object from the filesystem, removing the reference. * If no other file descriptors or filesystem nodes refer to the * same object, it will be deallocated (see NOTES). * * The filesystem type for the parent directory of *pathname* must * be **BPF_FS_MAGIC**. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_OBJ_GET * Description * Open a file descriptor for the eBPF object pinned to the * specified *pathname*. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_PROG_ATTACH * Description * Attach an eBPF program to a *target_fd* at the specified * *attach_type* hook. * * The *attach_type* specifies the eBPF attachment point to * attach the program to, and must be one of *bpf_attach_type* * (see below). * * The *attach_bpf_fd* must be a valid file descriptor for a * loaded eBPF program of a cgroup, flow dissector, LIRC, sockmap * or sock_ops type corresponding to the specified *attach_type*. * * The *target_fd* must be a valid file descriptor for a kernel * object which depends on the attach type of *attach_bpf_fd*: * * **BPF_PROG_TYPE_CGROUP_DEVICE**, * **BPF_PROG_TYPE_CGROUP_SKB**, * **BPF_PROG_TYPE_CGROUP_SOCK**, * **BPF_PROG_TYPE_CGROUP_SOCK_ADDR**, * **BPF_PROG_TYPE_CGROUP_SOCKOPT**, * **BPF_PROG_TYPE_CGROUP_SYSCTL**, * **BPF_PROG_TYPE_SOCK_OPS** * * Control Group v2 hierarchy with the eBPF controller * enabled. Requires the kernel to be compiled with * **CONFIG_CGROUP_BPF**. * * **BPF_PROG_TYPE_FLOW_DISSECTOR** * * Network namespace (eg /proc/self/ns/net). * * **BPF_PROG_TYPE_LIRC_MODE2** * * LIRC device path (eg /dev/lircN). Requires the kernel * to be compiled with **CONFIG_BPF_LIRC_MODE2**. * * **BPF_PROG_TYPE_SK_SKB**, * **BPF_PROG_TYPE_SK_MSG** * * eBPF map of socket type (eg **BPF_MAP_TYPE_SOCKHASH**). * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_PROG_DETACH * Description * Detach the eBPF program associated with the *target_fd* at the * hook specified by *attach_type*. The program must have been * previously attached using **BPF_PROG_ATTACH**. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_PROG_TEST_RUN * Description * Run the eBPF program associated with the *prog_fd* a *repeat* * number of times against a provided program context *ctx_in* and * data *data_in*, and return the modified program context * *ctx_out*, *data_out* (for example, packet data), result of the * execution *retval*, and *duration* of the test run. * * The sizes of the buffers provided as input and output * parameters *ctx_in*, *ctx_out*, *data_in*, and *data_out* must * be provided in the corresponding variables *ctx_size_in*, * *ctx_size_out*, *data_size_in*, and/or *data_size_out*. If any * of these parameters are not provided (ie set to NULL), the * corresponding size field must be zero. * * Some program types have particular requirements: * * **BPF_PROG_TYPE_SK_LOOKUP** * *data_in* and *data_out* must be NULL. * * **BPF_PROG_TYPE_RAW_TRACEPOINT**, * **BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE** * * *ctx_out*, *data_in* and *data_out* must be NULL. * *repeat* must be zero. * * BPF_PROG_RUN is an alias for BPF_PROG_TEST_RUN. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * **ENOSPC** * Either *data_size_out* or *ctx_size_out* is too small. * **ENOTSUPP** * This command is not supported by the program type of * the program referred to by *prog_fd*. * * BPF_PROG_GET_NEXT_ID * Description * Fetch the next eBPF program currently loaded into the kernel. * * Looks for the eBPF program with an id greater than *start_id* * and updates *next_id* on success. If no other eBPF programs * remain with ids higher than *start_id*, returns -1 and sets * *errno* to **ENOENT**. * * Return * Returns zero on success. On error, or when no id remains, -1 * is returned and *errno* is set appropriately. * * BPF_MAP_GET_NEXT_ID * Description * Fetch the next eBPF map currently loaded into the kernel. * * Looks for the eBPF map with an id greater than *start_id* * and updates *next_id* on success. If no other eBPF maps * remain with ids higher than *start_id*, returns -1 and sets * *errno* to **ENOENT**. * * Return * Returns zero on success. On error, or when no id remains, -1 * is returned and *errno* is set appropriately. * * BPF_PROG_GET_FD_BY_ID * Description * Open a file descriptor for the eBPF program corresponding to * *prog_id*. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_MAP_GET_FD_BY_ID * Description * Open a file descriptor for the eBPF map corresponding to * *map_id*. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_OBJ_GET_INFO_BY_FD * Description * Obtain information about the eBPF object corresponding to * *bpf_fd*. * * Populates up to *info_len* bytes of *info*, which will be in * one of the following formats depending on the eBPF object type * of *bpf_fd*: * * * **struct bpf_prog_info** * * **struct bpf_map_info** * * **struct bpf_btf_info** * * **struct bpf_link_info** * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_PROG_QUERY * Description * Obtain information about eBPF programs associated with the * specified *attach_type* hook. * * The *target_fd* must be a valid file descriptor for a kernel * object which depends on the attach type of *attach_bpf_fd*: * * **BPF_PROG_TYPE_CGROUP_DEVICE**, * **BPF_PROG_TYPE_CGROUP_SKB**, * **BPF_PROG_TYPE_CGROUP_SOCK**, * **BPF_PROG_TYPE_CGROUP_SOCK_ADDR**, * **BPF_PROG_TYPE_CGROUP_SOCKOPT**, * **BPF_PROG_TYPE_CGROUP_SYSCTL**, * **BPF_PROG_TYPE_SOCK_OPS** * * Control Group v2 hierarchy with the eBPF controller * enabled. Requires the kernel to be compiled with * **CONFIG_CGROUP_BPF**. * * **BPF_PROG_TYPE_FLOW_DISSECTOR** * * Network namespace (eg /proc/self/ns/net). * * **BPF_PROG_TYPE_LIRC_MODE2** * * LIRC device path (eg /dev/lircN). Requires the kernel * to be compiled with **CONFIG_BPF_LIRC_MODE2**. * * **BPF_PROG_QUERY** always fetches the number of programs * attached and the *attach_flags* which were used to attach those * programs. Additionally, if *prog_ids* is nonzero and the number * of attached programs is less than *prog_cnt*, populates * *prog_ids* with the eBPF program ids of the programs attached * at *target_fd*. * * The following flags may alter the result: * * **BPF_F_QUERY_EFFECTIVE** * Only return information regarding programs which are * currently effective at the specified *target_fd*. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_RAW_TRACEPOINT_OPEN * Description * Attach an eBPF program to a tracepoint *name* to access kernel * internal arguments of the tracepoint in their raw form. * * The *prog_fd* must be a valid file descriptor associated with * a loaded eBPF program of type **BPF_PROG_TYPE_RAW_TRACEPOINT**. * * No ABI guarantees are made about the content of tracepoint * arguments exposed to the corresponding eBPF program. * * Applying **close**\ (2) to the file descriptor returned by * **BPF_RAW_TRACEPOINT_OPEN** will delete the map (but see NOTES). * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_BTF_LOAD * Description * Verify and load BPF Type Format (BTF) metadata into the kernel, * returning a new file descriptor associated with the metadata. * BTF is described in more detail at * https://www.kernel.org/doc/html/latest/bpf/btf.html. * * The *btf* parameter must point to valid memory providing * *btf_size* bytes of BTF binary metadata. * * The returned file descriptor can be passed to other **bpf**\ () * subcommands such as **BPF_PROG_LOAD** or **BPF_MAP_CREATE** to * associate the BTF with those objects. * * Similar to **BPF_PROG_LOAD**, **BPF_BTF_LOAD** has optional * parameters to specify a *btf_log_buf*, *btf_log_size* and * *btf_log_level* which allow the kernel to return freeform log * output regarding the BTF verification process. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_BTF_GET_FD_BY_ID * Description * Open a file descriptor for the BPF Type Format (BTF) * corresponding to *btf_id*. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_TASK_FD_QUERY * Description * Obtain information about eBPF programs associated with the * target process identified by *pid* and *fd*. * * If the *pid* and *fd* are associated with a tracepoint, kprobe * or uprobe perf event, then the *prog_id* and *fd_type* will * be populated with the eBPF program id and file descriptor type * of type **bpf_task_fd_type**. If associated with a kprobe or * uprobe, the *probe_offset* and *probe_addr* will also be * populated. Optionally, if *buf* is provided, then up to * *buf_len* bytes of *buf* will be populated with the name of * the tracepoint, kprobe or uprobe. * * The resulting *prog_id* may be introspected in deeper detail * using **BPF_PROG_GET_FD_BY_ID** and **BPF_OBJ_GET_INFO_BY_FD**. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_MAP_LOOKUP_AND_DELETE_ELEM * Description * Look up an element with the given *key* in the map referred to * by the file descriptor *fd*, and if found, delete the element. * * For **BPF_MAP_TYPE_QUEUE** and **BPF_MAP_TYPE_STACK** map * types, the *flags* argument needs to be set to 0, but for other * map types, it may be specified as: * * **BPF_F_LOCK** * Look up and delete the value of a spin-locked map * without returning the lock. This must be specified if * the elements contain a spinlock. * * The **BPF_MAP_TYPE_QUEUE** and **BPF_MAP_TYPE_STACK** map types * implement this command as a "pop" operation, deleting the top * element rather than one corresponding to *key*. * The *key* and *key_len* parameters should be zeroed when * issuing this operation for these map types. * * This command is only valid for the following map types: * * **BPF_MAP_TYPE_QUEUE** * * **BPF_MAP_TYPE_STACK** * * **BPF_MAP_TYPE_HASH** * * **BPF_MAP_TYPE_PERCPU_HASH** * * **BPF_MAP_TYPE_LRU_HASH** * * **BPF_MAP_TYPE_LRU_PERCPU_HASH** * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_MAP_FREEZE * Description * Freeze the permissions of the specified map. * * Write permissions may be frozen by passing zero *flags*. * Upon success, no future syscall invocations may alter the * map state of *map_fd*. Write operations from eBPF programs * are still possible for a frozen map. * * Not supported for maps of type **BPF_MAP_TYPE_STRUCT_OPS**. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_BTF_GET_NEXT_ID * Description * Fetch the next BPF Type Format (BTF) object currently loaded * into the kernel. * * Looks for the BTF object with an id greater than *start_id* * and updates *next_id* on success. If no other BTF objects * remain with ids higher than *start_id*, returns -1 and sets * *errno* to **ENOENT**. * * Return * Returns zero on success. On error, or when no id remains, -1 * is returned and *errno* is set appropriately. * * BPF_MAP_LOOKUP_BATCH * Description * Iterate and fetch multiple elements in a map. * * Two opaque values are used to manage batch operations, * *in_batch* and *out_batch*. Initially, *in_batch* must be set * to NULL to begin the batched operation. After each subsequent * **BPF_MAP_LOOKUP_BATCH**, the caller should pass the resultant * *out_batch* as the *in_batch* for the next operation to * continue iteration from the current point. * * The *keys* and *values* are output parameters which must point * to memory large enough to hold *count* items based on the key * and value size of the map *map_fd*. The *keys* buffer must be * of *key_size* * *count*. The *values* buffer must be of * *value_size* * *count*. * * The *elem_flags* argument may be specified as one of the * following: * * **BPF_F_LOCK** * Look up the value of a spin-locked map without * returning the lock. This must be specified if the * elements contain a spinlock. * * On success, *count* elements from the map are copied into the * user buffer, with the keys copied into *keys* and the values * copied into the corresponding indices in *values*. * * If an error is returned and *errno* is not **EFAULT**, *count* * is set to the number of successfully processed elements. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * May set *errno* to **ENOSPC** to indicate that *keys* or * *values* is too small to dump an entire bucket during * iteration of a hash-based map type. * * BPF_MAP_LOOKUP_AND_DELETE_BATCH * Description * Iterate and delete all elements in a map. * * This operation has the same behavior as * **BPF_MAP_LOOKUP_BATCH** with two exceptions: * * * Every element that is successfully returned is also deleted * from the map. This is at least *count* elements. Note that * *count* is both an input and an output parameter. * * Upon returning with *errno* set to **EFAULT**, up to * *count* elements may be deleted without returning the keys * and values of the deleted elements. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_MAP_UPDATE_BATCH * Description * Update multiple elements in a map by *key*. * * The *keys* and *values* are input parameters which must point * to memory large enough to hold *count* items based on the key * and value size of the map *map_fd*. The *keys* buffer must be * of *key_size* * *count*. The *values* buffer must be of * *value_size* * *count*. * * Each element specified in *keys* is sequentially updated to the * value in the corresponding index in *values*. The *in_batch* * and *out_batch* parameters are ignored and should be zeroed. * * The *elem_flags* argument should be specified as one of the * following: * * **BPF_ANY** * Create new elements or update a existing elements. * **BPF_NOEXIST** * Create new elements only if they do not exist. * **BPF_EXIST** * Update existing elements. * **BPF_F_LOCK** * Update spin_lock-ed map elements. This must be * specified if the map value contains a spinlock. * * On success, *count* elements from the map are updated. * * If an error is returned and *errno* is not **EFAULT**, *count* * is set to the number of successfully processed elements. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * May set *errno* to **EINVAL**, **EPERM**, **ENOMEM**, or * **E2BIG**. **E2BIG** indicates that the number of elements in * the map reached the *max_entries* limit specified at map * creation time. * * May set *errno* to one of the following error codes under * specific circumstances: * * **EEXIST** * If *flags* specifies **BPF_NOEXIST** and the element * with *key* already exists in the map. * **ENOENT** * If *flags* specifies **BPF_EXIST** and the element with * *key* does not exist in the map. * * BPF_MAP_DELETE_BATCH * Description * Delete multiple elements in a map by *key*. * * The *keys* parameter is an input parameter which must point * to memory large enough to hold *count* items based on the key * size of the map *map_fd*, that is, *key_size* * *count*. * * Each element specified in *keys* is sequentially deleted. The * *in_batch*, *out_batch*, and *values* parameters are ignored * and should be zeroed. * * The *elem_flags* argument may be specified as one of the * following: * * **BPF_F_LOCK** * Look up the value of a spin-locked map without * returning the lock. This must be specified if the * elements contain a spinlock. * * On success, *count* elements from the map are updated. * * If an error is returned and *errno* is not **EFAULT**, *count* * is set to the number of successfully processed elements. If * *errno* is **EFAULT**, up to *count* elements may be been * deleted. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_LINK_CREATE * Description * Attach an eBPF program to a *target_fd* at the specified * *attach_type* hook and return a file descriptor handle for * managing the link. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_LINK_UPDATE * Description * Update the eBPF program in the specified *link_fd* to * *new_prog_fd*. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_LINK_GET_FD_BY_ID * Description * Open a file descriptor for the eBPF Link corresponding to * *link_id*. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_LINK_GET_NEXT_ID * Description * Fetch the next eBPF link currently loaded into the kernel. * * Looks for the eBPF link with an id greater than *start_id* * and updates *next_id* on success. If no other eBPF links * remain with ids higher than *start_id*, returns -1 and sets * *errno* to **ENOENT**. * * Return * Returns zero on success. On error, or when no id remains, -1 * is returned and *errno* is set appropriately. * * BPF_ENABLE_STATS * Description * Enable eBPF runtime statistics gathering. * * Runtime statistics gathering for the eBPF runtime is disabled * by default to minimize the corresponding performance overhead. * This command enables statistics globally. * * Multiple programs may independently enable statistics. * After gathering the desired statistics, eBPF runtime statistics * may be disabled again by calling **close**\ (2) for the file * descriptor returned by this function. Statistics will only be * disabled system-wide when all outstanding file descriptors * returned by prior calls for this subcommand are closed. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_ITER_CREATE * Description * Create an iterator on top of the specified *link_fd* (as * previously created using **BPF_LINK_CREATE**) and return a * file descriptor that can be used to trigger the iteration. * * If the resulting file descriptor is pinned to the filesystem * using **BPF_OBJ_PIN**, then subsequent **read**\ (2) syscalls * for that path will trigger the iterator to read kernel state * using the eBPF program attached to *link_fd*. * * Return * A new file descriptor (a nonnegative integer), or -1 if an * error occurred (in which case, *errno* is set appropriately). * * BPF_LINK_DETACH * Description * Forcefully detach the specified *link_fd* from its * corresponding attachment point. * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * BPF_PROG_BIND_MAP * Description * Bind a map to the lifetime of an eBPF program. * * The map identified by *map_fd* is bound to the program * identified by *prog_fd* and only released when *prog_fd* is * released. This may be used in cases where metadata should be * associated with a program which otherwise does not contain any * references to the map (for example, embedded in the eBPF * program instructions). * * Return * Returns zero on success. On error, -1 is returned and *errno* * is set appropriately. * * NOTES * eBPF objects (maps and programs) can be shared between processes. * * * After **fork**\ (2), the child inherits file descriptors * referring to the same eBPF objects. * * File descriptors referring to eBPF objects can be transferred over * **unix**\ (7) domain sockets. * * File descriptors referring to eBPF objects can be duplicated in the * usual way, using **dup**\ (2) and similar calls. * * File descriptors referring to eBPF objects can be pinned to the * filesystem using the **BPF_OBJ_PIN** command of **bpf**\ (2). * * An eBPF object is deallocated only after all file descriptors referring * to the object have been closed and no references remain pinned to the * filesystem or attached (for example, bound to a program or device). */ enum bpf_cmd { BPF_MAP_CREATE, BPF_MAP_LOOKUP_ELEM, BPF_MAP_UPDATE_ELEM, BPF_MAP_DELETE_ELEM, BPF_MAP_GET_NEXT_KEY, BPF_PROG_LOAD, BPF_OBJ_PIN, BPF_OBJ_GET, BPF_PROG_ATTACH, BPF_PROG_DETACH, BPF_PROG_TEST_RUN, BPF_PROG_RUN = BPF_PROG_TEST_RUN, BPF_PROG_GET_NEXT_ID, BPF_MAP_GET_NEXT_ID, BPF_PROG_GET_FD_BY_ID, BPF_MAP_GET_FD_BY_ID, BPF_OBJ_GET_INFO_BY_FD, BPF_PROG_QUERY, BPF_RAW_TRACEPOINT_OPEN, BPF_BTF_LOAD, BPF_BTF_GET_FD_BY_ID, BPF_TASK_FD_QUERY, BPF_MAP_LOOKUP_AND_DELETE_ELEM, BPF_MAP_FREEZE, BPF_BTF_GET_NEXT_ID, BPF_MAP_LOOKUP_BATCH, BPF_MAP_LOOKUP_AND_DELETE_BATCH, BPF_MAP_UPDATE_BATCH, BPF_MAP_DELETE_BATCH, BPF_LINK_CREATE, BPF_LINK_UPDATE, BPF_LINK_GET_FD_BY_ID, BPF_LINK_GET_NEXT_ID, BPF_ENABLE_STATS, BPF_ITER_CREATE, BPF_LINK_DETACH, BPF_PROG_BIND_MAP, }; enum bpf_map_type { BPF_MAP_TYPE_UNSPEC, BPF_MAP_TYPE_HASH, BPF_MAP_TYPE_ARRAY, BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_PERF_EVENT_ARRAY, BPF_MAP_TYPE_PERCPU_HASH, BPF_MAP_TYPE_PERCPU_ARRAY, BPF_MAP_TYPE_STACK_TRACE, BPF_MAP_TYPE_CGROUP_ARRAY, BPF_MAP_TYPE_LRU_HASH, BPF_MAP_TYPE_LRU_PERCPU_HASH, BPF_MAP_TYPE_LPM_TRIE, BPF_MAP_TYPE_ARRAY_OF_MAPS, BPF_MAP_TYPE_HASH_OF_MAPS, BPF_MAP_TYPE_DEVMAP, BPF_MAP_TYPE_SOCKMAP, BPF_MAP_TYPE_CPUMAP, BPF_MAP_TYPE_XSKMAP, BPF_MAP_TYPE_SOCKHASH, BPF_MAP_TYPE_CGROUP_STORAGE_DEPRECATED, /* BPF_MAP_TYPE_CGROUP_STORAGE is available to bpf programs attaching * to a cgroup. The newer BPF_MAP_TYPE_CGRP_STORAGE is available to * both cgroup-attached and other progs and supports all functionality * provided by BPF_MAP_TYPE_CGROUP_STORAGE. So mark * BPF_MAP_TYPE_CGROUP_STORAGE deprecated. */ BPF_MAP_TYPE_CGROUP_STORAGE = BPF_MAP_TYPE_CGROUP_STORAGE_DEPRECATED, BPF_MAP_TYPE_REUSEPORT_SOCKARRAY, BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE, BPF_MAP_TYPE_QUEUE, BPF_MAP_TYPE_STACK, BPF_MAP_TYPE_SK_STORAGE, BPF_MAP_TYPE_DEVMAP_HASH, BPF_MAP_TYPE_STRUCT_OPS, BPF_MAP_TYPE_RINGBUF, BPF_MAP_TYPE_INODE_STORAGE, BPF_MAP_TYPE_TASK_STORAGE, BPF_MAP_TYPE_BLOOM_FILTER, BPF_MAP_TYPE_USER_RINGBUF, BPF_MAP_TYPE_CGRP_STORAGE, }; /* Note that tracing related programs such as * BPF_PROG_TYPE_{KPROBE,TRACEPOINT,PERF_EVENT,RAW_TRACEPOINT} * are not subject to a stable API since kernel internal data * structures can change from release to release and may * therefore break existing tracing BPF programs. Tracing BPF * programs correspond to /a/ specific kernel which is to be * analyzed, and not /a/ specific kernel /and/ all future ones. */ enum bpf_prog_type { BPF_PROG_TYPE_UNSPEC, BPF_PROG_TYPE_SOCKET_FILTER, BPF_PROG_TYPE_KPROBE, BPF_PROG_TYPE_SCHED_CLS, BPF_PROG_TYPE_SCHED_ACT, BPF_PROG_TYPE_TRACEPOINT, BPF_PROG_TYPE_XDP, BPF_PROG_TYPE_PERF_EVENT, BPF_PROG_TYPE_CGROUP_SKB, BPF_PROG_TYPE_CGROUP_SOCK, BPF_PROG_TYPE_LWT_IN, BPF_PROG_TYPE_LWT_OUT, BPF_PROG_TYPE_LWT_XMIT, BPF_PROG_TYPE_SOCK_OPS, BPF_PROG_TYPE_SK_SKB, BPF_PROG_TYPE_CGROUP_DEVICE, BPF_PROG_TYPE_SK_MSG, BPF_PROG_TYPE_RAW_TRACEPOINT, BPF_PROG_TYPE_CGROUP_SOCK_ADDR, BPF_PROG_TYPE_LWT_SEG6LOCAL, BPF_PROG_TYPE_LIRC_MODE2, BPF_PROG_TYPE_SK_REUSEPORT, BPF_PROG_TYPE_FLOW_DISSECTOR, BPF_PROG_TYPE_CGROUP_SYSCTL, BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE, BPF_PROG_TYPE_CGROUP_SOCKOPT, BPF_PROG_TYPE_TRACING, BPF_PROG_TYPE_STRUCT_OPS, BPF_PROG_TYPE_EXT, BPF_PROG_TYPE_LSM, BPF_PROG_TYPE_SK_LOOKUP, BPF_PROG_TYPE_SYSCALL, /* a program that can execute syscalls */ }; enum bpf_attach_type { BPF_CGROUP_INET_INGRESS, BPF_CGROUP_INET_EGRESS, BPF_CGROUP_INET_SOCK_CREATE, BPF_CGROUP_SOCK_OPS, BPF_SK_SKB_STREAM_PARSER, BPF_SK_SKB_STREAM_VERDICT, BPF_CGROUP_DEVICE, BPF_SK_MSG_VERDICT, BPF_CGROUP_INET4_BIND, BPF_CGROUP_INET6_BIND, BPF_CGROUP_INET4_CONNECT, BPF_CGROUP_INET6_CONNECT, BPF_CGROUP_INET4_POST_BIND, BPF_CGROUP_INET6_POST_BIND, BPF_CGROUP_UDP4_SENDMSG, BPF_CGROUP_UDP6_SENDMSG, BPF_LIRC_MODE2, BPF_FLOW_DISSECTOR, BPF_CGROUP_SYSCTL, BPF_CGROUP_UDP4_RECVMSG, BPF_CGROUP_UDP6_RECVMSG, BPF_CGROUP_GETSOCKOPT, BPF_CGROUP_SETSOCKOPT, BPF_TRACE_RAW_TP, BPF_TRACE_FENTRY, BPF_TRACE_FEXIT, BPF_MODIFY_RETURN, BPF_LSM_MAC, BPF_TRACE_ITER, BPF_CGROUP_INET4_GETPEERNAME, BPF_CGROUP_INET6_GETPEERNAME, BPF_CGROUP_INET4_GETSOCKNAME, BPF_CGROUP_INET6_GETSOCKNAME, BPF_XDP_DEVMAP, BPF_CGROUP_INET_SOCK_RELEASE, BPF_XDP_CPUMAP, BPF_SK_LOOKUP, BPF_XDP, BPF_SK_SKB_VERDICT, BPF_SK_REUSEPORT_SELECT, BPF_SK_REUSEPORT_SELECT_OR_MIGRATE, BPF_PERF_EVENT, BPF_TRACE_KPROBE_MULTI, BPF_LSM_CGROUP, BPF_STRUCT_OPS, __MAX_BPF_ATTACH_TYPE }; #define MAX_BPF_ATTACH_TYPE __MAX_BPF_ATTACH_TYPE enum bpf_link_type { BPF_LINK_TYPE_UNSPEC = 0, BPF_LINK_TYPE_RAW_TRACEPOINT = 1, BPF_LINK_TYPE_TRACING = 2, BPF_LINK_TYPE_CGROUP = 3, BPF_LINK_TYPE_ITER = 4, BPF_LINK_TYPE_NETNS = 5, BPF_LINK_TYPE_XDP = 6, BPF_LINK_TYPE_PERF_EVENT = 7, BPF_LINK_TYPE_KPROBE_MULTI = 8, BPF_LINK_TYPE_STRUCT_OPS = 9, MAX_BPF_LINK_TYPE, }; /* cgroup-bpf attach flags used in BPF_PROG_ATTACH command * * NONE(default): No further bpf programs allowed in the subtree. * * BPF_F_ALLOW_OVERRIDE: If a sub-cgroup installs some bpf program, * the program in this cgroup yields to sub-cgroup program. * * BPF_F_ALLOW_MULTI: If a sub-cgroup installs some bpf program, * that cgroup program gets run in addition to the program in this cgroup. * * Only one program is allowed to be attached to a cgroup with * NONE or BPF_F_ALLOW_OVERRIDE flag. * Attaching another program on top of NONE or BPF_F_ALLOW_OVERRIDE will * release old program and attach the new one. Attach flags has to match. * * Multiple programs are allowed to be attached to a cgroup with * BPF_F_ALLOW_MULTI flag. They are executed in FIFO order * (those that were attached first, run first) * The programs of sub-cgroup are executed first, then programs of * this cgroup and then programs of parent cgroup. * When children program makes decision (like picking TCP CA or sock bind) * parent program has a chance to override it. * * With BPF_F_ALLOW_MULTI a new program is added to the end of the list of * programs for a cgroup. Though it's possible to replace an old program at * any position by also specifying BPF_F_REPLACE flag and position itself in * replace_bpf_fd attribute. Old program at this position will be released. * * A cgroup with MULTI or OVERRIDE flag allows any attach flags in sub-cgroups. * A cgroup with NONE doesn't allow any programs in sub-cgroups. * Ex1: * cgrp1 (MULTI progs A, B) -> * cgrp2 (OVERRIDE prog C) -> * cgrp3 (MULTI prog D) -> * cgrp4 (OVERRIDE prog E) -> * cgrp5 (NONE prog F) * the event in cgrp5 triggers execution of F,D,A,B in that order. * if prog F is detached, the execution is E,D,A,B * if prog F and D are detached, the execution is E,A,B * if prog F, E and D are detached, the execution is C,A,B * * All eligible programs are executed regardless of return code from * earlier programs. */ #define BPF_F_ALLOW_OVERRIDE (1U << 0) #define BPF_F_ALLOW_MULTI (1U << 1) #define BPF_F_REPLACE (1U << 2) /* If BPF_F_STRICT_ALIGNMENT is used in BPF_PROG_LOAD command, the * verifier will perform strict alignment checking as if the kernel * has been built with CONFIG_EFFICIENT_UNALIGNED_ACCESS not set, * and NET_IP_ALIGN defined to 2. */ #define BPF_F_STRICT_ALIGNMENT (1U << 0) /* If BPF_F_ANY_ALIGNMENT is used in BPF_PROG_LOAD command, the * verifier will allow any alignment whatsoever. On platforms * with strict alignment requirements for loads ands stores (such * as sparc and mips) the verifier validates that all loads and * stores provably follow this requirement. This flag turns that * checking and enforcement off. * * It is mostly used for testing when we want to validate the * context and memory access aspects of the verifier, but because * of an unaligned access the alignment check would trigger before * the one we are interested in. */ #define BPF_F_ANY_ALIGNMENT (1U << 1) /* BPF_F_TEST_RND_HI32 is used in BPF_PROG_LOAD command for testing purpose. * Verifier does sub-register def/use analysis and identifies instructions whose * def only matters for low 32-bit, high 32-bit is never referenced later * through implicit zero extension. Therefore verifier notifies JIT back-ends * that it is safe to ignore clearing high 32-bit for these instructions. This * saves some back-ends a lot of code-gen. However such optimization is not * necessary on some arches, for example x86_64, arm64 etc, whose JIT back-ends * hence hasn't used verifier's analysis result. But, we really want to have a * way to be able to verify the correctness of the described optimization on * x86_64 on which testsuites are frequently exercised. * * So, this flag is introduced. Once it is set, verifier will randomize high * 32-bit for those instructions who has been identified as safe to ignore them. * Then, if verifier is not doing correct analysis, such randomization will * regress tests to expose bugs. */ #define BPF_F_TEST_RND_HI32 (1U << 2) /* The verifier internal test flag. Behavior is undefined */ #define BPF_F_TEST_STATE_FREQ (1U << 3) /* If BPF_F_SLEEPABLE is used in BPF_PROG_LOAD command, the verifier will * restrict map and helper usage for such programs. Sleepable BPF programs can * only be attached to hooks where kernel execution context allows sleeping. * Such programs are allowed to use helpers that may sleep like * bpf_copy_from_user(). */ #define BPF_F_SLEEPABLE (1U << 4) /* If BPF_F_XDP_HAS_FRAGS is used in BPF_PROG_LOAD command, the loaded program * fully support xdp frags. */ #define BPF_F_XDP_HAS_FRAGS (1U << 5) /* If BPF_F_XDP_DEV_BOUND_ONLY is used in BPF_PROG_LOAD command, the loaded * program becomes device-bound but can access XDP metadata. */ #define BPF_F_XDP_DEV_BOUND_ONLY (1U << 6) /* link_create.kprobe_multi.flags used in LINK_CREATE command for * BPF_TRACE_KPROBE_MULTI attach type to create return probe. */ #define BPF_F_KPROBE_MULTI_RETURN (1U << 0) /* When BPF ldimm64's insn[0].src_reg != 0 then this can have * the following extensions: * * insn[0].src_reg: BPF_PSEUDO_MAP_[FD|IDX] * insn[0].imm: map fd or fd_idx * insn[1].imm: 0 * insn[0].off: 0 * insn[1].off: 0 * ldimm64 rewrite: address of map * verifier type: CONST_PTR_TO_MAP */ #define BPF_PSEUDO_MAP_FD 1 #define BPF_PSEUDO_MAP_IDX 5 /* insn[0].src_reg: BPF_PSEUDO_MAP_[IDX_]VALUE * insn[0].imm: map fd or fd_idx * insn[1].imm: offset into value * insn[0].off: 0 * insn[1].off: 0 * ldimm64 rewrite: address of map[0]+offset * verifier type: PTR_TO_MAP_VALUE */ #define BPF_PSEUDO_MAP_VALUE 2 #define BPF_PSEUDO_MAP_IDX_VALUE 6 /* insn[0].src_reg: BPF_PSEUDO_BTF_ID * insn[0].imm: kernel btd id of VAR * insn[1].imm: 0 * insn[0].off: 0 * insn[1].off: 0 * ldimm64 rewrite: address of the kernel variable * verifier type: PTR_TO_BTF_ID or PTR_TO_MEM, depending on whether the var * is struct/union. */ #define BPF_PSEUDO_BTF_ID 3 /* insn[0].src_reg: BPF_PSEUDO_FUNC * insn[0].imm: insn offset to the func * insn[1].imm: 0 * insn[0].off: 0 * insn[1].off: 0 * ldimm64 rewrite: address of the function * verifier type: PTR_TO_FUNC. */ #define BPF_PSEUDO_FUNC 4 /* when bpf_call->src_reg == BPF_PSEUDO_CALL, bpf_call->imm == pc-relative * offset to another bpf function */ #define BPF_PSEUDO_CALL 1 /* when bpf_call->src_reg == BPF_PSEUDO_KFUNC_CALL, * bpf_call->imm == btf_id of a BTF_KIND_FUNC in the running kernel */ #define BPF_PSEUDO_KFUNC_CALL 2 /* flags for BPF_MAP_UPDATE_ELEM command */ enum { BPF_ANY = 0, /* create new element or update existing */ BPF_NOEXIST = 1, /* create new element if it didn't exist */ BPF_EXIST = 2, /* update existing element */ BPF_F_LOCK = 4, /* spin_lock-ed map_lookup/map_update */ }; /* flags for BPF_MAP_CREATE command */ enum { BPF_F_NO_PREALLOC = (1U << 0), /* Instead of having one common LRU list in the * BPF_MAP_TYPE_LRU_[PERCPU_]HASH map, use a percpu LRU list * which can scale and perform better. * Note, the LRU nodes (including free nodes) cannot be moved * across different LRU lists. */ BPF_F_NO_COMMON_LRU = (1U << 1), /* Specify numa node during map creation */ BPF_F_NUMA_NODE = (1U << 2), /* Flags for accessing BPF object from syscall side. */ BPF_F_RDONLY = (1U << 3), BPF_F_WRONLY = (1U << 4), /* Flag for stack_map, store build_id+offset instead of pointer */ BPF_F_STACK_BUILD_ID = (1U << 5), /* Zero-initialize hash function seed. This should only be used for testing. */ BPF_F_ZERO_SEED = (1U << 6), /* Flags for accessing BPF object from program side. */ BPF_F_RDONLY_PROG = (1U << 7), BPF_F_WRONLY_PROG = (1U << 8), /* Clone map from listener for newly accepted socket */ BPF_F_CLONE = (1U << 9), /* Enable memory-mapping BPF map */ BPF_F_MMAPABLE = (1U << 10), /* Share perf_event among processes */ BPF_F_PRESERVE_ELEMS = (1U << 11), /* Create a map that is suitable to be an inner map with dynamic max entries */ BPF_F_INNER_MAP = (1U << 12), /* Create a map that will be registered/unregesitered by the backed bpf_link */ BPF_F_LINK = (1U << 13), }; /* Flags for BPF_PROG_QUERY. */ /* Query effective (directly attached + inherited from ancestor cgroups) * programs that will be executed for events within a cgroup. * attach_flags with this flag are always returned 0. */ #define BPF_F_QUERY_EFFECTIVE (1U << 0) /* Flags for BPF_PROG_TEST_RUN */ /* If set, run the test on the cpu specified by bpf_attr.test.cpu */ #define BPF_F_TEST_RUN_ON_CPU (1U << 0) /* If set, XDP frames will be transmitted after processing */ #define BPF_F_TEST_XDP_LIVE_FRAMES (1U << 1) /* type for BPF_ENABLE_STATS */ enum bpf_stats_type { /* enabled run_time_ns and run_cnt */ BPF_STATS_RUN_TIME = 0, }; enum bpf_stack_build_id_status { /* user space need an empty entry to identify end of a trace */ BPF_STACK_BUILD_ID_EMPTY = 0, /* with valid build_id and offset */ BPF_STACK_BUILD_ID_VALID = 1, /* couldn't get build_id, fallback to ip */ BPF_STACK_BUILD_ID_IP = 2, }; #define BPF_BUILD_ID_SIZE 20 struct bpf_stack_build_id { __s32 status; unsigned char build_id[BPF_BUILD_ID_SIZE]; union { __u64 offset; __u64 ip; }; }; #define BPF_OBJ_NAME_LEN 16U union bpf_attr { struct { /* anonymous struct used by BPF_MAP_CREATE command */ __u32 map_type; /* one of enum bpf_map_type */ __u32 key_size; /* size of key in bytes */ __u32 value_size; /* size of value in bytes */ __u32 max_entries; /* max number of entries in a map */ __u32 map_flags; /* BPF_MAP_CREATE related * flags defined above. */ __u32 inner_map_fd; /* fd pointing to the inner map */ __u32 numa_node; /* numa node (effective only if * BPF_F_NUMA_NODE is set). */ char map_name[BPF_OBJ_NAME_LEN]; __u32 map_ifindex; /* ifindex of netdev to create on */ __u32 btf_fd; /* fd pointing to a BTF type data */ __u32 btf_key_type_id; /* BTF type_id of the key */ __u32 btf_value_type_id; /* BTF type_id of the value */ __u32 btf_vmlinux_value_type_id;/* BTF type_id of a kernel- * struct stored as the * map value */ /* Any per-map-type extra fields * * BPF_MAP_TYPE_BLOOM_FILTER - the lowest 4 bits indicate the * number of hash functions (if 0, the bloom filter will default * to using 5 hash functions). */ __u64 map_extra; }; struct { /* anonymous struct used by BPF_MAP_*_ELEM commands */ __u32 map_fd; __aligned_u64 key; union { __aligned_u64 value; __aligned_u64 next_key; }; __u64 flags; }; struct { /* struct used by BPF_MAP_*_BATCH commands */ __aligned_u64 in_batch; /* start batch, * NULL to start from beginning */ __aligned_u64 out_batch; /* output: next start batch */ __aligned_u64 keys; __aligned_u64 values; __u32 count; /* input/output: * input: # of key/value * elements * output: # of filled elements */ __u32 map_fd; __u64 elem_flags; __u64 flags; } batch; struct { /* anonymous struct used by BPF_PROG_LOAD command */ __u32 prog_type; /* one of enum bpf_prog_type */ __u32 insn_cnt; __aligned_u64 insns; __aligned_u64 license; __u32 log_level; /* verbosity level of verifier */ __u32 log_size; /* size of user buffer */ __aligned_u64 log_buf; /* user supplied buffer */ __u32 kern_version; /* not used */ __u32 prog_flags; char prog_name[BPF_OBJ_NAME_LEN]; __u32 prog_ifindex; /* ifindex of netdev to prep for */ /* For some prog types expected attach type must be known at * load time to verify attach type specific parts of prog * (context accesses, allowed helpers, etc). */ __u32 expected_attach_type; __u32 prog_btf_fd; /* fd pointing to BTF type data */ __u32 func_info_rec_size; /* userspace bpf_func_info size */ __aligned_u64 func_info; /* func info */ __u32 func_info_cnt; /* number of bpf_func_info records */ __u32 line_info_rec_size; /* userspace bpf_line_info size */ __aligned_u64 line_info; /* line info */ __u32 line_info_cnt; /* number of bpf_line_info records */ __u32 attach_btf_id; /* in-kernel BTF type id to attach to */ union { /* valid prog_fd to attach to bpf prog */ __u32 attach_prog_fd; /* or valid module BTF object fd or 0 to attach to vmlinux */ __u32 attach_btf_obj_fd; }; __u32 core_relo_cnt; /* number of bpf_core_relo */ __aligned_u64 fd_array; /* array of FDs */ __aligned_u64 core_relos; __u32 core_relo_rec_size; /* sizeof(struct bpf_core_relo) */ /* output: actual total log contents size (including termintaing zero). * It could be both larger than original log_size (if log was * truncated), or smaller (if log buffer wasn't filled completely). */ __u32 log_true_size; }; struct { /* anonymous struct used by BPF_OBJ_* commands */ __aligned_u64 pathname; __u32 bpf_fd; __u32 file_flags; }; struct { /* anonymous struct used by BPF_PROG_ATTACH/DETACH commands */ __u32 target_fd; /* container object to attach to */ __u32 attach_bpf_fd; /* eBPF program to attach */ __u32 attach_type; __u32 attach_flags; __u32 replace_bpf_fd; /* previously attached eBPF * program to replace if * BPF_F_REPLACE is used */ }; struct { /* anonymous struct used by BPF_PROG_TEST_RUN command */ __u32 prog_fd; __u32 retval; __u32 data_size_in; /* input: len of data_in */ __u32 data_size_out; /* input/output: len of data_out * returns ENOSPC if data_out * is too small. */ __aligned_u64 data_in; __aligned_u64 data_out; __u32 repeat; __u32 duration; __u32 ctx_size_in; /* input: len of ctx_in */ __u32 ctx_size_out; /* input/output: len of ctx_out * returns ENOSPC if ctx_out * is too small. */ __aligned_u64 ctx_in; __aligned_u64 ctx_out; __u32 flags; __u32 cpu; __u32 batch_size; } test; struct { /* anonymous struct used by BPF_*_GET_*_ID */ union { __u32 start_id; __u32 prog_id; __u32 map_id; __u32 btf_id; __u32 link_id; }; __u32 next_id; __u32 open_flags; }; struct { /* anonymous struct used by BPF_OBJ_GET_INFO_BY_FD */ __u32 bpf_fd; __u32 info_len; __aligned_u64 info; } info; struct { /* anonymous struct used by BPF_PROG_QUERY command */ __u32 target_fd; /* container object to query */ __u32 attach_type; __u32 query_flags; __u32 attach_flags; __aligned_u64 prog_ids; __u32 prog_cnt; /* output: per-program attach_flags. * not allowed to be set during effective query. */ __aligned_u64 prog_attach_flags; } query; struct { /* anonymous struct used by BPF_RAW_TRACEPOINT_OPEN command */ __u64 name; __u32 prog_fd; } raw_tracepoint; struct { /* anonymous struct for BPF_BTF_LOAD */ __aligned_u64 btf; __aligned_u64 btf_log_buf; __u32 btf_size; __u32 btf_log_size; __u32 btf_log_level; /* output: actual total log contents size (including termintaing zero). * It could be both larger than original log_size (if log was * truncated), or smaller (if log buffer wasn't filled completely). */ __u32 btf_log_true_size; }; struct { __u32 pid; /* input: pid */ __u32 fd; /* input: fd */ __u32 flags; /* input: flags */ __u32 buf_len; /* input/output: buf len */ __aligned_u64 buf; /* input/output: * tp_name for tracepoint * symbol for kprobe * filename for uprobe */ __u32 prog_id; /* output: prod_id */ __u32 fd_type; /* output: BPF_FD_TYPE_* */ __u64 probe_offset; /* output: probe_offset */ __u64 probe_addr; /* output: probe_addr */ } task_fd_query; struct { /* struct used by BPF_LINK_CREATE command */ union { __u32 prog_fd; /* eBPF program to attach */ __u32 map_fd; /* struct_ops to attach */ }; union { __u32 target_fd; /* object to attach to */ __u32 target_ifindex; /* target ifindex */ }; __u32 attach_type; /* attach type */ __u32 flags; /* extra flags */ union { __u32 target_btf_id; /* btf_id of target to attach to */ struct { __aligned_u64 iter_info; /* extra bpf_iter_link_info */ __u32 iter_info_len; /* iter_info length */ }; struct { /* black box user-provided value passed through * to BPF program at the execution time and * accessible through bpf_get_attach_cookie() BPF helper */ __u64 bpf_cookie; } perf_event; struct { __u32 flags; __u32 cnt; __aligned_u64 syms; __aligned_u64 addrs; __aligned_u64 cookies; } kprobe_multi; struct { /* this is overlaid with the target_btf_id above. */ __u32 target_btf_id; /* black box user-provided value passed through * to BPF program at the execution time and * accessible through bpf_get_attach_cookie() BPF helper */ __u64 cookie; } tracing; }; } link_create; struct { /* struct used by BPF_LINK_UPDATE command */ __u32 link_fd; /* link fd */ union { /* new program fd to update link with */ __u32 new_prog_fd; /* new struct_ops map fd to update link with */ __u32 new_map_fd; }; __u32 flags; /* extra flags */ union { /* expected link's program fd; is specified only if * BPF_F_REPLACE flag is set in flags. */ __u32 old_prog_fd; /* expected link's map fd; is specified only * if BPF_F_REPLACE flag is set. */ __u32 old_map_fd; }; } link_update; struct { __u32 link_fd; } link_detach; struct { /* struct used by BPF_ENABLE_STATS command */ __u32 type; } enable_stats; struct { /* struct used by BPF_ITER_CREATE command */ __u32 link_fd; __u32 flags; } iter_create; struct { /* struct used by BPF_PROG_BIND_MAP command */ __u32 prog_fd; __u32 map_fd; __u32 flags; /* extra flags */ } prog_bind_map; } __attribute__((aligned(8))); /* The description below is an attempt at providing documentation to eBPF * developers about the multiple available eBPF helper functions. It can be * parsed and used to produce a manual page. The workflow is the following, * and requires the rst2man utility: * * $ ./scripts/bpf_doc.py \ * --filename include/uapi/linux/bpf.h > /tmp/bpf-helpers.rst * $ rst2man /tmp/bpf-helpers.rst > /tmp/bpf-helpers.7 * $ man /tmp/bpf-helpers.7 * * Note that in order to produce this external documentation, some RST * formatting is used in the descriptions to get "bold" and "italics" in * manual pages. Also note that the few trailing white spaces are * intentional, removing them would break paragraphs for rst2man. * * Start of BPF helper function descriptions: * * void *bpf_map_lookup_elem(struct bpf_map *map, const void *key) * Description * Perform a lookup in *map* for an entry associated to *key*. * Return * Map value associated to *key*, or **NULL** if no entry was * found. * * long bpf_map_update_elem(struct bpf_map *map, const void *key, const void *value, u64 flags) * Description * Add or update the value of the entry associated to *key* in * *map* with *value*. *flags* is one of: * * **BPF_NOEXIST** * The entry for *key* must not exist in the map. * **BPF_EXIST** * The entry for *key* must already exist in the map. * **BPF_ANY** * No condition on the existence of the entry for *key*. * * Flag value **BPF_NOEXIST** cannot be used for maps of types * **BPF_MAP_TYPE_ARRAY** or **BPF_MAP_TYPE_PERCPU_ARRAY** (all * elements always exist), the helper would return an error. * Return * 0 on success, or a negative error in case of failure. * * long bpf_map_delete_elem(struct bpf_map *map, const void *key) * Description * Delete entry with *key* from *map*. * Return * 0 on success, or a negative error in case of failure. * * long bpf_probe_read(void *dst, u32 size, const void *unsafe_ptr) * Description * For tracing programs, safely attempt to read *size* bytes from * kernel space address *unsafe_ptr* and store the data in *dst*. * * Generally, use **bpf_probe_read_user**\ () or * **bpf_probe_read_kernel**\ () instead. * Return * 0 on success, or a negative error in case of failure. * * u64 bpf_ktime_get_ns(void) * Description * Return the time elapsed since system boot, in nanoseconds. * Does not include time the system was suspended. * See: **clock_gettime**\ (**CLOCK_MONOTONIC**) * Return * Current *ktime*. * * long bpf_trace_printk(const char *fmt, u32 fmt_size, ...) * Description * This helper is a "printk()-like" facility for debugging. It * prints a message defined by format *fmt* (of size *fmt_size*) * to file *\/sys/kernel/tracing/trace* from TraceFS, if * available. It can take up to three additional **u64** * arguments (as an eBPF helpers, the total number of arguments is * limited to five). * * Each time the helper is called, it appends a line to the trace. * Lines are discarded while *\/sys/kernel/tracing/trace* is * open, use *\/sys/kernel/tracing/trace_pipe* to avoid this. * The format of the trace is customizable, and the exact output * one will get depends on the options set in * *\/sys/kernel/tracing/trace_options* (see also the * *README* file under the same directory). However, it usually * defaults to something like: * * :: * * telnet-470 [001] .N.. 419421.045894: 0x00000001: * * In the above: * * * ``telnet`` is the name of the current task. * * ``470`` is the PID of the current task. * * ``001`` is the CPU number on which the task is * running. * * In ``.N..``, each character refers to a set of * options (whether irqs are enabled, scheduling * options, whether hard/softirqs are running, level of * preempt_disabled respectively). **N** means that * **TIF_NEED_RESCHED** and **PREEMPT_NEED_RESCHED** * are set. * * ``419421.045894`` is a timestamp. * * ``0x00000001`` is a fake value used by BPF for the * instruction pointer register. * * ```` is the message formatted with * *fmt*. * * The conversion specifiers supported by *fmt* are similar, but * more limited than for printk(). They are **%d**, **%i**, * **%u**, **%x**, **%ld**, **%li**, **%lu**, **%lx**, **%lld**, * **%lli**, **%llu**, **%llx**, **%p**, **%s**. No modifier (size * of field, padding with zeroes, etc.) is available, and the * helper will return **-EINVAL** (but print nothing) if it * encounters an unknown specifier. * * Also, note that **bpf_trace_printk**\ () is slow, and should * only be used for debugging purposes. For this reason, a notice * block (spanning several lines) is printed to kernel logs and * states that the helper should not be used "for production use" * the first time this helper is used (or more precisely, when * **trace_printk**\ () buffers are allocated). For passing values * to user space, perf events should be preferred. * Return * The number of bytes written to the buffer, or a negative error * in case of failure. * * u32 bpf_get_prandom_u32(void) * Description * Get a pseudo-random number. * * From a security point of view, this helper uses its own * pseudo-random internal state, and cannot be used to infer the * seed of other random functions in the kernel. However, it is * essential to note that the generator used by the helper is not * cryptographically secure. * Return * A random 32-bit unsigned value. * * u32 bpf_get_smp_processor_id(void) * Description * Get the SMP (symmetric multiprocessing) processor id. Note that * all programs run with migration disabled, which means that the * SMP processor id is stable during all the execution of the * program. * Return * The SMP id of the processor running the program. * * long bpf_skb_store_bytes(struct sk_buff *skb, u32 offset, const void *from, u32 len, u64 flags) * Description * Store *len* bytes from address *from* into the packet * associated to *skb*, at *offset*. *flags* are a combination of * **BPF_F_RECOMPUTE_CSUM** (automatically recompute the * checksum for the packet after storing the bytes) and * **BPF_F_INVALIDATE_HASH** (set *skb*\ **->hash**, *skb*\ * **->swhash** and *skb*\ **->l4hash** to 0). * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_l3_csum_replace(struct sk_buff *skb, u32 offset, u64 from, u64 to, u64 size) * Description * Recompute the layer 3 (e.g. IP) checksum for the packet * associated to *skb*. Computation is incremental, so the helper * must know the former value of the header field that was * modified (*from*), the new value of this field (*to*), and the * number of bytes (2 or 4) for this field, stored in *size*. * Alternatively, it is possible to store the difference between * the previous and the new values of the header field in *to*, by * setting *from* and *size* to 0. For both methods, *offset* * indicates the location of the IP checksum within the packet. * * This helper works in combination with **bpf_csum_diff**\ (), * which does not update the checksum in-place, but offers more * flexibility and can handle sizes larger than 2 or 4 for the * checksum to update. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_l4_csum_replace(struct sk_buff *skb, u32 offset, u64 from, u64 to, u64 flags) * Description * Recompute the layer 4 (e.g. TCP, UDP or ICMP) checksum for the * packet associated to *skb*. Computation is incremental, so the * helper must know the former value of the header field that was * modified (*from*), the new value of this field (*to*), and the * number of bytes (2 or 4) for this field, stored on the lowest * four bits of *flags*. Alternatively, it is possible to store * the difference between the previous and the new values of the * header field in *to*, by setting *from* and the four lowest * bits of *flags* to 0. For both methods, *offset* indicates the * location of the IP checksum within the packet. In addition to * the size of the field, *flags* can be added (bitwise OR) actual * flags. With **BPF_F_MARK_MANGLED_0**, a null checksum is left * untouched (unless **BPF_F_MARK_ENFORCE** is added as well), and * for updates resulting in a null checksum the value is set to * **CSUM_MANGLED_0** instead. Flag **BPF_F_PSEUDO_HDR** indicates * the checksum is to be computed against a pseudo-header. * * This helper works in combination with **bpf_csum_diff**\ (), * which does not update the checksum in-place, but offers more * flexibility and can handle sizes larger than 2 or 4 for the * checksum to update. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_tail_call(void *ctx, struct bpf_map *prog_array_map, u32 index) * Description * This special helper is used to trigger a "tail call", or in * other words, to jump into another eBPF program. The same stack * frame is used (but values on stack and in registers for the * caller are not accessible to the callee). This mechanism allows * for program chaining, either for raising the maximum number of * available eBPF instructions, or to execute given programs in * conditional blocks. For security reasons, there is an upper * limit to the number of successive tail calls that can be * performed. * * Upon call of this helper, the program attempts to jump into a * program referenced at index *index* in *prog_array_map*, a * special map of type **BPF_MAP_TYPE_PROG_ARRAY**, and passes * *ctx*, a pointer to the context. * * If the call succeeds, the kernel immediately runs the first * instruction of the new program. This is not a function call, * and it never returns to the previous program. If the call * fails, then the helper has no effect, and the caller continues * to run its subsequent instructions. A call can fail if the * destination program for the jump does not exist (i.e. *index* * is superior to the number of entries in *prog_array_map*), or * if the maximum number of tail calls has been reached for this * chain of programs. This limit is defined in the kernel by the * macro **MAX_TAIL_CALL_CNT** (not accessible to user space), * which is currently set to 33. * Return * 0 on success, or a negative error in case of failure. * * long bpf_clone_redirect(struct sk_buff *skb, u32 ifindex, u64 flags) * Description * Clone and redirect the packet associated to *skb* to another * net device of index *ifindex*. Both ingress and egress * interfaces can be used for redirection. The **BPF_F_INGRESS** * value in *flags* is used to make the distinction (ingress path * is selected if the flag is present, egress path otherwise). * This is the only flag supported for now. * * In comparison with **bpf_redirect**\ () helper, * **bpf_clone_redirect**\ () has the associated cost of * duplicating the packet buffer, but this can be executed out of * the eBPF program. Conversely, **bpf_redirect**\ () is more * efficient, but it is handled through an action code where the * redirection happens only after the eBPF program has returned. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * u64 bpf_get_current_pid_tgid(void) * Description * Get the current pid and tgid. * Return * A 64-bit integer containing the current tgid and pid, and * created as such: * *current_task*\ **->tgid << 32 \|** * *current_task*\ **->pid**. * * u64 bpf_get_current_uid_gid(void) * Description * Get the current uid and gid. * Return * A 64-bit integer containing the current GID and UID, and * created as such: *current_gid* **<< 32 \|** *current_uid*. * * long bpf_get_current_comm(void *buf, u32 size_of_buf) * Description * Copy the **comm** attribute of the current task into *buf* of * *size_of_buf*. The **comm** attribute contains the name of * the executable (excluding the path) for the current task. The * *size_of_buf* must be strictly positive. On success, the * helper makes sure that the *buf* is NUL-terminated. On failure, * it is filled with zeroes. * Return * 0 on success, or a negative error in case of failure. * * u32 bpf_get_cgroup_classid(struct sk_buff *skb) * Description * Retrieve the classid for the current task, i.e. for the net_cls * cgroup to which *skb* belongs. * * This helper can be used on TC egress path, but not on ingress. * * The net_cls cgroup provides an interface to tag network packets * based on a user-provided identifier for all traffic coming from * the tasks belonging to the related cgroup. See also the related * kernel documentation, available from the Linux sources in file * *Documentation/admin-guide/cgroup-v1/net_cls.rst*. * * The Linux kernel has two versions for cgroups: there are * cgroups v1 and cgroups v2. Both are available to users, who can * use a mixture of them, but note that the net_cls cgroup is for * cgroup v1 only. This makes it incompatible with BPF programs * run on cgroups, which is a cgroup-v2-only feature (a socket can * only hold data for one version of cgroups at a time). * * This helper is only available is the kernel was compiled with * the **CONFIG_CGROUP_NET_CLASSID** configuration option set to * "**y**" or to "**m**". * Return * The classid, or 0 for the default unconfigured classid. * * long bpf_skb_vlan_push(struct sk_buff *skb, __be16 vlan_proto, u16 vlan_tci) * Description * Push a *vlan_tci* (VLAN tag control information) of protocol * *vlan_proto* to the packet associated to *skb*, then update * the checksum. Note that if *vlan_proto* is different from * **ETH_P_8021Q** and **ETH_P_8021AD**, it is considered to * be **ETH_P_8021Q**. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_vlan_pop(struct sk_buff *skb) * Description * Pop a VLAN header from the packet associated to *skb*. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_get_tunnel_key(struct sk_buff *skb, struct bpf_tunnel_key *key, u32 size, u64 flags) * Description * Get tunnel metadata. This helper takes a pointer *key* to an * empty **struct bpf_tunnel_key** of **size**, that will be * filled with tunnel metadata for the packet associated to *skb*. * The *flags* can be set to **BPF_F_TUNINFO_IPV6**, which * indicates that the tunnel is based on IPv6 protocol instead of * IPv4. * * The **struct bpf_tunnel_key** is an object that generalizes the * principal parameters used by various tunneling protocols into a * single struct. This way, it can be used to easily make a * decision based on the contents of the encapsulation header, * "summarized" in this struct. In particular, it holds the IP * address of the remote end (IPv4 or IPv6, depending on the case) * in *key*\ **->remote_ipv4** or *key*\ **->remote_ipv6**. Also, * this struct exposes the *key*\ **->tunnel_id**, which is * generally mapped to a VNI (Virtual Network Identifier), making * it programmable together with the **bpf_skb_set_tunnel_key**\ * () helper. * * Let's imagine that the following code is part of a program * attached to the TC ingress interface, on one end of a GRE * tunnel, and is supposed to filter out all messages coming from * remote ends with IPv4 address other than 10.0.0.1: * * :: * * int ret; * struct bpf_tunnel_key key = {}; * * ret = bpf_skb_get_tunnel_key(skb, &key, sizeof(key), 0); * if (ret < 0) * return TC_ACT_SHOT; // drop packet * * if (key.remote_ipv4 != 0x0a000001) * return TC_ACT_SHOT; // drop packet * * return TC_ACT_OK; // accept packet * * This interface can also be used with all encapsulation devices * that can operate in "collect metadata" mode: instead of having * one network device per specific configuration, the "collect * metadata" mode only requires a single device where the * configuration can be extracted from this helper. * * This can be used together with various tunnels such as VXLan, * Geneve, GRE or IP in IP (IPIP). * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_set_tunnel_key(struct sk_buff *skb, struct bpf_tunnel_key *key, u32 size, u64 flags) * Description * Populate tunnel metadata for packet associated to *skb.* The * tunnel metadata is set to the contents of *key*, of *size*. The * *flags* can be set to a combination of the following values: * * **BPF_F_TUNINFO_IPV6** * Indicate that the tunnel is based on IPv6 protocol * instead of IPv4. * **BPF_F_ZERO_CSUM_TX** * For IPv4 packets, add a flag to tunnel metadata * indicating that checksum computation should be skipped * and checksum set to zeroes. * **BPF_F_DONT_FRAGMENT** * Add a flag to tunnel metadata indicating that the * packet should not be fragmented. * **BPF_F_SEQ_NUMBER** * Add a flag to tunnel metadata indicating that a * sequence number should be added to tunnel header before * sending the packet. This flag was added for GRE * encapsulation, but might be used with other protocols * as well in the future. * **BPF_F_NO_TUNNEL_KEY** * Add a flag to tunnel metadata indicating that no tunnel * key should be set in the resulting tunnel header. * * Here is a typical usage on the transmit path: * * :: * * struct bpf_tunnel_key key; * populate key ... * bpf_skb_set_tunnel_key(skb, &key, sizeof(key), 0); * bpf_clone_redirect(skb, vxlan_dev_ifindex, 0); * * See also the description of the **bpf_skb_get_tunnel_key**\ () * helper for additional information. * Return * 0 on success, or a negative error in case of failure. * * u64 bpf_perf_event_read(struct bpf_map *map, u64 flags) * Description * Read the value of a perf event counter. This helper relies on a * *map* of type **BPF_MAP_TYPE_PERF_EVENT_ARRAY**. The nature of * the perf event counter is selected when *map* is updated with * perf event file descriptors. The *map* is an array whose size * is the number of available CPUs, and each cell contains a value * relative to one CPU. The value to retrieve is indicated by * *flags*, that contains the index of the CPU to look up, masked * with **BPF_F_INDEX_MASK**. Alternatively, *flags* can be set to * **BPF_F_CURRENT_CPU** to indicate that the value for the * current CPU should be retrieved. * * Note that before Linux 4.13, only hardware perf event can be * retrieved. * * Also, be aware that the newer helper * **bpf_perf_event_read_value**\ () is recommended over * **bpf_perf_event_read**\ () in general. The latter has some ABI * quirks where error and counter value are used as a return code * (which is wrong to do since ranges may overlap). This issue is * fixed with **bpf_perf_event_read_value**\ (), which at the same * time provides more features over the **bpf_perf_event_read**\ * () interface. Please refer to the description of * **bpf_perf_event_read_value**\ () for details. * Return * The value of the perf event counter read from the map, or a * negative error code in case of failure. * * long bpf_redirect(u32 ifindex, u64 flags) * Description * Redirect the packet to another net device of index *ifindex*. * This helper is somewhat similar to **bpf_clone_redirect**\ * (), except that the packet is not cloned, which provides * increased performance. * * Except for XDP, both ingress and egress interfaces can be used * for redirection. The **BPF_F_INGRESS** value in *flags* is used * to make the distinction (ingress path is selected if the flag * is present, egress path otherwise). Currently, XDP only * supports redirection to the egress interface, and accepts no * flag at all. * * The same effect can also be attained with the more generic * **bpf_redirect_map**\ (), which uses a BPF map to store the * redirect target instead of providing it directly to the helper. * Return * For XDP, the helper returns **XDP_REDIRECT** on success or * **XDP_ABORTED** on error. For other program types, the values * are **TC_ACT_REDIRECT** on success or **TC_ACT_SHOT** on * error. * * u32 bpf_get_route_realm(struct sk_buff *skb) * Description * Retrieve the realm or the route, that is to say the * **tclassid** field of the destination for the *skb*. The * identifier retrieved is a user-provided tag, similar to the * one used with the net_cls cgroup (see description for * **bpf_get_cgroup_classid**\ () helper), but here this tag is * held by a route (a destination entry), not by a task. * * Retrieving this identifier works with the clsact TC egress hook * (see also **tc-bpf(8)**), or alternatively on conventional * classful egress qdiscs, but not on TC ingress path. In case of * clsact TC egress hook, this has the advantage that, internally, * the destination entry has not been dropped yet in the transmit * path. Therefore, the destination entry does not need to be * artificially held via **netif_keep_dst**\ () for a classful * qdisc until the *skb* is freed. * * This helper is available only if the kernel was compiled with * **CONFIG_IP_ROUTE_CLASSID** configuration option. * Return * The realm of the route for the packet associated to *skb*, or 0 * if none was found. * * long bpf_perf_event_output(void *ctx, struct bpf_map *map, u64 flags, void *data, u64 size) * Description * Write raw *data* blob into a special BPF perf event held by * *map* of type **BPF_MAP_TYPE_PERF_EVENT_ARRAY**. This perf * event must have the following attributes: **PERF_SAMPLE_RAW** * as **sample_type**, **PERF_TYPE_SOFTWARE** as **type**, and * **PERF_COUNT_SW_BPF_OUTPUT** as **config**. * * The *flags* are used to indicate the index in *map* for which * the value must be put, masked with **BPF_F_INDEX_MASK**. * Alternatively, *flags* can be set to **BPF_F_CURRENT_CPU** * to indicate that the index of the current CPU core should be * used. * * The value to write, of *size*, is passed through eBPF stack and * pointed by *data*. * * The context of the program *ctx* needs also be passed to the * helper. * * On user space, a program willing to read the values needs to * call **perf_event_open**\ () on the perf event (either for * one or for all CPUs) and to store the file descriptor into the * *map*. This must be done before the eBPF program can send data * into it. An example is available in file * *samples/bpf/trace_output_user.c* in the Linux kernel source * tree (the eBPF program counterpart is in * *samples/bpf/trace_output_kern.c*). * * **bpf_perf_event_output**\ () achieves better performance * than **bpf_trace_printk**\ () for sharing data with user * space, and is much better suitable for streaming data from eBPF * programs. * * Note that this helper is not restricted to tracing use cases * and can be used with programs attached to TC or XDP as well, * where it allows for passing data to user space listeners. Data * can be: * * * Only custom structs, * * Only the packet payload, or * * A combination of both. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_load_bytes(const void *skb, u32 offset, void *to, u32 len) * Description * This helper was provided as an easy way to load data from a * packet. It can be used to load *len* bytes from *offset* from * the packet associated to *skb*, into the buffer pointed by * *to*. * * Since Linux 4.7, usage of this helper has mostly been replaced * by "direct packet access", enabling packet data to be * manipulated with *skb*\ **->data** and *skb*\ **->data_end** * pointing respectively to the first byte of packet data and to * the byte after the last byte of packet data. However, it * remains useful if one wishes to read large quantities of data * at once from a packet into the eBPF stack. * Return * 0 on success, or a negative error in case of failure. * * long bpf_get_stackid(void *ctx, struct bpf_map *map, u64 flags) * Description * Walk a user or a kernel stack and return its id. To achieve * this, the helper needs *ctx*, which is a pointer to the context * on which the tracing program is executed, and a pointer to a * *map* of type **BPF_MAP_TYPE_STACK_TRACE**. * * The last argument, *flags*, holds the number of stack frames to * skip (from 0 to 255), masked with * **BPF_F_SKIP_FIELD_MASK**. The next bits can be used to set * a combination of the following flags: * * **BPF_F_USER_STACK** * Collect a user space stack instead of a kernel stack. * **BPF_F_FAST_STACK_CMP** * Compare stacks by hash only. * **BPF_F_REUSE_STACKID** * If two different stacks hash into the same *stackid*, * discard the old one. * * The stack id retrieved is a 32 bit long integer handle which * can be further combined with other data (including other stack * ids) and used as a key into maps. This can be useful for * generating a variety of graphs (such as flame graphs or off-cpu * graphs). * * For walking a stack, this helper is an improvement over * **bpf_probe_read**\ (), which can be used with unrolled loops * but is not efficient and consumes a lot of eBPF instructions. * Instead, **bpf_get_stackid**\ () can collect up to * **PERF_MAX_STACK_DEPTH** both kernel and user frames. Note that * this limit can be controlled with the **sysctl** program, and * that it should be manually increased in order to profile long * user stacks (such as stacks for Java programs). To do so, use: * * :: * * # sysctl kernel.perf_event_max_stack= * Return * The positive or null stack id on success, or a negative error * in case of failure. * * s64 bpf_csum_diff(__be32 *from, u32 from_size, __be32 *to, u32 to_size, __wsum seed) * Description * Compute a checksum difference, from the raw buffer pointed by * *from*, of length *from_size* (that must be a multiple of 4), * towards the raw buffer pointed by *to*, of size *to_size* * (same remark). An optional *seed* can be added to the value * (this can be cascaded, the seed may come from a previous call * to the helper). * * This is flexible enough to be used in several ways: * * * With *from_size* == 0, *to_size* > 0 and *seed* set to * checksum, it can be used when pushing new data. * * With *from_size* > 0, *to_size* == 0 and *seed* set to * checksum, it can be used when removing data from a packet. * * With *from_size* > 0, *to_size* > 0 and *seed* set to 0, it * can be used to compute a diff. Note that *from_size* and * *to_size* do not need to be equal. * * This helper can be used in combination with * **bpf_l3_csum_replace**\ () and **bpf_l4_csum_replace**\ (), to * which one can feed in the difference computed with * **bpf_csum_diff**\ (). * Return * The checksum result, or a negative error code in case of * failure. * * long bpf_skb_get_tunnel_opt(struct sk_buff *skb, void *opt, u32 size) * Description * Retrieve tunnel options metadata for the packet associated to * *skb*, and store the raw tunnel option data to the buffer *opt* * of *size*. * * This helper can be used with encapsulation devices that can * operate in "collect metadata" mode (please refer to the related * note in the description of **bpf_skb_get_tunnel_key**\ () for * more details). A particular example where this can be used is * in combination with the Geneve encapsulation protocol, where it * allows for pushing (with **bpf_skb_get_tunnel_opt**\ () helper) * and retrieving arbitrary TLVs (Type-Length-Value headers) from * the eBPF program. This allows for full customization of these * headers. * Return * The size of the option data retrieved. * * long bpf_skb_set_tunnel_opt(struct sk_buff *skb, void *opt, u32 size) * Description * Set tunnel options metadata for the packet associated to *skb* * to the option data contained in the raw buffer *opt* of *size*. * * See also the description of the **bpf_skb_get_tunnel_opt**\ () * helper for additional information. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_change_proto(struct sk_buff *skb, __be16 proto, u64 flags) * Description * Change the protocol of the *skb* to *proto*. Currently * supported are transition from IPv4 to IPv6, and from IPv6 to * IPv4. The helper takes care of the groundwork for the * transition, including resizing the socket buffer. The eBPF * program is expected to fill the new headers, if any, via * **skb_store_bytes**\ () and to recompute the checksums with * **bpf_l3_csum_replace**\ () and **bpf_l4_csum_replace**\ * (). The main case for this helper is to perform NAT64 * operations out of an eBPF program. * * Internally, the GSO type is marked as dodgy so that headers are * checked and segments are recalculated by the GSO/GRO engine. * The size for GSO target is adapted as well. * * All values for *flags* are reserved for future usage, and must * be left at zero. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_change_type(struct sk_buff *skb, u32 type) * Description * Change the packet type for the packet associated to *skb*. This * comes down to setting *skb*\ **->pkt_type** to *type*, except * the eBPF program does not have a write access to *skb*\ * **->pkt_type** beside this helper. Using a helper here allows * for graceful handling of errors. * * The major use case is to change incoming *skb*s to * **PACKET_HOST** in a programmatic way instead of having to * recirculate via **redirect**\ (..., **BPF_F_INGRESS**), for * example. * * Note that *type* only allows certain values. At this time, they * are: * * **PACKET_HOST** * Packet is for us. * **PACKET_BROADCAST** * Send packet to all. * **PACKET_MULTICAST** * Send packet to group. * **PACKET_OTHERHOST** * Send packet to someone else. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_under_cgroup(struct sk_buff *skb, struct bpf_map *map, u32 index) * Description * Check whether *skb* is a descendant of the cgroup2 held by * *map* of type **BPF_MAP_TYPE_CGROUP_ARRAY**, at *index*. * Return * The return value depends on the result of the test, and can be: * * * 0, if the *skb* failed the cgroup2 descendant test. * * 1, if the *skb* succeeded the cgroup2 descendant test. * * A negative error code, if an error occurred. * * u32 bpf_get_hash_recalc(struct sk_buff *skb) * Description * Retrieve the hash of the packet, *skb*\ **->hash**. If it is * not set, in particular if the hash was cleared due to mangling, * recompute this hash. Later accesses to the hash can be done * directly with *skb*\ **->hash**. * * Calling **bpf_set_hash_invalid**\ (), changing a packet * prototype with **bpf_skb_change_proto**\ (), or calling * **bpf_skb_store_bytes**\ () with the * **BPF_F_INVALIDATE_HASH** are actions susceptible to clear * the hash and to trigger a new computation for the next call to * **bpf_get_hash_recalc**\ (). * Return * The 32-bit hash. * * u64 bpf_get_current_task(void) * Description * Get the current task. * Return * A pointer to the current task struct. * * long bpf_probe_write_user(void *dst, const void *src, u32 len) * Description * Attempt in a safe way to write *len* bytes from the buffer * *src* to *dst* in memory. It only works for threads that are in * user context, and *dst* must be a valid user space address. * * This helper should not be used to implement any kind of * security mechanism because of TOC-TOU attacks, but rather to * debug, divert, and manipulate execution of semi-cooperative * processes. * * Keep in mind that this feature is meant for experiments, and it * has a risk of crashing the system and running programs. * Therefore, when an eBPF program using this helper is attached, * a warning including PID and process name is printed to kernel * logs. * Return * 0 on success, or a negative error in case of failure. * * long bpf_current_task_under_cgroup(struct bpf_map *map, u32 index) * Description * Check whether the probe is being run is the context of a given * subset of the cgroup2 hierarchy. The cgroup2 to test is held by * *map* of type **BPF_MAP_TYPE_CGROUP_ARRAY**, at *index*. * Return * The return value depends on the result of the test, and can be: * * * 1, if current task belongs to the cgroup2. * * 0, if current task does not belong to the cgroup2. * * A negative error code, if an error occurred. * * long bpf_skb_change_tail(struct sk_buff *skb, u32 len, u64 flags) * Description * Resize (trim or grow) the packet associated to *skb* to the * new *len*. The *flags* are reserved for future usage, and must * be left at zero. * * The basic idea is that the helper performs the needed work to * change the size of the packet, then the eBPF program rewrites * the rest via helpers like **bpf_skb_store_bytes**\ (), * **bpf_l3_csum_replace**\ (), **bpf_l3_csum_replace**\ () * and others. This helper is a slow path utility intended for * replies with control messages. And because it is targeted for * slow path, the helper itself can afford to be slow: it * implicitly linearizes, unclones and drops offloads from the * *skb*. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_pull_data(struct sk_buff *skb, u32 len) * Description * Pull in non-linear data in case the *skb* is non-linear and not * all of *len* are part of the linear section. Make *len* bytes * from *skb* readable and writable. If a zero value is passed for * *len*, then all bytes in the linear part of *skb* will be made * readable and writable. * * This helper is only needed for reading and writing with direct * packet access. * * For direct packet access, testing that offsets to access * are within packet boundaries (test on *skb*\ **->data_end**) is * susceptible to fail if offsets are invalid, or if the requested * data is in non-linear parts of the *skb*. On failure the * program can just bail out, or in the case of a non-linear * buffer, use a helper to make the data available. The * **bpf_skb_load_bytes**\ () helper is a first solution to access * the data. Another one consists in using **bpf_skb_pull_data** * to pull in once the non-linear parts, then retesting and * eventually access the data. * * At the same time, this also makes sure the *skb* is uncloned, * which is a necessary condition for direct write. As this needs * to be an invariant for the write part only, the verifier * detects writes and adds a prologue that is calling * **bpf_skb_pull_data()** to effectively unclone the *skb* from * the very beginning in case it is indeed cloned. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * s64 bpf_csum_update(struct sk_buff *skb, __wsum csum) * Description * Add the checksum *csum* into *skb*\ **->csum** in case the * driver has supplied a checksum for the entire packet into that * field. Return an error otherwise. This helper is intended to be * used in combination with **bpf_csum_diff**\ (), in particular * when the checksum needs to be updated after data has been * written into the packet through direct packet access. * Return * The checksum on success, or a negative error code in case of * failure. * * void bpf_set_hash_invalid(struct sk_buff *skb) * Description * Invalidate the current *skb*\ **->hash**. It can be used after * mangling on headers through direct packet access, in order to * indicate that the hash is outdated and to trigger a * recalculation the next time the kernel tries to access this * hash or when the **bpf_get_hash_recalc**\ () helper is called. * Return * void. * * long bpf_get_numa_node_id(void) * Description * Return the id of the current NUMA node. The primary use case * for this helper is the selection of sockets for the local NUMA * node, when the program is attached to sockets using the * **SO_ATTACH_REUSEPORT_EBPF** option (see also **socket(7)**), * but the helper is also available to other eBPF program types, * similarly to **bpf_get_smp_processor_id**\ (). * Return * The id of current NUMA node. * * long bpf_skb_change_head(struct sk_buff *skb, u32 len, u64 flags) * Description * Grows headroom of packet associated to *skb* and adjusts the * offset of the MAC header accordingly, adding *len* bytes of * space. It automatically extends and reallocates memory as * required. * * This helper can be used on a layer 3 *skb* to push a MAC header * for redirection into a layer 2 device. * * All values for *flags* are reserved for future usage, and must * be left at zero. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_xdp_adjust_head(struct xdp_buff *xdp_md, int delta) * Description * Adjust (move) *xdp_md*\ **->data** by *delta* bytes. Note that * it is possible to use a negative value for *delta*. This helper * can be used to prepare the packet for pushing or popping * headers. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_probe_read_str(void *dst, u32 size, const void *unsafe_ptr) * Description * Copy a NUL terminated string from an unsafe kernel address * *unsafe_ptr* to *dst*. See **bpf_probe_read_kernel_str**\ () for * more details. * * Generally, use **bpf_probe_read_user_str**\ () or * **bpf_probe_read_kernel_str**\ () instead. * Return * On success, the strictly positive length of the string, * including the trailing NUL character. On error, a negative * value. * * u64 bpf_get_socket_cookie(struct sk_buff *skb) * Description * If the **struct sk_buff** pointed by *skb* has a known socket, * retrieve the cookie (generated by the kernel) of this socket. * If no cookie has been set yet, generate a new cookie. Once * generated, the socket cookie remains stable for the life of the * socket. This helper can be useful for monitoring per socket * networking traffic statistics as it provides a global socket * identifier that can be assumed unique. * Return * A 8-byte long unique number on success, or 0 if the socket * field is missing inside *skb*. * * u64 bpf_get_socket_cookie(struct bpf_sock_addr *ctx) * Description * Equivalent to bpf_get_socket_cookie() helper that accepts * *skb*, but gets socket from **struct bpf_sock_addr** context. * Return * A 8-byte long unique number. * * u64 bpf_get_socket_cookie(struct bpf_sock_ops *ctx) * Description * Equivalent to **bpf_get_socket_cookie**\ () helper that accepts * *skb*, but gets socket from **struct bpf_sock_ops** context. * Return * A 8-byte long unique number. * * u64 bpf_get_socket_cookie(struct sock *sk) * Description * Equivalent to **bpf_get_socket_cookie**\ () helper that accepts * *sk*, but gets socket from a BTF **struct sock**. This helper * also works for sleepable programs. * Return * A 8-byte long unique number or 0 if *sk* is NULL. * * u32 bpf_get_socket_uid(struct sk_buff *skb) * Description * Get the owner UID of the socked associated to *skb*. * Return * The owner UID of the socket associated to *skb*. If the socket * is **NULL**, or if it is not a full socket (i.e. if it is a * time-wait or a request socket instead), **overflowuid** value * is returned (note that **overflowuid** might also be the actual * UID value for the socket). * * long bpf_set_hash(struct sk_buff *skb, u32 hash) * Description * Set the full hash for *skb* (set the field *skb*\ **->hash**) * to value *hash*. * Return * 0 * * long bpf_setsockopt(void *bpf_socket, int level, int optname, void *optval, int optlen) * Description * Emulate a call to **setsockopt()** on the socket associated to * *bpf_socket*, which must be a full socket. The *level* at * which the option resides and the name *optname* of the option * must be specified, see **setsockopt(2)** for more information. * The option value of length *optlen* is pointed by *optval*. * * *bpf_socket* should be one of the following: * * * **struct bpf_sock_ops** for **BPF_PROG_TYPE_SOCK_OPS**. * * **struct bpf_sock_addr** for **BPF_CGROUP_INET4_CONNECT** * and **BPF_CGROUP_INET6_CONNECT**. * * This helper actually implements a subset of **setsockopt()**. * It supports the following *level*\ s: * * * **SOL_SOCKET**, which supports the following *optname*\ s: * **SO_RCVBUF**, **SO_SNDBUF**, **SO_MAX_PACING_RATE**, * **SO_PRIORITY**, **SO_RCVLOWAT**, **SO_MARK**, * **SO_BINDTODEVICE**, **SO_KEEPALIVE**, **SO_REUSEADDR**, * **SO_REUSEPORT**, **SO_BINDTOIFINDEX**, **SO_TXREHASH**. * * **IPPROTO_TCP**, which supports the following *optname*\ s: * **TCP_CONGESTION**, **TCP_BPF_IW**, * **TCP_BPF_SNDCWND_CLAMP**, **TCP_SAVE_SYN**, * **TCP_KEEPIDLE**, **TCP_KEEPINTVL**, **TCP_KEEPCNT**, * **TCP_SYNCNT**, **TCP_USER_TIMEOUT**, **TCP_NOTSENT_LOWAT**, * **TCP_NODELAY**, **TCP_MAXSEG**, **TCP_WINDOW_CLAMP**, * **TCP_THIN_LINEAR_TIMEOUTS**, **TCP_BPF_DELACK_MAX**, * **TCP_BPF_RTO_MIN**. * * **IPPROTO_IP**, which supports *optname* **IP_TOS**. * * **IPPROTO_IPV6**, which supports the following *optname*\ s: * **IPV6_TCLASS**, **IPV6_AUTOFLOWLABEL**. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_adjust_room(struct sk_buff *skb, s32 len_diff, u32 mode, u64 flags) * Description * Grow or shrink the room for data in the packet associated to * *skb* by *len_diff*, and according to the selected *mode*. * * By default, the helper will reset any offloaded checksum * indicator of the skb to CHECKSUM_NONE. This can be avoided * by the following flag: * * * **BPF_F_ADJ_ROOM_NO_CSUM_RESET**: Do not reset offloaded * checksum data of the skb to CHECKSUM_NONE. * * There are two supported modes at this time: * * * **BPF_ADJ_ROOM_MAC**: Adjust room at the mac layer * (room space is added or removed between the layer 2 and * layer 3 headers). * * * **BPF_ADJ_ROOM_NET**: Adjust room at the network layer * (room space is added or removed between the layer 3 and * layer 4 headers). * * The following flags are supported at this time: * * * **BPF_F_ADJ_ROOM_FIXED_GSO**: Do not adjust gso_size. * Adjusting mss in this way is not allowed for datagrams. * * * **BPF_F_ADJ_ROOM_ENCAP_L3_IPV4**, * **BPF_F_ADJ_ROOM_ENCAP_L3_IPV6**: * Any new space is reserved to hold a tunnel header. * Configure skb offsets and other fields accordingly. * * * **BPF_F_ADJ_ROOM_ENCAP_L4_GRE**, * **BPF_F_ADJ_ROOM_ENCAP_L4_UDP**: * Use with ENCAP_L3 flags to further specify the tunnel type. * * * **BPF_F_ADJ_ROOM_ENCAP_L2**\ (*len*): * Use with ENCAP_L3/L4 flags to further specify the tunnel * type; *len* is the length of the inner MAC header. * * * **BPF_F_ADJ_ROOM_ENCAP_L2_ETH**: * Use with BPF_F_ADJ_ROOM_ENCAP_L2 flag to further specify the * L2 type as Ethernet. * * * **BPF_F_ADJ_ROOM_DECAP_L3_IPV4**, * **BPF_F_ADJ_ROOM_DECAP_L3_IPV6**: * Indicate the new IP header version after decapsulating the outer * IP header. Used when the inner and outer IP versions are different. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_redirect_map(struct bpf_map *map, u64 key, u64 flags) * Description * Redirect the packet to the endpoint referenced by *map* at * index *key*. Depending on its type, this *map* can contain * references to net devices (for forwarding packets through other * ports), or to CPUs (for redirecting XDP frames to another CPU; * but this is only implemented for native XDP (with driver * support) as of this writing). * * The lower two bits of *flags* are used as the return code if * the map lookup fails. This is so that the return value can be * one of the XDP program return codes up to **XDP_TX**, as chosen * by the caller. The higher bits of *flags* can be set to * BPF_F_BROADCAST or BPF_F_EXCLUDE_INGRESS as defined below. * * With BPF_F_BROADCAST the packet will be broadcasted to all the * interfaces in the map, with BPF_F_EXCLUDE_INGRESS the ingress * interface will be excluded when do broadcasting. * * See also **bpf_redirect**\ (), which only supports redirecting * to an ifindex, but doesn't require a map to do so. * Return * **XDP_REDIRECT** on success, or the value of the two lower bits * of the *flags* argument on error. * * long bpf_sk_redirect_map(struct sk_buff *skb, struct bpf_map *map, u32 key, u64 flags) * Description * Redirect the packet to the socket referenced by *map* (of type * **BPF_MAP_TYPE_SOCKMAP**) at index *key*. Both ingress and * egress interfaces can be used for redirection. The * **BPF_F_INGRESS** value in *flags* is used to make the * distinction (ingress path is selected if the flag is present, * egress path otherwise). This is the only flag supported for now. * Return * **SK_PASS** on success, or **SK_DROP** on error. * * long bpf_sock_map_update(struct bpf_sock_ops *skops, struct bpf_map *map, void *key, u64 flags) * Description * Add an entry to, or update a *map* referencing sockets. The * *skops* is used as a new value for the entry associated to * *key*. *flags* is one of: * * **BPF_NOEXIST** * The entry for *key* must not exist in the map. * **BPF_EXIST** * The entry for *key* must already exist in the map. * **BPF_ANY** * No condition on the existence of the entry for *key*. * * If the *map* has eBPF programs (parser and verdict), those will * be inherited by the socket being added. If the socket is * already attached to eBPF programs, this results in an error. * Return * 0 on success, or a negative error in case of failure. * * long bpf_xdp_adjust_meta(struct xdp_buff *xdp_md, int delta) * Description * Adjust the address pointed by *xdp_md*\ **->data_meta** by * *delta* (which can be positive or negative). Note that this * operation modifies the address stored in *xdp_md*\ **->data**, * so the latter must be loaded only after the helper has been * called. * * The use of *xdp_md*\ **->data_meta** is optional and programs * are not required to use it. The rationale is that when the * packet is processed with XDP (e.g. as DoS filter), it is * possible to push further meta data along with it before passing * to the stack, and to give the guarantee that an ingress eBPF * program attached as a TC classifier on the same device can pick * this up for further post-processing. Since TC works with socket * buffers, it remains possible to set from XDP the **mark** or * **priority** pointers, or other pointers for the socket buffer. * Having this scratch space generic and programmable allows for * more flexibility as the user is free to store whatever meta * data they need. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_perf_event_read_value(struct bpf_map *map, u64 flags, struct bpf_perf_event_value *buf, u32 buf_size) * Description * Read the value of a perf event counter, and store it into *buf* * of size *buf_size*. This helper relies on a *map* of type * **BPF_MAP_TYPE_PERF_EVENT_ARRAY**. The nature of the perf event * counter is selected when *map* is updated with perf event file * descriptors. The *map* is an array whose size is the number of * available CPUs, and each cell contains a value relative to one * CPU. The value to retrieve is indicated by *flags*, that * contains the index of the CPU to look up, masked with * **BPF_F_INDEX_MASK**. Alternatively, *flags* can be set to * **BPF_F_CURRENT_CPU** to indicate that the value for the * current CPU should be retrieved. * * This helper behaves in a way close to * **bpf_perf_event_read**\ () helper, save that instead of * just returning the value observed, it fills the *buf* * structure. This allows for additional data to be retrieved: in * particular, the enabled and running times (in *buf*\ * **->enabled** and *buf*\ **->running**, respectively) are * copied. In general, **bpf_perf_event_read_value**\ () is * recommended over **bpf_perf_event_read**\ (), which has some * ABI issues and provides fewer functionalities. * * These values are interesting, because hardware PMU (Performance * Monitoring Unit) counters are limited resources. When there are * more PMU based perf events opened than available counters, * kernel will multiplex these events so each event gets certain * percentage (but not all) of the PMU time. In case that * multiplexing happens, the number of samples or counter value * will not reflect the case compared to when no multiplexing * occurs. This makes comparison between different runs difficult. * Typically, the counter value should be normalized before * comparing to other experiments. The usual normalization is done * as follows. * * :: * * normalized_counter = counter * t_enabled / t_running * * Where t_enabled is the time enabled for event and t_running is * the time running for event since last normalization. The * enabled and running times are accumulated since the perf event * open. To achieve scaling factor between two invocations of an * eBPF program, users can use CPU id as the key (which is * typical for perf array usage model) to remember the previous * value and do the calculation inside the eBPF program. * Return * 0 on success, or a negative error in case of failure. * * long bpf_perf_prog_read_value(struct bpf_perf_event_data *ctx, struct bpf_perf_event_value *buf, u32 buf_size) * Description * For an eBPF program attached to a perf event, retrieve the * value of the event counter associated to *ctx* and store it in * the structure pointed by *buf* and of size *buf_size*. Enabled * and running times are also stored in the structure (see * description of helper **bpf_perf_event_read_value**\ () for * more details). * Return * 0 on success, or a negative error in case of failure. * * long bpf_getsockopt(void *bpf_socket, int level, int optname, void *optval, int optlen) * Description * Emulate a call to **getsockopt()** on the socket associated to * *bpf_socket*, which must be a full socket. The *level* at * which the option resides and the name *optname* of the option * must be specified, see **getsockopt(2)** for more information. * The retrieved value is stored in the structure pointed by * *opval* and of length *optlen*. * * *bpf_socket* should be one of the following: * * * **struct bpf_sock_ops** for **BPF_PROG_TYPE_SOCK_OPS**. * * **struct bpf_sock_addr** for **BPF_CGROUP_INET4_CONNECT** * and **BPF_CGROUP_INET6_CONNECT**. * * This helper actually implements a subset of **getsockopt()**. * It supports the same set of *optname*\ s that is supported by * the **bpf_setsockopt**\ () helper. The exceptions are * **TCP_BPF_*** is **bpf_setsockopt**\ () only and * **TCP_SAVED_SYN** is **bpf_getsockopt**\ () only. * Return * 0 on success, or a negative error in case of failure. * * long bpf_override_return(struct pt_regs *regs, u64 rc) * Description * Used for error injection, this helper uses kprobes to override * the return value of the probed function, and to set it to *rc*. * The first argument is the context *regs* on which the kprobe * works. * * This helper works by setting the PC (program counter) * to an override function which is run in place of the original * probed function. This means the probed function is not run at * all. The replacement function just returns with the required * value. * * This helper has security implications, and thus is subject to * restrictions. It is only available if the kernel was compiled * with the **CONFIG_BPF_KPROBE_OVERRIDE** configuration * option, and in this case it only works on functions tagged with * **ALLOW_ERROR_INJECTION** in the kernel code. * * Also, the helper is only available for the architectures having * the CONFIG_FUNCTION_ERROR_INJECTION option. As of this writing, * x86 architecture is the only one to support this feature. * Return * 0 * * long bpf_sock_ops_cb_flags_set(struct bpf_sock_ops *bpf_sock, int argval) * Description * Attempt to set the value of the **bpf_sock_ops_cb_flags** field * for the full TCP socket associated to *bpf_sock_ops* to * *argval*. * * The primary use of this field is to determine if there should * be calls to eBPF programs of type * **BPF_PROG_TYPE_SOCK_OPS** at various points in the TCP * code. A program of the same type can change its value, per * connection and as necessary, when the connection is * established. This field is directly accessible for reading, but * this helper must be used for updates in order to return an * error if an eBPF program tries to set a callback that is not * supported in the current kernel. * * *argval* is a flag array which can combine these flags: * * * **BPF_SOCK_OPS_RTO_CB_FLAG** (retransmission time out) * * **BPF_SOCK_OPS_RETRANS_CB_FLAG** (retransmission) * * **BPF_SOCK_OPS_STATE_CB_FLAG** (TCP state change) * * **BPF_SOCK_OPS_RTT_CB_FLAG** (every RTT) * * Therefore, this function can be used to clear a callback flag by * setting the appropriate bit to zero. e.g. to disable the RTO * callback: * * **bpf_sock_ops_cb_flags_set(bpf_sock,** * **bpf_sock->bpf_sock_ops_cb_flags & ~BPF_SOCK_OPS_RTO_CB_FLAG)** * * Here are some examples of where one could call such eBPF * program: * * * When RTO fires. * * When a packet is retransmitted. * * When the connection terminates. * * When a packet is sent. * * When a packet is received. * Return * Code **-EINVAL** if the socket is not a full TCP socket; * otherwise, a positive number containing the bits that could not * be set is returned (which comes down to 0 if all bits were set * as required). * * long bpf_msg_redirect_map(struct sk_msg_buff *msg, struct bpf_map *map, u32 key, u64 flags) * Description * This helper is used in programs implementing policies at the * socket level. If the message *msg* is allowed to pass (i.e. if * the verdict eBPF program returns **SK_PASS**), redirect it to * the socket referenced by *map* (of type * **BPF_MAP_TYPE_SOCKMAP**) at index *key*. Both ingress and * egress interfaces can be used for redirection. The * **BPF_F_INGRESS** value in *flags* is used to make the * distinction (ingress path is selected if the flag is present, * egress path otherwise). This is the only flag supported for now. * Return * **SK_PASS** on success, or **SK_DROP** on error. * * long bpf_msg_apply_bytes(struct sk_msg_buff *msg, u32 bytes) * Description * For socket policies, apply the verdict of the eBPF program to * the next *bytes* (number of bytes) of message *msg*. * * For example, this helper can be used in the following cases: * * * A single **sendmsg**\ () or **sendfile**\ () system call * contains multiple logical messages that the eBPF program is * supposed to read and for which it should apply a verdict. * * An eBPF program only cares to read the first *bytes* of a * *msg*. If the message has a large payload, then setting up * and calling the eBPF program repeatedly for all bytes, even * though the verdict is already known, would create unnecessary * overhead. * * When called from within an eBPF program, the helper sets a * counter internal to the BPF infrastructure, that is used to * apply the last verdict to the next *bytes*. If *bytes* is * smaller than the current data being processed from a * **sendmsg**\ () or **sendfile**\ () system call, the first * *bytes* will be sent and the eBPF program will be re-run with * the pointer for start of data pointing to byte number *bytes* * **+ 1**. If *bytes* is larger than the current data being * processed, then the eBPF verdict will be applied to multiple * **sendmsg**\ () or **sendfile**\ () calls until *bytes* are * consumed. * * Note that if a socket closes with the internal counter holding * a non-zero value, this is not a problem because data is not * being buffered for *bytes* and is sent as it is received. * Return * 0 * * long bpf_msg_cork_bytes(struct sk_msg_buff *msg, u32 bytes) * Description * For socket policies, prevent the execution of the verdict eBPF * program for message *msg* until *bytes* (byte number) have been * accumulated. * * This can be used when one needs a specific number of bytes * before a verdict can be assigned, even if the data spans * multiple **sendmsg**\ () or **sendfile**\ () calls. The extreme * case would be a user calling **sendmsg**\ () repeatedly with * 1-byte long message segments. Obviously, this is bad for * performance, but it is still valid. If the eBPF program needs * *bytes* bytes to validate a header, this helper can be used to * prevent the eBPF program to be called again until *bytes* have * been accumulated. * Return * 0 * * long bpf_msg_pull_data(struct sk_msg_buff *msg, u32 start, u32 end, u64 flags) * Description * For socket policies, pull in non-linear data from user space * for *msg* and set pointers *msg*\ **->data** and *msg*\ * **->data_end** to *start* and *end* bytes offsets into *msg*, * respectively. * * If a program of type **BPF_PROG_TYPE_SK_MSG** is run on a * *msg* it can only parse data that the (**data**, **data_end**) * pointers have already consumed. For **sendmsg**\ () hooks this * is likely the first scatterlist element. But for calls relying * on the **sendpage** handler (e.g. **sendfile**\ ()) this will * be the range (**0**, **0**) because the data is shared with * user space and by default the objective is to avoid allowing * user space to modify data while (or after) eBPF verdict is * being decided. This helper can be used to pull in data and to * set the start and end pointer to given values. Data will be * copied if necessary (i.e. if data was not linear and if start * and end pointers do not point to the same chunk). * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * * All values for *flags* are reserved for future usage, and must * be left at zero. * Return * 0 on success, or a negative error in case of failure. * * long bpf_bind(struct bpf_sock_addr *ctx, struct sockaddr *addr, int addr_len) * Description * Bind the socket associated to *ctx* to the address pointed by * *addr*, of length *addr_len*. This allows for making outgoing * connection from the desired IP address, which can be useful for * example when all processes inside a cgroup should use one * single IP address on a host that has multiple IP configured. * * This helper works for IPv4 and IPv6, TCP and UDP sockets. The * domain (*addr*\ **->sa_family**) must be **AF_INET** (or * **AF_INET6**). It's advised to pass zero port (**sin_port** * or **sin6_port**) which triggers IP_BIND_ADDRESS_NO_PORT-like * behavior and lets the kernel efficiently pick up an unused * port as long as 4-tuple is unique. Passing non-zero port might * lead to degraded performance. * Return * 0 on success, or a negative error in case of failure. * * long bpf_xdp_adjust_tail(struct xdp_buff *xdp_md, int delta) * Description * Adjust (move) *xdp_md*\ **->data_end** by *delta* bytes. It is * possible to both shrink and grow the packet tail. * Shrink done via *delta* being a negative integer. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_skb_get_xfrm_state(struct sk_buff *skb, u32 index, struct bpf_xfrm_state *xfrm_state, u32 size, u64 flags) * Description * Retrieve the XFRM state (IP transform framework, see also * **ip-xfrm(8)**) at *index* in XFRM "security path" for *skb*. * * The retrieved value is stored in the **struct bpf_xfrm_state** * pointed by *xfrm_state* and of length *size*. * * All values for *flags* are reserved for future usage, and must * be left at zero. * * This helper is available only if the kernel was compiled with * **CONFIG_XFRM** configuration option. * Return * 0 on success, or a negative error in case of failure. * * long bpf_get_stack(void *ctx, void *buf, u32 size, u64 flags) * Description * Return a user or a kernel stack in bpf program provided buffer. * To achieve this, the helper needs *ctx*, which is a pointer * to the context on which the tracing program is executed. * To store the stacktrace, the bpf program provides *buf* with * a nonnegative *size*. * * The last argument, *flags*, holds the number of stack frames to * skip (from 0 to 255), masked with * **BPF_F_SKIP_FIELD_MASK**. The next bits can be used to set * the following flags: * * **BPF_F_USER_STACK** * Collect a user space stack instead of a kernel stack. * **BPF_F_USER_BUILD_ID** * Collect (build_id, file_offset) instead of ips for user * stack, only valid if **BPF_F_USER_STACK** is also * specified. * * *file_offset* is an offset relative to the beginning * of the executable or shared object file backing the vma * which the *ip* falls in. It is *not* an offset relative * to that object's base address. Accordingly, it must be * adjusted by adding (sh_addr - sh_offset), where * sh_{addr,offset} correspond to the executable section * containing *file_offset* in the object, for comparisons * to symbols' st_value to be valid. * * **bpf_get_stack**\ () can collect up to * **PERF_MAX_STACK_DEPTH** both kernel and user frames, subject * to sufficient large buffer size. Note that * this limit can be controlled with the **sysctl** program, and * that it should be manually increased in order to profile long * user stacks (such as stacks for Java programs). To do so, use: * * :: * * # sysctl kernel.perf_event_max_stack= * Return * The non-negative copied *buf* length equal to or less than * *size* on success, or a negative error in case of failure. * * long bpf_skb_load_bytes_relative(const void *skb, u32 offset, void *to, u32 len, u32 start_header) * Description * This helper is similar to **bpf_skb_load_bytes**\ () in that * it provides an easy way to load *len* bytes from *offset* * from the packet associated to *skb*, into the buffer pointed * by *to*. The difference to **bpf_skb_load_bytes**\ () is that * a fifth argument *start_header* exists in order to select a * base offset to start from. *start_header* can be one of: * * **BPF_HDR_START_MAC** * Base offset to load data from is *skb*'s mac header. * **BPF_HDR_START_NET** * Base offset to load data from is *skb*'s network header. * * In general, "direct packet access" is the preferred method to * access packet data, however, this helper is in particular useful * in socket filters where *skb*\ **->data** does not always point * to the start of the mac header and where "direct packet access" * is not available. * Return * 0 on success, or a negative error in case of failure. * * long bpf_fib_lookup(void *ctx, struct bpf_fib_lookup *params, int plen, u32 flags) * Description * Do FIB lookup in kernel tables using parameters in *params*. * If lookup is successful and result shows packet is to be * forwarded, the neighbor tables are searched for the nexthop. * If successful (ie., FIB lookup shows forwarding and nexthop * is resolved), the nexthop address is returned in ipv4_dst * or ipv6_dst based on family, smac is set to mac address of * egress device, dmac is set to nexthop mac address, rt_metric * is set to metric from route (IPv4/IPv6 only), and ifindex * is set to the device index of the nexthop from the FIB lookup. * * *plen* argument is the size of the passed in struct. * *flags* argument can be a combination of one or more of the * following values: * * **BPF_FIB_LOOKUP_DIRECT** * Do a direct table lookup vs full lookup using FIB * rules. * **BPF_FIB_LOOKUP_OUTPUT** * Perform lookup from an egress perspective (default is * ingress). * **BPF_FIB_LOOKUP_SKIP_NEIGH** * Skip the neighbour table lookup. *params*->dmac * and *params*->smac will not be set as output. A common * use case is to call **bpf_redirect_neigh**\ () after * doing **bpf_fib_lookup**\ (). * * *ctx* is either **struct xdp_md** for XDP programs or * **struct sk_buff** tc cls_act programs. * Return * * < 0 if any input argument is invalid * * 0 on success (packet is forwarded, nexthop neighbor exists) * * > 0 one of **BPF_FIB_LKUP_RET_** codes explaining why the * packet is not forwarded or needs assist from full stack * * If lookup fails with BPF_FIB_LKUP_RET_FRAG_NEEDED, then the MTU * was exceeded and output params->mtu_result contains the MTU. * * long bpf_sock_hash_update(struct bpf_sock_ops *skops, struct bpf_map *map, void *key, u64 flags) * Description * Add an entry to, or update a sockhash *map* referencing sockets. * The *skops* is used as a new value for the entry associated to * *key*. *flags* is one of: * * **BPF_NOEXIST** * The entry for *key* must not exist in the map. * **BPF_EXIST** * The entry for *key* must already exist in the map. * **BPF_ANY** * No condition on the existence of the entry for *key*. * * If the *map* has eBPF programs (parser and verdict), those will * be inherited by the socket being added. If the socket is * already attached to eBPF programs, this results in an error. * Return * 0 on success, or a negative error in case of failure. * * long bpf_msg_redirect_hash(struct sk_msg_buff *msg, struct bpf_map *map, void *key, u64 flags) * Description * This helper is used in programs implementing policies at the * socket level. If the message *msg* is allowed to pass (i.e. if * the verdict eBPF program returns **SK_PASS**), redirect it to * the socket referenced by *map* (of type * **BPF_MAP_TYPE_SOCKHASH**) using hash *key*. Both ingress and * egress interfaces can be used for redirection. The * **BPF_F_INGRESS** value in *flags* is used to make the * distinction (ingress path is selected if the flag is present, * egress path otherwise). This is the only flag supported for now. * Return * **SK_PASS** on success, or **SK_DROP** on error. * * long bpf_sk_redirect_hash(struct sk_buff *skb, struct bpf_map *map, void *key, u64 flags) * Description * This helper is used in programs implementing policies at the * skb socket level. If the sk_buff *skb* is allowed to pass (i.e. * if the verdict eBPF program returns **SK_PASS**), redirect it * to the socket referenced by *map* (of type * **BPF_MAP_TYPE_SOCKHASH**) using hash *key*. Both ingress and * egress interfaces can be used for redirection. The * **BPF_F_INGRESS** value in *flags* is used to make the * distinction (ingress path is selected if the flag is present, * egress otherwise). This is the only flag supported for now. * Return * **SK_PASS** on success, or **SK_DROP** on error. * * long bpf_lwt_push_encap(struct sk_buff *skb, u32 type, void *hdr, u32 len) * Description * Encapsulate the packet associated to *skb* within a Layer 3 * protocol header. This header is provided in the buffer at * address *hdr*, with *len* its size in bytes. *type* indicates * the protocol of the header and can be one of: * * **BPF_LWT_ENCAP_SEG6** * IPv6 encapsulation with Segment Routing Header * (**struct ipv6_sr_hdr**). *hdr* only contains the SRH, * the IPv6 header is computed by the kernel. * **BPF_LWT_ENCAP_SEG6_INLINE** * Only works if *skb* contains an IPv6 packet. Insert a * Segment Routing Header (**struct ipv6_sr_hdr**) inside * the IPv6 header. * **BPF_LWT_ENCAP_IP** * IP encapsulation (GRE/GUE/IPIP/etc). The outer header * must be IPv4 or IPv6, followed by zero or more * additional headers, up to **LWT_BPF_MAX_HEADROOM** * total bytes in all prepended headers. Please note that * if **skb_is_gso**\ (*skb*) is true, no more than two * headers can be prepended, and the inner header, if * present, should be either GRE or UDP/GUE. * * **BPF_LWT_ENCAP_SEG6**\ \* types can be called by BPF programs * of type **BPF_PROG_TYPE_LWT_IN**; **BPF_LWT_ENCAP_IP** type can * be called by bpf programs of types **BPF_PROG_TYPE_LWT_IN** and * **BPF_PROG_TYPE_LWT_XMIT**. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_lwt_seg6_store_bytes(struct sk_buff *skb, u32 offset, const void *from, u32 len) * Description * Store *len* bytes from address *from* into the packet * associated to *skb*, at *offset*. Only the flags, tag and TLVs * inside the outermost IPv6 Segment Routing Header can be * modified through this helper. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_lwt_seg6_adjust_srh(struct sk_buff *skb, u32 offset, s32 delta) * Description * Adjust the size allocated to TLVs in the outermost IPv6 * Segment Routing Header contained in the packet associated to * *skb*, at position *offset* by *delta* bytes. Only offsets * after the segments are accepted. *delta* can be as well * positive (growing) as negative (shrinking). * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_lwt_seg6_action(struct sk_buff *skb, u32 action, void *param, u32 param_len) * Description * Apply an IPv6 Segment Routing action of type *action* to the * packet associated to *skb*. Each action takes a parameter * contained at address *param*, and of length *param_len* bytes. * *action* can be one of: * * **SEG6_LOCAL_ACTION_END_X** * End.X action: Endpoint with Layer-3 cross-connect. * Type of *param*: **struct in6_addr**. * **SEG6_LOCAL_ACTION_END_T** * End.T action: Endpoint with specific IPv6 table lookup. * Type of *param*: **int**. * **SEG6_LOCAL_ACTION_END_B6** * End.B6 action: Endpoint bound to an SRv6 policy. * Type of *param*: **struct ipv6_sr_hdr**. * **SEG6_LOCAL_ACTION_END_B6_ENCAP** * End.B6.Encap action: Endpoint bound to an SRv6 * encapsulation policy. * Type of *param*: **struct ipv6_sr_hdr**. * * A call to this helper is susceptible to change the underlying * packet buffer. Therefore, at load time, all checks on pointers * previously done by the verifier are invalidated and must be * performed again, if the helper is used in combination with * direct packet access. * Return * 0 on success, or a negative error in case of failure. * * long bpf_rc_repeat(void *ctx) * Description * This helper is used in programs implementing IR decoding, to * report a successfully decoded repeat key message. This delays * the generation of a key up event for previously generated * key down event. * * Some IR protocols like NEC have a special IR message for * repeating last button, for when a button is held down. * * The *ctx* should point to the lirc sample as passed into * the program. * * This helper is only available is the kernel was compiled with * the **CONFIG_BPF_LIRC_MODE2** configuration option set to * "**y**". * Return * 0 * * long bpf_rc_keydown(void *ctx, u32 protocol, u64 scancode, u32 toggle) * Description * This helper is used in programs implementing IR decoding, to * report a successfully decoded key press with *scancode*, * *toggle* value in the given *protocol*. The scancode will be * translated to a keycode using the rc keymap, and reported as * an input key down event. After a period a key up event is * generated. This period can be extended by calling either * **bpf_rc_keydown**\ () again with the same values, or calling * **bpf_rc_repeat**\ (). * * Some protocols include a toggle bit, in case the button was * released and pressed again between consecutive scancodes. * * The *ctx* should point to the lirc sample as passed into * the program. * * The *protocol* is the decoded protocol number (see * **enum rc_proto** for some predefined values). * * This helper is only available is the kernel was compiled with * the **CONFIG_BPF_LIRC_MODE2** configuration option set to * "**y**". * Return * 0 * * u64 bpf_skb_cgroup_id(struct sk_buff *skb) * Description * Return the cgroup v2 id of the socket associated with the *skb*. * This is roughly similar to the **bpf_get_cgroup_classid**\ () * helper for cgroup v1 by providing a tag resp. identifier that * can be matched on or used for map lookups e.g. to implement * policy. The cgroup v2 id of a given path in the hierarchy is * exposed in user space through the f_handle API in order to get * to the same 64-bit id. * * This helper can be used on TC egress path, but not on ingress, * and is available only if the kernel was compiled with the * **CONFIG_SOCK_CGROUP_DATA** configuration option. * Return * The id is returned or 0 in case the id could not be retrieved. * * u64 bpf_get_current_cgroup_id(void) * Description * Get the current cgroup id based on the cgroup within which * the current task is running. * Return * A 64-bit integer containing the current cgroup id based * on the cgroup within which the current task is running. * * void *bpf_get_local_storage(void *map, u64 flags) * Description * Get the pointer to the local storage area. * The type and the size of the local storage is defined * by the *map* argument. * The *flags* meaning is specific for each map type, * and has to be 0 for cgroup local storage. * * Depending on the BPF program type, a local storage area * can be shared between multiple instances of the BPF program, * running simultaneously. * * A user should care about the synchronization by himself. * For example, by using the **BPF_ATOMIC** instructions to alter * the shared data. * Return * A pointer to the local storage area. * * long bpf_sk_select_reuseport(struct sk_reuseport_md *reuse, struct bpf_map *map, void *key, u64 flags) * Description * Select a **SO_REUSEPORT** socket from a * **BPF_MAP_TYPE_REUSEPORT_SOCKARRAY** *map*. * It checks the selected socket is matching the incoming * request in the socket buffer. * Return * 0 on success, or a negative error in case of failure. * * u64 bpf_skb_ancestor_cgroup_id(struct sk_buff *skb, int ancestor_level) * Description * Return id of cgroup v2 that is ancestor of cgroup associated * with the *skb* at the *ancestor_level*. The root cgroup is at * *ancestor_level* zero and each step down the hierarchy * increments the level. If *ancestor_level* == level of cgroup * associated with *skb*, then return value will be same as that * of **bpf_skb_cgroup_id**\ (). * * The helper is useful to implement policies based on cgroups * that are upper in hierarchy than immediate cgroup associated * with *skb*. * * The format of returned id and helper limitations are same as in * **bpf_skb_cgroup_id**\ (). * Return * The id is returned or 0 in case the id could not be retrieved. * * struct bpf_sock *bpf_sk_lookup_tcp(void *ctx, struct bpf_sock_tuple *tuple, u32 tuple_size, u64 netns, u64 flags) * Description * Look for TCP socket matching *tuple*, optionally in a child * network namespace *netns*. The return value must be checked, * and if non-**NULL**, released via **bpf_sk_release**\ (). * * The *ctx* should point to the context of the program, such as * the skb or socket (depending on the hook in use). This is used * to determine the base network namespace for the lookup. * * *tuple_size* must be one of: * * **sizeof**\ (*tuple*\ **->ipv4**) * Look for an IPv4 socket. * **sizeof**\ (*tuple*\ **->ipv6**) * Look for an IPv6 socket. * * If the *netns* is a negative signed 32-bit integer, then the * socket lookup table in the netns associated with the *ctx* * will be used. For the TC hooks, this is the netns of the device * in the skb. For socket hooks, this is the netns of the socket. * If *netns* is any other signed 32-bit value greater than or * equal to zero then it specifies the ID of the netns relative to * the netns associated with the *ctx*. *netns* values beyond the * range of 32-bit integers are reserved for future use. * * All values for *flags* are reserved for future usage, and must * be left at zero. * * This helper is available only if the kernel was compiled with * **CONFIG_NET** configuration option. * Return * Pointer to **struct bpf_sock**, or **NULL** in case of failure. * For sockets with reuseport option, the **struct bpf_sock** * result is from *reuse*\ **->socks**\ [] using the hash of the * tuple. * * struct bpf_sock *bpf_sk_lookup_udp(void *ctx, struct bpf_sock_tuple *tuple, u32 tuple_size, u64 netns, u64 flags) * Description * Look for UDP socket matching *tuple*, optionally in a child * network namespace *netns*. The return value must be checked, * and if non-**NULL**, released via **bpf_sk_release**\ (). * * The *ctx* should point to the context of the program, such as * the skb or socket (depending on the hook in use). This is used * to determine the base network namespace for the lookup. * * *tuple_size* must be one of: * * **sizeof**\ (*tuple*\ **->ipv4**) * Look for an IPv4 socket. * **sizeof**\ (*tuple*\ **->ipv6**) * Look for an IPv6 socket. * * If the *netns* is a negative signed 32-bit integer, then the * socket lookup table in the netns associated with the *ctx* * will be used. For the TC hooks, this is the netns of the device * in the skb. For socket hooks, this is the netns of the socket. * If *netns* is any other signed 32-bit value greater than or * equal to zero then it specifies the ID of the netns relative to * the netns associated with the *ctx*. *netns* values beyond the * range of 32-bit integers are reserved for future use. * * All values for *flags* are reserved for future usage, and must * be left at zero. * * This helper is available only if the kernel was compiled with * **CONFIG_NET** configuration option. * Return * Pointer to **struct bpf_sock**, or **NULL** in case of failure. * For sockets with reuseport option, the **struct bpf_sock** * result is from *reuse*\ **->socks**\ [] using the hash of the * tuple. * * long bpf_sk_release(void *sock) * Description * Release the reference held by *sock*. *sock* must be a * non-**NULL** pointer that was returned from * **bpf_sk_lookup_xxx**\ (). * Return * 0 on success, or a negative error in case of failure. * * long bpf_map_push_elem(struct bpf_map *map, const void *value, u64 flags) * Description * Push an element *value* in *map*. *flags* is one of: * * **BPF_EXIST** * If the queue/stack is full, the oldest element is * removed to make room for this. * Return * 0 on success, or a negative error in case of failure. * * long bpf_map_pop_elem(struct bpf_map *map, void *value) * Description * Pop an element from *map*. * Return * 0 on success, or a negative error in case of failure. * * long bpf_map_peek_elem(struct bpf_map *map, void *value) * Description * Get an element from *map* without removing it. * Return * 0 on success, or a negative error in case of failure. * * long bpf_msg_push_data(struct sk_msg_buff *msg, u32 start, u32 len, u64 flags) * Description * For socket policies, insert *len* bytes into *msg* at offset * *start*. * * If a program of type **BPF_PROG_TYPE_SK_MSG** is run on a * *msg* it may want to insert metadata or options into the *msg*. * This can later be read and used by any of the lower layer BPF * hooks. * * This helper may fail if under memory pressure (a malloc * fails) in these cases BPF programs will get an appropriate * error and BPF programs will need to handle them. * Return * 0 on success, or a negative error in case of failure. * * long bpf_msg_pop_data(struct sk_msg_buff *msg, u32 start, u32 len, u64 flags) * Description * Will remove *len* bytes from a *msg* starting at byte *start*. * This may result in **ENOMEM** errors under certain situations if * an allocation and copy are required due to a full ring buffer. * However, the helper will try to avoid doing the allocation * if possible. Other errors can occur if input parameters are * invalid either due to *start* byte not being valid part of *msg* * payload and/or *pop* value being to large. * Return * 0 on success, or a negative error in case of failure. * * long bpf_rc_pointer_rel(void *ctx, s32 rel_x, s32 rel_y) * Description * This helper is used in programs implementing IR decoding, to * report a successfully decoded pointer movement. * * The *ctx* should point to the lirc sample as passed into * the program. * * This helper is only available is the kernel was compiled with * the **CONFIG_BPF_LIRC_MODE2** configuration option set to * "**y**". * Return * 0 * * long bpf_spin_lock(struct bpf_spin_lock *lock) * Description * Acquire a spinlock represented by the pointer *lock*, which is * stored as part of a value of a map. Taking the lock allows to * safely update the rest of the fields in that value. The * spinlock can (and must) later be released with a call to * **bpf_spin_unlock**\ (\ *lock*\ ). * * Spinlocks in BPF programs come with a number of restrictions * and constraints: * * * **bpf_spin_lock** objects are only allowed inside maps of * types **BPF_MAP_TYPE_HASH** and **BPF_MAP_TYPE_ARRAY** (this * list could be extended in the future). * * BTF description of the map is mandatory. * * The BPF program can take ONE lock at a time, since taking two * or more could cause dead locks. * * Only one **struct bpf_spin_lock** is allowed per map element. * * When the lock is taken, calls (either BPF to BPF or helpers) * are not allowed. * * The **BPF_LD_ABS** and **BPF_LD_IND** instructions are not * allowed inside a spinlock-ed region. * * The BPF program MUST call **bpf_spin_unlock**\ () to release * the lock, on all execution paths, before it returns. * * The BPF program can access **struct bpf_spin_lock** only via * the **bpf_spin_lock**\ () and **bpf_spin_unlock**\ () * helpers. Loading or storing data into the **struct * bpf_spin_lock** *lock*\ **;** field of a map is not allowed. * * To use the **bpf_spin_lock**\ () helper, the BTF description * of the map value must be a struct and have **struct * bpf_spin_lock** *anyname*\ **;** field at the top level. * Nested lock inside another struct is not allowed. * * The **struct bpf_spin_lock** *lock* field in a map value must * be aligned on a multiple of 4 bytes in that value. * * Syscall with command **BPF_MAP_LOOKUP_ELEM** does not copy * the **bpf_spin_lock** field to user space. * * Syscall with command **BPF_MAP_UPDATE_ELEM**, or update from * a BPF program, do not update the **bpf_spin_lock** field. * * **bpf_spin_lock** cannot be on the stack or inside a * networking packet (it can only be inside of a map values). * * **bpf_spin_lock** is available to root only. * * Tracing programs and socket filter programs cannot use * **bpf_spin_lock**\ () due to insufficient preemption checks * (but this may change in the future). * * **bpf_spin_lock** is not allowed in inner maps of map-in-map. * Return * 0 * * long bpf_spin_unlock(struct bpf_spin_lock *lock) * Description * Release the *lock* previously locked by a call to * **bpf_spin_lock**\ (\ *lock*\ ). * Return * 0 * * struct bpf_sock *bpf_sk_fullsock(struct bpf_sock *sk) * Description * This helper gets a **struct bpf_sock** pointer such * that all the fields in this **bpf_sock** can be accessed. * Return * A **struct bpf_sock** pointer on success, or **NULL** in * case of failure. * * struct bpf_tcp_sock *bpf_tcp_sock(struct bpf_sock *sk) * Description * This helper gets a **struct bpf_tcp_sock** pointer from a * **struct bpf_sock** pointer. * Return * A **struct bpf_tcp_sock** pointer on success, or **NULL** in * case of failure. * * long bpf_skb_ecn_set_ce(struct sk_buff *skb) * Description * Set ECN (Explicit Congestion Notification) field of IP header * to **CE** (Congestion Encountered) if current value is **ECT** * (ECN Capable Transport). Otherwise, do nothing. Works with IPv6 * and IPv4. * Return * 1 if the **CE** flag is set (either by the current helper call * or because it was already present), 0 if it is not set. * * struct bpf_sock *bpf_get_listener_sock(struct bpf_sock *sk) * Description * Return a **struct bpf_sock** pointer in **TCP_LISTEN** state. * **bpf_sk_release**\ () is unnecessary and not allowed. * Return * A **struct bpf_sock** pointer on success, or **NULL** in * case of failure. * * struct bpf_sock *bpf_skc_lookup_tcp(void *ctx, struct bpf_sock_tuple *tuple, u32 tuple_size, u64 netns, u64 flags) * Description * Look for TCP socket matching *tuple*, optionally in a child * network namespace *netns*. The return value must be checked, * and if non-**NULL**, released via **bpf_sk_release**\ (). * * This function is identical to **bpf_sk_lookup_tcp**\ (), except * that it also returns timewait or request sockets. Use * **bpf_sk_fullsock**\ () or **bpf_tcp_sock**\ () to access the * full structure. * * This helper is available only if the kernel was compiled with * **CONFIG_NET** configuration option. * Return * Pointer to **struct bpf_sock**, or **NULL** in case of failure. * For sockets with reuseport option, the **struct bpf_sock** * result is from *reuse*\ **->socks**\ [] using the hash of the * tuple. * * long bpf_tcp_check_syncookie(void *sk, void *iph, u32 iph_len, struct tcphdr *th, u32 th_len) * Description * Check whether *iph* and *th* contain a valid SYN cookie ACK for * the listening socket in *sk*. * * *iph* points to the start of the IPv4 or IPv6 header, while * *iph_len* contains **sizeof**\ (**struct iphdr**) or * **sizeof**\ (**struct ipv6hdr**). * * *th* points to the start of the TCP header, while *th_len* * contains the length of the TCP header (at least * **sizeof**\ (**struct tcphdr**)). * Return * 0 if *iph* and *th* are a valid SYN cookie ACK, or a negative * error otherwise. * * long bpf_sysctl_get_name(struct bpf_sysctl *ctx, char *buf, size_t buf_len, u64 flags) * Description * Get name of sysctl in /proc/sys/ and copy it into provided by * program buffer *buf* of size *buf_len*. * * The buffer is always NUL terminated, unless it's zero-sized. * * If *flags* is zero, full name (e.g. "net/ipv4/tcp_mem") is * copied. Use **BPF_F_SYSCTL_BASE_NAME** flag to copy base name * only (e.g. "tcp_mem"). * Return * Number of character copied (not including the trailing NUL). * * **-E2BIG** if the buffer wasn't big enough (*buf* will contain * truncated name in this case). * * long bpf_sysctl_get_current_value(struct bpf_sysctl *ctx, char *buf, size_t buf_len) * Description * Get current value of sysctl as it is presented in /proc/sys * (incl. newline, etc), and copy it as a string into provided * by program buffer *buf* of size *buf_len*. * * The whole value is copied, no matter what file position user * space issued e.g. sys_read at. * * The buffer is always NUL terminated, unless it's zero-sized. * Return * Number of character copied (not including the trailing NUL). * * **-E2BIG** if the buffer wasn't big enough (*buf* will contain * truncated name in this case). * * **-EINVAL** if current value was unavailable, e.g. because * sysctl is uninitialized and read returns -EIO for it. * * long bpf_sysctl_get_new_value(struct bpf_sysctl *ctx, char *buf, size_t buf_len) * Description * Get new value being written by user space to sysctl (before * the actual write happens) and copy it as a string into * provided by program buffer *buf* of size *buf_len*. * * User space may write new value at file position > 0. * * The buffer is always NUL terminated, unless it's zero-sized. * Return * Number of character copied (not including the trailing NUL). * * **-E2BIG** if the buffer wasn't big enough (*buf* will contain * truncated name in this case). * * **-EINVAL** if sysctl is being read. * * long bpf_sysctl_set_new_value(struct bpf_sysctl *ctx, const char *buf, size_t buf_len) * Description * Override new value being written by user space to sysctl with * value provided by program in buffer *buf* of size *buf_len*. * * *buf* should contain a string in same form as provided by user * space on sysctl write. * * User space may write new value at file position > 0. To override * the whole sysctl value file position should be set to zero. * Return * 0 on success. * * **-E2BIG** if the *buf_len* is too big. * * **-EINVAL** if sysctl is being read. * * long bpf_strtol(const char *buf, size_t buf_len, u64 flags, long *res) * Description * Convert the initial part of the string from buffer *buf* of * size *buf_len* to a long integer according to the given base * and save the result in *res*. * * The string may begin with an arbitrary amount of white space * (as determined by **isspace**\ (3)) followed by a single * optional '**-**' sign. * * Five least significant bits of *flags* encode base, other bits * are currently unused. * * Base must be either 8, 10, 16 or 0 to detect it automatically * similar to user space **strtol**\ (3). * Return * Number of characters consumed on success. Must be positive but * no more than *buf_len*. * * **-EINVAL** if no valid digits were found or unsupported base * was provided. * * **-ERANGE** if resulting value was out of range. * * long bpf_strtoul(const char *buf, size_t buf_len, u64 flags, unsigned long *res) * Description * Convert the initial part of the string from buffer *buf* of * size *buf_len* to an unsigned long integer according to the * given base and save the result in *res*. * * The string may begin with an arbitrary amount of white space * (as determined by **isspace**\ (3)). * * Five least significant bits of *flags* encode base, other bits * are currently unused. * * Base must be either 8, 10, 16 or 0 to detect it automatically * similar to user space **strtoul**\ (3). * Return * Number of characters consumed on success. Must be positive but * no more than *buf_len*. * * **-EINVAL** if no valid digits were found or unsupported base * was provided. * * **-ERANGE** if resulting value was out of range. * * void *bpf_sk_storage_get(struct bpf_map *map, void *sk, void *value, u64 flags) * Description * Get a bpf-local-storage from a *sk*. * * Logically, it could be thought of getting the value from * a *map* with *sk* as the **key**. From this * perspective, the usage is not much different from * **bpf_map_lookup_elem**\ (*map*, **&**\ *sk*) except this * helper enforces the key must be a full socket and the map must * be a **BPF_MAP_TYPE_SK_STORAGE** also. * * Underneath, the value is stored locally at *sk* instead of * the *map*. The *map* is used as the bpf-local-storage * "type". The bpf-local-storage "type" (i.e. the *map*) is * searched against all bpf-local-storages residing at *sk*. * * *sk* is a kernel **struct sock** pointer for LSM program. * *sk* is a **struct bpf_sock** pointer for other program types. * * An optional *flags* (**BPF_SK_STORAGE_GET_F_CREATE**) can be * used such that a new bpf-local-storage will be * created if one does not exist. *value* can be used * together with **BPF_SK_STORAGE_GET_F_CREATE** to specify * the initial value of a bpf-local-storage. If *value* is * **NULL**, the new bpf-local-storage will be zero initialized. * Return * A bpf-local-storage pointer is returned on success. * * **NULL** if not found or there was an error in adding * a new bpf-local-storage. * * long bpf_sk_storage_delete(struct bpf_map *map, void *sk) * Description * Delete a bpf-local-storage from a *sk*. * Return * 0 on success. * * **-ENOENT** if the bpf-local-storage cannot be found. * **-EINVAL** if sk is not a fullsock (e.g. a request_sock). * * long bpf_send_signal(u32 sig) * Description * Send signal *sig* to the process of the current task. * The signal may be delivered to any of this process's threads. * Return * 0 on success or successfully queued. * * **-EBUSY** if work queue under nmi is full. * * **-EINVAL** if *sig* is invalid. * * **-EPERM** if no permission to send the *sig*. * * **-EAGAIN** if bpf program can try again. * * s64 bpf_tcp_gen_syncookie(void *sk, void *iph, u32 iph_len, struct tcphdr *th, u32 th_len) * Description * Try to issue a SYN cookie for the packet with corresponding * IP/TCP headers, *iph* and *th*, on the listening socket in *sk*. * * *iph* points to the start of the IPv4 or IPv6 header, while * *iph_len* contains **sizeof**\ (**struct iphdr**) or * **sizeof**\ (**struct ipv6hdr**). * * *th* points to the start of the TCP header, while *th_len* * contains the length of the TCP header with options (at least * **sizeof**\ (**struct tcphdr**)). * Return * On success, lower 32 bits hold the generated SYN cookie in * followed by 16 bits which hold the MSS value for that cookie, * and the top 16 bits are unused. * * On failure, the returned value is one of the following: * * **-EINVAL** SYN cookie cannot be issued due to error * * **-ENOENT** SYN cookie should not be issued (no SYN flood) * * **-EOPNOTSUPP** kernel configuration does not enable SYN cookies * * **-EPROTONOSUPPORT** IP packet version is not 4 or 6 * * long bpf_skb_output(void *ctx, struct bpf_map *map, u64 flags, void *data, u64 size) * Description * Write raw *data* blob into a special BPF perf event held by * *map* of type **BPF_MAP_TYPE_PERF_EVENT_ARRAY**. This perf * event must have the following attributes: **PERF_SAMPLE_RAW** * as **sample_type**, **PERF_TYPE_SOFTWARE** as **type**, and * **PERF_COUNT_SW_BPF_OUTPUT** as **config**. * * The *flags* are used to indicate the index in *map* for which * the value must be put, masked with **BPF_F_INDEX_MASK**. * Alternatively, *flags* can be set to **BPF_F_CURRENT_CPU** * to indicate that the index of the current CPU core should be * used. * * The value to write, of *size*, is passed through eBPF stack and * pointed by *data*. * * *ctx* is a pointer to in-kernel struct sk_buff. * * This helper is similar to **bpf_perf_event_output**\ () but * restricted to raw_tracepoint bpf programs. * Return * 0 on success, or a negative error in case of failure. * * long bpf_probe_read_user(void *dst, u32 size, const void *unsafe_ptr) * Description * Safely attempt to read *size* bytes from user space address * *unsafe_ptr* and store the data in *dst*. * Return * 0 on success, or a negative error in case of failure. * * long bpf_probe_read_kernel(void *dst, u32 size, const void *unsafe_ptr) * Description * Safely attempt to read *size* bytes from kernel space address * *unsafe_ptr* and store the data in *dst*. * Return * 0 on success, or a negative error in case of failure. * * long bpf_probe_read_user_str(void *dst, u32 size, const void *unsafe_ptr) * Description * Copy a NUL terminated string from an unsafe user address * *unsafe_ptr* to *dst*. The *size* should include the * terminating NUL byte. In case the string length is smaller than * *size*, the target is not padded with further NUL bytes. If the * string length is larger than *size*, just *size*-1 bytes are * copied and the last byte is set to NUL. * * On success, returns the number of bytes that were written, * including the terminal NUL. This makes this helper useful in * tracing programs for reading strings, and more importantly to * get its length at runtime. See the following snippet: * * :: * * SEC("kprobe/sys_open") * void bpf_sys_open(struct pt_regs *ctx) * { * char buf[PATHLEN]; // PATHLEN is defined to 256 * int res = bpf_probe_read_user_str(buf, sizeof(buf), * ctx->di); * * // Consume buf, for example push it to * // userspace via bpf_perf_event_output(); we * // can use res (the string length) as event * // size, after checking its boundaries. * } * * In comparison, using **bpf_probe_read_user**\ () helper here * instead to read the string would require to estimate the length * at compile time, and would often result in copying more memory * than necessary. * * Another useful use case is when parsing individual process * arguments or individual environment variables navigating * *current*\ **->mm->arg_start** and *current*\ * **->mm->env_start**: using this helper and the return value, * one can quickly iterate at the right offset of the memory area. * Return * On success, the strictly positive length of the output string, * including the trailing NUL character. On error, a negative * value. * * long bpf_probe_read_kernel_str(void *dst, u32 size, const void *unsafe_ptr) * Description * Copy a NUL terminated string from an unsafe kernel address *unsafe_ptr* * to *dst*. Same semantics as with **bpf_probe_read_user_str**\ () apply. * Return * On success, the strictly positive length of the string, including * the trailing NUL character. On error, a negative value. * * long bpf_tcp_send_ack(void *tp, u32 rcv_nxt) * Description * Send out a tcp-ack. *tp* is the in-kernel struct **tcp_sock**. * *rcv_nxt* is the ack_seq to be sent out. * Return * 0 on success, or a negative error in case of failure. * * long bpf_send_signal_thread(u32 sig) * Description * Send signal *sig* to the thread corresponding to the current task. * Return * 0 on success or successfully queued. * * **-EBUSY** if work queue under nmi is full. * * **-EINVAL** if *sig* is invalid. * * **-EPERM** if no permission to send the *sig*. * * **-EAGAIN** if bpf program can try again. * * u64 bpf_jiffies64(void) * Description * Obtain the 64bit jiffies * Return * The 64 bit jiffies * * long bpf_read_branch_records(struct bpf_perf_event_data *ctx, void *buf, u32 size, u64 flags) * Description * For an eBPF program attached to a perf event, retrieve the * branch records (**struct perf_branch_entry**) associated to *ctx* * and store it in the buffer pointed by *buf* up to size * *size* bytes. * Return * On success, number of bytes written to *buf*. On error, a * negative value. * * The *flags* can be set to **BPF_F_GET_BRANCH_RECORDS_SIZE** to * instead return the number of bytes required to store all the * branch entries. If this flag is set, *buf* may be NULL. * * **-EINVAL** if arguments invalid or **size** not a multiple * of **sizeof**\ (**struct perf_branch_entry**\ ). * * **-ENOENT** if architecture does not support branch records. * * long bpf_get_ns_current_pid_tgid(u64 dev, u64 ino, struct bpf_pidns_info *nsdata, u32 size) * Description * Returns 0 on success, values for *pid* and *tgid* as seen from the current * *namespace* will be returned in *nsdata*. * Return * 0 on success, or one of the following in case of failure: * * **-EINVAL** if dev and inum supplied don't match dev_t and inode number * with nsfs of current task, or if dev conversion to dev_t lost high bits. * * **-ENOENT** if pidns does not exists for the current task. * * long bpf_xdp_output(void *ctx, struct bpf_map *map, u64 flags, void *data, u64 size) * Description * Write raw *data* blob into a special BPF perf event held by * *map* of type **BPF_MAP_TYPE_PERF_EVENT_ARRAY**. This perf * event must have the following attributes: **PERF_SAMPLE_RAW** * as **sample_type**, **PERF_TYPE_SOFTWARE** as **type**, and * **PERF_COUNT_SW_BPF_OUTPUT** as **config**. * * The *flags* are used to indicate the index in *map* for which * the value must be put, masked with **BPF_F_INDEX_MASK**. * Alternatively, *flags* can be set to **BPF_F_CURRENT_CPU** * to indicate that the index of the current CPU core should be * used. * * The value to write, of *size*, is passed through eBPF stack and * pointed by *data*. * * *ctx* is a pointer to in-kernel struct xdp_buff. * * This helper is similar to **bpf_perf_eventoutput**\ () but * restricted to raw_tracepoint bpf programs. * Return * 0 on success, or a negative error in case of failure. * * u64 bpf_get_netns_cookie(void *ctx) * Description * Retrieve the cookie (generated by the kernel) of the network * namespace the input *ctx* is associated with. The network * namespace cookie remains stable for its lifetime and provides * a global identifier that can be assumed unique. If *ctx* is * NULL, then the helper returns the cookie for the initial * network namespace. The cookie itself is very similar to that * of **bpf_get_socket_cookie**\ () helper, but for network * namespaces instead of sockets. * Return * A 8-byte long opaque number. * * u64 bpf_get_current_ancestor_cgroup_id(int ancestor_level) * Description * Return id of cgroup v2 that is ancestor of the cgroup associated * with the current task at the *ancestor_level*. The root cgroup * is at *ancestor_level* zero and each step down the hierarchy * increments the level. If *ancestor_level* == level of cgroup * associated with the current task, then return value will be the * same as that of **bpf_get_current_cgroup_id**\ (). * * The helper is useful to implement policies based on cgroups * that are upper in hierarchy than immediate cgroup associated * with the current task. * * The format of returned id and helper limitations are same as in * **bpf_get_current_cgroup_id**\ (). * Return * The id is returned or 0 in case the id could not be retrieved. * * long bpf_sk_assign(struct sk_buff *skb, void *sk, u64 flags) * Description * Helper is overloaded depending on BPF program type. This * description applies to **BPF_PROG_TYPE_SCHED_CLS** and * **BPF_PROG_TYPE_SCHED_ACT** programs. * * Assign the *sk* to the *skb*. When combined with appropriate * routing configuration to receive the packet towards the socket, * will cause *skb* to be delivered to the specified socket. * Subsequent redirection of *skb* via **bpf_redirect**\ (), * **bpf_clone_redirect**\ () or other methods outside of BPF may * interfere with successful delivery to the socket. * * This operation is only valid from TC ingress path. * * The *flags* argument must be zero. * Return * 0 on success, or a negative error in case of failure: * * **-EINVAL** if specified *flags* are not supported. * * **-ENOENT** if the socket is unavailable for assignment. * * **-ENETUNREACH** if the socket is unreachable (wrong netns). * * **-EOPNOTSUPP** if the operation is not supported, for example * a call from outside of TC ingress. * * **-ESOCKTNOSUPPORT** if the socket type is not supported * (reuseport). * * long bpf_sk_assign(struct bpf_sk_lookup *ctx, struct bpf_sock *sk, u64 flags) * Description * Helper is overloaded depending on BPF program type. This * description applies to **BPF_PROG_TYPE_SK_LOOKUP** programs. * * Select the *sk* as a result of a socket lookup. * * For the operation to succeed passed socket must be compatible * with the packet description provided by the *ctx* object. * * L4 protocol (**IPPROTO_TCP** or **IPPROTO_UDP**) must * be an exact match. While IP family (**AF_INET** or * **AF_INET6**) must be compatible, that is IPv6 sockets * that are not v6-only can be selected for IPv4 packets. * * Only TCP listeners and UDP unconnected sockets can be * selected. *sk* can also be NULL to reset any previous * selection. * * *flags* argument can combination of following values: * * * **BPF_SK_LOOKUP_F_REPLACE** to override the previous * socket selection, potentially done by a BPF program * that ran before us. * * * **BPF_SK_LOOKUP_F_NO_REUSEPORT** to skip * load-balancing within reuseport group for the socket * being selected. * * On success *ctx->sk* will point to the selected socket. * * Return * 0 on success, or a negative errno in case of failure. * * * **-EAFNOSUPPORT** if socket family (*sk->family*) is * not compatible with packet family (*ctx->family*). * * * **-EEXIST** if socket has been already selected, * potentially by another program, and * **BPF_SK_LOOKUP_F_REPLACE** flag was not specified. * * * **-EINVAL** if unsupported flags were specified. * * * **-EPROTOTYPE** if socket L4 protocol * (*sk->protocol*) doesn't match packet protocol * (*ctx->protocol*). * * * **-ESOCKTNOSUPPORT** if socket is not in allowed * state (TCP listening or UDP unconnected). * * u64 bpf_ktime_get_boot_ns(void) * Description * Return the time elapsed since system boot, in nanoseconds. * Does include the time the system was suspended. * See: **clock_gettime**\ (**CLOCK_BOOTTIME**) * Return * Current *ktime*. * * long bpf_seq_printf(struct seq_file *m, const char *fmt, u32 fmt_size, const void *data, u32 data_len) * Description * **bpf_seq_printf**\ () uses seq_file **seq_printf**\ () to print * out the format string. * The *m* represents the seq_file. The *fmt* and *fmt_size* are for * the format string itself. The *data* and *data_len* are format string * arguments. The *data* are a **u64** array and corresponding format string * values are stored in the array. For strings and pointers where pointees * are accessed, only the pointer values are stored in the *data* array. * The *data_len* is the size of *data* in bytes - must be a multiple of 8. * * Formats **%s**, **%p{i,I}{4,6}** requires to read kernel memory. * Reading kernel memory may fail due to either invalid address or * valid address but requiring a major memory fault. If reading kernel memory * fails, the string for **%s** will be an empty string, and the ip * address for **%p{i,I}{4,6}** will be 0. Not returning error to * bpf program is consistent with what **bpf_trace_printk**\ () does for now. * Return * 0 on success, or a negative error in case of failure: * * **-EBUSY** if per-CPU memory copy buffer is busy, can try again * by returning 1 from bpf program. * * **-EINVAL** if arguments are invalid, or if *fmt* is invalid/unsupported. * * **-E2BIG** if *fmt* contains too many format specifiers. * * **-EOVERFLOW** if an overflow happened: The same object will be tried again. * * long bpf_seq_write(struct seq_file *m, const void *data, u32 len) * Description * **bpf_seq_write**\ () uses seq_file **seq_write**\ () to write the data. * The *m* represents the seq_file. The *data* and *len* represent the * data to write in bytes. * Return * 0 on success, or a negative error in case of failure: * * **-EOVERFLOW** if an overflow happened: The same object will be tried again. * * u64 bpf_sk_cgroup_id(void *sk) * Description * Return the cgroup v2 id of the socket *sk*. * * *sk* must be a non-**NULL** pointer to a socket, e.g. one * returned from **bpf_sk_lookup_xxx**\ (), * **bpf_sk_fullsock**\ (), etc. The format of returned id is * same as in **bpf_skb_cgroup_id**\ (). * * This helper is available only if the kernel was compiled with * the **CONFIG_SOCK_CGROUP_DATA** configuration option. * Return * The id is returned or 0 in case the id could not be retrieved. * * u64 bpf_sk_ancestor_cgroup_id(void *sk, int ancestor_level) * Description * Return id of cgroup v2 that is ancestor of cgroup associated * with the *sk* at the *ancestor_level*. The root cgroup is at * *ancestor_level* zero and each step down the hierarchy * increments the level. If *ancestor_level* == level of cgroup * associated with *sk*, then return value will be same as that * of **bpf_sk_cgroup_id**\ (). * * The helper is useful to implement policies based on cgroups * that are upper in hierarchy than immediate cgroup associated * with *sk*. * * The format of returned id and helper limitations are same as in * **bpf_sk_cgroup_id**\ (). * Return * The id is returned or 0 in case the id could not be retrieved. * * long bpf_ringbuf_output(void *ringbuf, void *data, u64 size, u64 flags) * Description * Copy *size* bytes from *data* into a ring buffer *ringbuf*. * If **BPF_RB_NO_WAKEUP** is specified in *flags*, no notification * of new data availability is sent. * If **BPF_RB_FORCE_WAKEUP** is specified in *flags*, notification * of new data availability is sent unconditionally. * If **0** is specified in *flags*, an adaptive notification * of new data availability is sent. * * An adaptive notification is a notification sent whenever the user-space * process has caught up and consumed all available payloads. In case the user-space * process is still processing a previous payload, then no notification is needed * as it will process the newly added payload automatically. * Return * 0 on success, or a negative error in case of failure. * * void *bpf_ringbuf_reserve(void *ringbuf, u64 size, u64 flags) * Description * Reserve *size* bytes of payload in a ring buffer *ringbuf*. * *flags* must be 0. * Return * Valid pointer with *size* bytes of memory available; NULL, * otherwise. * * void bpf_ringbuf_submit(void *data, u64 flags) * Description * Submit reserved ring buffer sample, pointed to by *data*. * If **BPF_RB_NO_WAKEUP** is specified in *flags*, no notification * of new data availability is sent. * If **BPF_RB_FORCE_WAKEUP** is specified in *flags*, notification * of new data availability is sent unconditionally. * If **0** is specified in *flags*, an adaptive notification * of new data availability is sent. * * See 'bpf_ringbuf_output()' for the definition of adaptive notification. * Return * Nothing. Always succeeds. * * void bpf_ringbuf_discard(void *data, u64 flags) * Description * Discard reserved ring buffer sample, pointed to by *data*. * If **BPF_RB_NO_WAKEUP** is specified in *flags*, no notification * of new data availability is sent. * If **BPF_RB_FORCE_WAKEUP** is specified in *flags*, notification * of new data availability is sent unconditionally. * If **0** is specified in *flags*, an adaptive notification * of new data availability is sent. * * See 'bpf_ringbuf_output()' for the definition of adaptive notification. * Return * Nothing. Always succeeds. * * u64 bpf_ringbuf_query(void *ringbuf, u64 flags) * Description * Query various characteristics of provided ring buffer. What * exactly is queries is determined by *flags*: * * * **BPF_RB_AVAIL_DATA**: Amount of data not yet consumed. * * **BPF_RB_RING_SIZE**: The size of ring buffer. * * **BPF_RB_CONS_POS**: Consumer position (can wrap around). * * **BPF_RB_PROD_POS**: Producer(s) position (can wrap around). * * Data returned is just a momentary snapshot of actual values * and could be inaccurate, so this facility should be used to * power heuristics and for reporting, not to make 100% correct * calculation. * Return * Requested value, or 0, if *flags* are not recognized. * * long bpf_csum_level(struct sk_buff *skb, u64 level) * Description * Change the skbs checksum level by one layer up or down, or * reset it entirely to none in order to have the stack perform * checksum validation. The level is applicable to the following * protocols: TCP, UDP, GRE, SCTP, FCOE. For example, a decap of * | ETH | IP | UDP | GUE | IP | TCP | into | ETH | IP | TCP | * through **bpf_skb_adjust_room**\ () helper with passing in * **BPF_F_ADJ_ROOM_NO_CSUM_RESET** flag would require one call * to **bpf_csum_level**\ () with **BPF_CSUM_LEVEL_DEC** since * the UDP header is removed. Similarly, an encap of the latter * into the former could be accompanied by a helper call to * **bpf_csum_level**\ () with **BPF_CSUM_LEVEL_INC** if the * skb is still intended to be processed in higher layers of the * stack instead of just egressing at tc. * * There are three supported level settings at this time: * * * **BPF_CSUM_LEVEL_INC**: Increases skb->csum_level for skbs * with CHECKSUM_UNNECESSARY. * * **BPF_CSUM_LEVEL_DEC**: Decreases skb->csum_level for skbs * with CHECKSUM_UNNECESSARY. * * **BPF_CSUM_LEVEL_RESET**: Resets skb->csum_level to 0 and * sets CHECKSUM_NONE to force checksum validation by the stack. * * **BPF_CSUM_LEVEL_QUERY**: No-op, returns the current * skb->csum_level. * Return * 0 on success, or a negative error in case of failure. In the * case of **BPF_CSUM_LEVEL_QUERY**, the current skb->csum_level * is returned or the error code -EACCES in case the skb is not * subject to CHECKSUM_UNNECESSARY. * * struct tcp6_sock *bpf_skc_to_tcp6_sock(void *sk) * Description * Dynamically cast a *sk* pointer to a *tcp6_sock* pointer. * Return * *sk* if casting is valid, or **NULL** otherwise. * * struct tcp_sock *bpf_skc_to_tcp_sock(void *sk) * Description * Dynamically cast a *sk* pointer to a *tcp_sock* pointer. * Return * *sk* if casting is valid, or **NULL** otherwise. * * struct tcp_timewait_sock *bpf_skc_to_tcp_timewait_sock(void *sk) * Description * Dynamically cast a *sk* pointer to a *tcp_timewait_sock* pointer. * Return * *sk* if casting is valid, or **NULL** otherwise. * * struct tcp_request_sock *bpf_skc_to_tcp_request_sock(void *sk) * Description * Dynamically cast a *sk* pointer to a *tcp_request_sock* pointer. * Return * *sk* if casting is valid, or **NULL** otherwise. * * struct udp6_sock *bpf_skc_to_udp6_sock(void *sk) * Description * Dynamically cast a *sk* pointer to a *udp6_sock* pointer. * Return * *sk* if casting is valid, or **NULL** otherwise. * * long bpf_get_task_stack(struct task_struct *task, void *buf, u32 size, u64 flags) * Description * Return a user or a kernel stack in bpf program provided buffer. * To achieve this, the helper needs *task*, which is a valid * pointer to **struct task_struct**. To store the stacktrace, the * bpf program provides *buf* with a nonnegative *size*. * * The last argument, *flags*, holds the number of stack frames to * skip (from 0 to 255), masked with * **BPF_F_SKIP_FIELD_MASK**. The next bits can be used to set * the following flags: * * **BPF_F_USER_STACK** * Collect a user space stack instead of a kernel stack. * **BPF_F_USER_BUILD_ID** * Collect buildid+offset instead of ips for user stack, * only valid if **BPF_F_USER_STACK** is also specified. * * **bpf_get_task_stack**\ () can collect up to * **PERF_MAX_STACK_DEPTH** both kernel and user frames, subject * to sufficient large buffer size. Note that * this limit can be controlled with the **sysctl** program, and * that it should be manually increased in order to profile long * user stacks (such as stacks for Java programs). To do so, use: * * :: * * # sysctl kernel.perf_event_max_stack= * Return * The non-negative copied *buf* length equal to or less than * *size* on success, or a negative error in case of failure. * * long bpf_load_hdr_opt(struct bpf_sock_ops *skops, void *searchby_res, u32 len, u64 flags) * Description * Load header option. Support reading a particular TCP header * option for bpf program (**BPF_PROG_TYPE_SOCK_OPS**). * * If *flags* is 0, it will search the option from the * *skops*\ **->skb_data**. The comment in **struct bpf_sock_ops** * has details on what skb_data contains under different * *skops*\ **->op**. * * The first byte of the *searchby_res* specifies the * kind that it wants to search. * * If the searching kind is an experimental kind * (i.e. 253 or 254 according to RFC6994). It also * needs to specify the "magic" which is either * 2 bytes or 4 bytes. It then also needs to * specify the size of the magic by using * the 2nd byte which is "kind-length" of a TCP * header option and the "kind-length" also * includes the first 2 bytes "kind" and "kind-length" * itself as a normal TCP header option also does. * * For example, to search experimental kind 254 with * 2 byte magic 0xeB9F, the searchby_res should be * [ 254, 4, 0xeB, 0x9F, 0, 0, .... 0 ]. * * To search for the standard window scale option (3), * the *searchby_res* should be [ 3, 0, 0, .... 0 ]. * Note, kind-length must be 0 for regular option. * * Searching for No-Op (0) and End-of-Option-List (1) are * not supported. * * *len* must be at least 2 bytes which is the minimal size * of a header option. * * Supported flags: * * * **BPF_LOAD_HDR_OPT_TCP_SYN** to search from the * saved_syn packet or the just-received syn packet. * * Return * > 0 when found, the header option is copied to *searchby_res*. * The return value is the total length copied. On failure, a * negative error code is returned: * * **-EINVAL** if a parameter is invalid. * * **-ENOMSG** if the option is not found. * * **-ENOENT** if no syn packet is available when * **BPF_LOAD_HDR_OPT_TCP_SYN** is used. * * **-ENOSPC** if there is not enough space. Only *len* number of * bytes are copied. * * **-EFAULT** on failure to parse the header options in the * packet. * * **-EPERM** if the helper cannot be used under the current * *skops*\ **->op**. * * long bpf_store_hdr_opt(struct bpf_sock_ops *skops, const void *from, u32 len, u64 flags) * Description * Store header option. The data will be copied * from buffer *from* with length *len* to the TCP header. * * The buffer *from* should have the whole option that * includes the kind, kind-length, and the actual * option data. The *len* must be at least kind-length * long. The kind-length does not have to be 4 byte * aligned. The kernel will take care of the padding * and setting the 4 bytes aligned value to th->doff. * * This helper will check for duplicated option * by searching the same option in the outgoing skb. * * This helper can only be called during * **BPF_SOCK_OPS_WRITE_HDR_OPT_CB**. * * Return * 0 on success, or negative error in case of failure: * * **-EINVAL** If param is invalid. * * **-ENOSPC** if there is not enough space in the header. * Nothing has been written * * **-EEXIST** if the option already exists. * * **-EFAULT** on failure to parse the existing header options. * * **-EPERM** if the helper cannot be used under the current * *skops*\ **->op**. * * long bpf_reserve_hdr_opt(struct bpf_sock_ops *skops, u32 len, u64 flags) * Description * Reserve *len* bytes for the bpf header option. The * space will be used by **bpf_store_hdr_opt**\ () later in * **BPF_SOCK_OPS_WRITE_HDR_OPT_CB**. * * If **bpf_reserve_hdr_opt**\ () is called multiple times, * the total number of bytes will be reserved. * * This helper can only be called during * **BPF_SOCK_OPS_HDR_OPT_LEN_CB**. * * Return * 0 on success, or negative error in case of failure: * * **-EINVAL** if a parameter is invalid. * * **-ENOSPC** if there is not enough space in the header. * * **-EPERM** if the helper cannot be used under the current * *skops*\ **->op**. * * void *bpf_inode_storage_get(struct bpf_map *map, void *inode, void *value, u64 flags) * Description * Get a bpf_local_storage from an *inode*. * * Logically, it could be thought of as getting the value from * a *map* with *inode* as the **key**. From this * perspective, the usage is not much different from * **bpf_map_lookup_elem**\ (*map*, **&**\ *inode*) except this * helper enforces the key must be an inode and the map must also * be a **BPF_MAP_TYPE_INODE_STORAGE**. * * Underneath, the value is stored locally at *inode* instead of * the *map*. The *map* is used as the bpf-local-storage * "type". The bpf-local-storage "type" (i.e. the *map*) is * searched against all bpf_local_storage residing at *inode*. * * An optional *flags* (**BPF_LOCAL_STORAGE_GET_F_CREATE**) can be * used such that a new bpf_local_storage will be * created if one does not exist. *value* can be used * together with **BPF_LOCAL_STORAGE_GET_F_CREATE** to specify * the initial value of a bpf_local_storage. If *value* is * **NULL**, the new bpf_local_storage will be zero initialized. * Return * A bpf_local_storage pointer is returned on success. * * **NULL** if not found or there was an error in adding * a new bpf_local_storage. * * int bpf_inode_storage_delete(struct bpf_map *map, void *inode) * Description * Delete a bpf_local_storage from an *inode*. * Return * 0 on success. * * **-ENOENT** if the bpf_local_storage cannot be found. * * long bpf_d_path(struct path *path, char *buf, u32 sz) * Description * Return full path for given **struct path** object, which * needs to be the kernel BTF *path* object. The path is * returned in the provided buffer *buf* of size *sz* and * is zero terminated. * * Return * On success, the strictly positive length of the string, * including the trailing NUL character. On error, a negative * value. * * long bpf_copy_from_user(void *dst, u32 size, const void *user_ptr) * Description * Read *size* bytes from user space address *user_ptr* and store * the data in *dst*. This is a wrapper of **copy_from_user**\ (). * Return * 0 on success, or a negative error in case of failure. * * long bpf_snprintf_btf(char *str, u32 str_size, struct btf_ptr *ptr, u32 btf_ptr_size, u64 flags) * Description * Use BTF to store a string representation of *ptr*->ptr in *str*, * using *ptr*->type_id. This value should specify the type * that *ptr*->ptr points to. LLVM __builtin_btf_type_id(type, 1) * can be used to look up vmlinux BTF type ids. Traversing the * data structure using BTF, the type information and values are * stored in the first *str_size* - 1 bytes of *str*. Safe copy of * the pointer data is carried out to avoid kernel crashes during * operation. Smaller types can use string space on the stack; * larger programs can use map data to store the string * representation. * * The string can be subsequently shared with userspace via * bpf_perf_event_output() or ring buffer interfaces. * bpf_trace_printk() is to be avoided as it places too small * a limit on string size to be useful. * * *flags* is a combination of * * **BTF_F_COMPACT** * no formatting around type information * **BTF_F_NONAME** * no struct/union member names/types * **BTF_F_PTR_RAW** * show raw (unobfuscated) pointer values; * equivalent to printk specifier %px. * **BTF_F_ZERO** * show zero-valued struct/union members; they * are not displayed by default * * Return * The number of bytes that were written (or would have been * written if output had to be truncated due to string size), * or a negative error in cases of failure. * * long bpf_seq_printf_btf(struct seq_file *m, struct btf_ptr *ptr, u32 ptr_size, u64 flags) * Description * Use BTF to write to seq_write a string representation of * *ptr*->ptr, using *ptr*->type_id as per bpf_snprintf_btf(). * *flags* are identical to those used for bpf_snprintf_btf. * Return * 0 on success or a negative error in case of failure. * * u64 bpf_skb_cgroup_classid(struct sk_buff *skb) * Description * See **bpf_get_cgroup_classid**\ () for the main description. * This helper differs from **bpf_get_cgroup_classid**\ () in that * the cgroup v1 net_cls class is retrieved only from the *skb*'s * associated socket instead of the current process. * Return * The id is returned or 0 in case the id could not be retrieved. * * long bpf_redirect_neigh(u32 ifindex, struct bpf_redir_neigh *params, int plen, u64 flags) * Description * Redirect the packet to another net device of index *ifindex* * and fill in L2 addresses from neighboring subsystem. This helper * is somewhat similar to **bpf_redirect**\ (), except that it * populates L2 addresses as well, meaning, internally, the helper * relies on the neighbor lookup for the L2 address of the nexthop. * * The helper will perform a FIB lookup based on the skb's * networking header to get the address of the next hop, unless * this is supplied by the caller in the *params* argument. The * *plen* argument indicates the len of *params* and should be set * to 0 if *params* is NULL. * * The *flags* argument is reserved and must be 0. The helper is * currently only supported for tc BPF program types, and enabled * for IPv4 and IPv6 protocols. * Return * The helper returns **TC_ACT_REDIRECT** on success or * **TC_ACT_SHOT** on error. * * void *bpf_per_cpu_ptr(const void *percpu_ptr, u32 cpu) * Description * Take a pointer to a percpu ksym, *percpu_ptr*, and return a * pointer to the percpu kernel variable on *cpu*. A ksym is an * extern variable decorated with '__ksym'. For ksym, there is a * global var (either static or global) defined of the same name * in the kernel. The ksym is percpu if the global var is percpu. * The returned pointer points to the global percpu var on *cpu*. * * bpf_per_cpu_ptr() has the same semantic as per_cpu_ptr() in the * kernel, except that bpf_per_cpu_ptr() may return NULL. This * happens if *cpu* is larger than nr_cpu_ids. The caller of * bpf_per_cpu_ptr() must check the returned value. * Return * A pointer pointing to the kernel percpu variable on *cpu*, or * NULL, if *cpu* is invalid. * * void *bpf_this_cpu_ptr(const void *percpu_ptr) * Description * Take a pointer to a percpu ksym, *percpu_ptr*, and return a * pointer to the percpu kernel variable on this cpu. See the * description of 'ksym' in **bpf_per_cpu_ptr**\ (). * * bpf_this_cpu_ptr() has the same semantic as this_cpu_ptr() in * the kernel. Different from **bpf_per_cpu_ptr**\ (), it would * never return NULL. * Return * A pointer pointing to the kernel percpu variable on this cpu. * * long bpf_redirect_peer(u32 ifindex, u64 flags) * Description * Redirect the packet to another net device of index *ifindex*. * This helper is somewhat similar to **bpf_redirect**\ (), except * that the redirection happens to the *ifindex*' peer device and * the netns switch takes place from ingress to ingress without * going through the CPU's backlog queue. * * The *flags* argument is reserved and must be 0. The helper is * currently only supported for tc BPF program types at the ingress * hook and for veth device types. The peer device must reside in a * different network namespace. * Return * The helper returns **TC_ACT_REDIRECT** on success or * **TC_ACT_SHOT** on error. * * void *bpf_task_storage_get(struct bpf_map *map, struct task_struct *task, void *value, u64 flags) * Description * Get a bpf_local_storage from the *task*. * * Logically, it could be thought of as getting the value from * a *map* with *task* as the **key**. From this * perspective, the usage is not much different from * **bpf_map_lookup_elem**\ (*map*, **&**\ *task*) except this * helper enforces the key must be a task_struct and the map must also * be a **BPF_MAP_TYPE_TASK_STORAGE**. * * Underneath, the value is stored locally at *task* instead of * the *map*. The *map* is used as the bpf-local-storage * "type". The bpf-local-storage "type" (i.e. the *map*) is * searched against all bpf_local_storage residing at *task*. * * An optional *flags* (**BPF_LOCAL_STORAGE_GET_F_CREATE**) can be * used such that a new bpf_local_storage will be * created if one does not exist. *value* can be used * together with **BPF_LOCAL_STORAGE_GET_F_CREATE** to specify * the initial value of a bpf_local_storage. If *value* is * **NULL**, the new bpf_local_storage will be zero initialized. * Return * A bpf_local_storage pointer is returned on success. * * **NULL** if not found or there was an error in adding * a new bpf_local_storage. * * long bpf_task_storage_delete(struct bpf_map *map, struct task_struct *task) * Description * Delete a bpf_local_storage from a *task*. * Return * 0 on success. * * **-ENOENT** if the bpf_local_storage cannot be found. * * struct task_struct *bpf_get_current_task_btf(void) * Description * Return a BTF pointer to the "current" task. * This pointer can also be used in helpers that accept an * *ARG_PTR_TO_BTF_ID* of type *task_struct*. * Return * Pointer to the current task. * * long bpf_bprm_opts_set(struct linux_binprm *bprm, u64 flags) * Description * Set or clear certain options on *bprm*: * * **BPF_F_BPRM_SECUREEXEC** Set the secureexec bit * which sets the **AT_SECURE** auxv for glibc. The bit * is cleared if the flag is not specified. * Return * **-EINVAL** if invalid *flags* are passed, zero otherwise. * * u64 bpf_ktime_get_coarse_ns(void) * Description * Return a coarse-grained version of the time elapsed since * system boot, in nanoseconds. Does not include time the system * was suspended. * * See: **clock_gettime**\ (**CLOCK_MONOTONIC_COARSE**) * Return * Current *ktime*. * * long bpf_ima_inode_hash(struct inode *inode, void *dst, u32 size) * Description * Returns the stored IMA hash of the *inode* (if it's available). * If the hash is larger than *size*, then only *size* * bytes will be copied to *dst* * Return * The **hash_algo** is returned on success, * **-EOPNOTSUP** if IMA is disabled or **-EINVAL** if * invalid arguments are passed. * * struct socket *bpf_sock_from_file(struct file *file) * Description * If the given file represents a socket, returns the associated * socket. * Return * A pointer to a struct socket on success or NULL if the file is * not a socket. * * long bpf_check_mtu(void *ctx, u32 ifindex, u32 *mtu_len, s32 len_diff, u64 flags) * Description * Check packet size against exceeding MTU of net device (based * on *ifindex*). This helper will likely be used in combination * with helpers that adjust/change the packet size. * * The argument *len_diff* can be used for querying with a planned * size change. This allows to check MTU prior to changing packet * ctx. Providing a *len_diff* adjustment that is larger than the * actual packet size (resulting in negative packet size) will in * principle not exceed the MTU, which is why it is not considered * a failure. Other BPF helpers are needed for performing the * planned size change; therefore the responsibility for catching * a negative packet size belongs in those helpers. * * Specifying *ifindex* zero means the MTU check is performed * against the current net device. This is practical if this isn't * used prior to redirect. * * On input *mtu_len* must be a valid pointer, else verifier will * reject BPF program. If the value *mtu_len* is initialized to * zero then the ctx packet size is use. When value *mtu_len* is * provided as input this specify the L3 length that the MTU check * is done against. Remember XDP and TC length operate at L2, but * this value is L3 as this correlate to MTU and IP-header tot_len * values which are L3 (similar behavior as bpf_fib_lookup). * * The Linux kernel route table can configure MTUs on a more * specific per route level, which is not provided by this helper. * For route level MTU checks use the **bpf_fib_lookup**\ () * helper. * * *ctx* is either **struct xdp_md** for XDP programs or * **struct sk_buff** for tc cls_act programs. * * The *flags* argument can be a combination of one or more of the * following values: * * **BPF_MTU_CHK_SEGS** * This flag will only works for *ctx* **struct sk_buff**. * If packet context contains extra packet segment buffers * (often knows as GSO skb), then MTU check is harder to * check at this point, because in transmit path it is * possible for the skb packet to get re-segmented * (depending on net device features). This could still be * a MTU violation, so this flag enables performing MTU * check against segments, with a different violation * return code to tell it apart. Check cannot use len_diff. * * On return *mtu_len* pointer contains the MTU value of the net * device. Remember the net device configured MTU is the L3 size, * which is returned here and XDP and TC length operate at L2. * Helper take this into account for you, but remember when using * MTU value in your BPF-code. * * Return * * 0 on success, and populate MTU value in *mtu_len* pointer. * * * < 0 if any input argument is invalid (*mtu_len* not updated) * * MTU violations return positive values, but also populate MTU * value in *mtu_len* pointer, as this can be needed for * implementing PMTU handing: * * * **BPF_MTU_CHK_RET_FRAG_NEEDED** * * **BPF_MTU_CHK_RET_SEGS_TOOBIG** * * long bpf_for_each_map_elem(struct bpf_map *map, void *callback_fn, void *callback_ctx, u64 flags) * Description * For each element in **map**, call **callback_fn** function with * **map**, **callback_ctx** and other map-specific parameters. * The **callback_fn** should be a static function and * the **callback_ctx** should be a pointer to the stack. * The **flags** is used to control certain aspects of the helper. * Currently, the **flags** must be 0. * * The following are a list of supported map types and their * respective expected callback signatures: * * BPF_MAP_TYPE_HASH, BPF_MAP_TYPE_PERCPU_HASH, * BPF_MAP_TYPE_LRU_HASH, BPF_MAP_TYPE_LRU_PERCPU_HASH, * BPF_MAP_TYPE_ARRAY, BPF_MAP_TYPE_PERCPU_ARRAY * * long (\*callback_fn)(struct bpf_map \*map, const void \*key, void \*value, void \*ctx); * * For per_cpu maps, the map_value is the value on the cpu where the * bpf_prog is running. * * If **callback_fn** return 0, the helper will continue to the next * element. If return value is 1, the helper will skip the rest of * elements and return. Other return values are not used now. * * Return * The number of traversed map elements for success, **-EINVAL** for * invalid **flags**. * * long bpf_snprintf(char *str, u32 str_size, const char *fmt, u64 *data, u32 data_len) * Description * Outputs a string into the **str** buffer of size **str_size** * based on a format string stored in a read-only map pointed by * **fmt**. * * Each format specifier in **fmt** corresponds to one u64 element * in the **data** array. For strings and pointers where pointees * are accessed, only the pointer values are stored in the *data* * array. The *data_len* is the size of *data* in bytes - must be * a multiple of 8. * * Formats **%s** and **%p{i,I}{4,6}** require to read kernel * memory. Reading kernel memory may fail due to either invalid * address or valid address but requiring a major memory fault. If * reading kernel memory fails, the string for **%s** will be an * empty string, and the ip address for **%p{i,I}{4,6}** will be 0. * Not returning error to bpf program is consistent with what * **bpf_trace_printk**\ () does for now. * * Return * The strictly positive length of the formatted string, including * the trailing zero character. If the return value is greater than * **str_size**, **str** contains a truncated string, guaranteed to * be zero-terminated except when **str_size** is 0. * * Or **-EBUSY** if the per-CPU memory copy buffer is busy. * * long bpf_sys_bpf(u32 cmd, void *attr, u32 attr_size) * Description * Execute bpf syscall with given arguments. * Return * A syscall result. * * long bpf_btf_find_by_name_kind(char *name, int name_sz, u32 kind, int flags) * Description * Find BTF type with given name and kind in vmlinux BTF or in module's BTFs. * Return * Returns btf_id and btf_obj_fd in lower and upper 32 bits. * * long bpf_sys_close(u32 fd) * Description * Execute close syscall for given FD. * Return * A syscall result. * * long bpf_timer_init(struct bpf_timer *timer, struct bpf_map *map, u64 flags) * Description * Initialize the timer. * First 4 bits of *flags* specify clockid. * Only CLOCK_MONOTONIC, CLOCK_REALTIME, CLOCK_BOOTTIME are allowed. * All other bits of *flags* are reserved. * The verifier will reject the program if *timer* is not from * the same *map*. * Return * 0 on success. * **-EBUSY** if *timer* is already initialized. * **-EINVAL** if invalid *flags* are passed. * **-EPERM** if *timer* is in a map that doesn't have any user references. * The user space should either hold a file descriptor to a map with timers * or pin such map in bpffs. When map is unpinned or file descriptor is * closed all timers in the map will be cancelled and freed. * * long bpf_timer_set_callback(struct bpf_timer *timer, void *callback_fn) * Description * Configure the timer to call *callback_fn* static function. * Return * 0 on success. * **-EINVAL** if *timer* was not initialized with bpf_timer_init() earlier. * **-EPERM** if *timer* is in a map that doesn't have any user references. * The user space should either hold a file descriptor to a map with timers * or pin such map in bpffs. When map is unpinned or file descriptor is * closed all timers in the map will be cancelled and freed. * * long bpf_timer_start(struct bpf_timer *timer, u64 nsecs, u64 flags) * Description * Set timer expiration N nanoseconds from the current time. The * configured callback will be invoked in soft irq context on some cpu * and will not repeat unless another bpf_timer_start() is made. * In such case the next invocation can migrate to a different cpu. * Since struct bpf_timer is a field inside map element the map * owns the timer. The bpf_timer_set_callback() will increment refcnt * of BPF program to make sure that callback_fn code stays valid. * When user space reference to a map reaches zero all timers * in a map are cancelled and corresponding program's refcnts are * decremented. This is done to make sure that Ctrl-C of a user * process doesn't leave any timers running. If map is pinned in * bpffs the callback_fn can re-arm itself indefinitely. * bpf_map_update/delete_elem() helpers and user space sys_bpf commands * cancel and free the timer in the given map element. * The map can contain timers that invoke callback_fn-s from different * programs. The same callback_fn can serve different timers from * different maps if key/value layout matches across maps. * Every bpf_timer_set_callback() can have different callback_fn. * * *flags* can be one of: * * **BPF_F_TIMER_ABS** * Start the timer in absolute expire value instead of the * default relative one. * * Return * 0 on success. * **-EINVAL** if *timer* was not initialized with bpf_timer_init() earlier * or invalid *flags* are passed. * * long bpf_timer_cancel(struct bpf_timer *timer) * Description * Cancel the timer and wait for callback_fn to finish if it was running. * Return * 0 if the timer was not active. * 1 if the timer was active. * **-EINVAL** if *timer* was not initialized with bpf_timer_init() earlier. * **-EDEADLK** if callback_fn tried to call bpf_timer_cancel() on its * own timer which would have led to a deadlock otherwise. * * u64 bpf_get_func_ip(void *ctx) * Description * Get address of the traced function (for tracing and kprobe programs). * Return * Address of the traced function. * 0 for kprobes placed within the function (not at the entry). * * u64 bpf_get_attach_cookie(void *ctx) * Description * Get bpf_cookie value provided (optionally) during the program * attachment. It might be different for each individual * attachment, even if BPF program itself is the same. * Expects BPF program context *ctx* as a first argument. * * Supported for the following program types: * - kprobe/uprobe; * - tracepoint; * - perf_event. * Return * Value specified by user at BPF link creation/attachment time * or 0, if it was not specified. * * long bpf_task_pt_regs(struct task_struct *task) * Description * Get the struct pt_regs associated with **task**. * Return * A pointer to struct pt_regs. * * long bpf_get_branch_snapshot(void *entries, u32 size, u64 flags) * Description * Get branch trace from hardware engines like Intel LBR. The * hardware engine is stopped shortly after the helper is * called. Therefore, the user need to filter branch entries * based on the actual use case. To capture branch trace * before the trigger point of the BPF program, the helper * should be called at the beginning of the BPF program. * * The data is stored as struct perf_branch_entry into output * buffer *entries*. *size* is the size of *entries* in bytes. * *flags* is reserved for now and must be zero. * * Return * On success, number of bytes written to *buf*. On error, a * negative value. * * **-EINVAL** if *flags* is not zero. * * **-ENOENT** if architecture does not support branch records. * * long bpf_trace_vprintk(const char *fmt, u32 fmt_size, const void *data, u32 data_len) * Description * Behaves like **bpf_trace_printk**\ () helper, but takes an array of u64 * to format and can handle more format args as a result. * * Arguments are to be used as in **bpf_seq_printf**\ () helper. * Return * The number of bytes written to the buffer, or a negative error * in case of failure. * * struct unix_sock *bpf_skc_to_unix_sock(void *sk) * Description * Dynamically cast a *sk* pointer to a *unix_sock* pointer. * Return * *sk* if casting is valid, or **NULL** otherwise. * * long bpf_kallsyms_lookup_name(const char *name, int name_sz, int flags, u64 *res) * Description * Get the address of a kernel symbol, returned in *res*. *res* is * set to 0 if the symbol is not found. * Return * On success, zero. On error, a negative value. * * **-EINVAL** if *flags* is not zero. * * **-EINVAL** if string *name* is not the same size as *name_sz*. * * **-ENOENT** if symbol is not found. * * **-EPERM** if caller does not have permission to obtain kernel address. * * long bpf_find_vma(struct task_struct *task, u64 addr, void *callback_fn, void *callback_ctx, u64 flags) * Description * Find vma of *task* that contains *addr*, call *callback_fn* * function with *task*, *vma*, and *callback_ctx*. * The *callback_fn* should be a static function and * the *callback_ctx* should be a pointer to the stack. * The *flags* is used to control certain aspects of the helper. * Currently, the *flags* must be 0. * * The expected callback signature is * * long (\*callback_fn)(struct task_struct \*task, struct vm_area_struct \*vma, void \*callback_ctx); * * Return * 0 on success. * **-ENOENT** if *task->mm* is NULL, or no vma contains *addr*. * **-EBUSY** if failed to try lock mmap_lock. * **-EINVAL** for invalid **flags**. * * long bpf_loop(u32 nr_loops, void *callback_fn, void *callback_ctx, u64 flags) * Description * For **nr_loops**, call **callback_fn** function * with **callback_ctx** as the context parameter. * The **callback_fn** should be a static function and * the **callback_ctx** should be a pointer to the stack. * The **flags** is used to control certain aspects of the helper. * Currently, the **flags** must be 0. Currently, nr_loops is * limited to 1 << 23 (~8 million) loops. * * long (\*callback_fn)(u32 index, void \*ctx); * * where **index** is the current index in the loop. The index * is zero-indexed. * * If **callback_fn** returns 0, the helper will continue to the next * loop. If return value is 1, the helper will skip the rest of * the loops and return. Other return values are not used now, * and will be rejected by the verifier. * * Return * The number of loops performed, **-EINVAL** for invalid **flags**, * **-E2BIG** if **nr_loops** exceeds the maximum number of loops. * * long bpf_strncmp(const char *s1, u32 s1_sz, const char *s2) * Description * Do strncmp() between **s1** and **s2**. **s1** doesn't need * to be null-terminated and **s1_sz** is the maximum storage * size of **s1**. **s2** must be a read-only string. * Return * An integer less than, equal to, or greater than zero * if the first **s1_sz** bytes of **s1** is found to be * less than, to match, or be greater than **s2**. * * long bpf_get_func_arg(void *ctx, u32 n, u64 *value) * Description * Get **n**-th argument register (zero based) of the traced function (for tracing programs) * returned in **value**. * * Return * 0 on success. * **-EINVAL** if n >= argument register count of traced function. * * long bpf_get_func_ret(void *ctx, u64 *value) * Description * Get return value of the traced function (for tracing programs) * in **value**. * * Return * 0 on success. * **-EOPNOTSUPP** for tracing programs other than BPF_TRACE_FEXIT or BPF_MODIFY_RETURN. * * long bpf_get_func_arg_cnt(void *ctx) * Description * Get number of registers of the traced function (for tracing programs) where * function arguments are stored in these registers. * * Return * The number of argument registers of the traced function. * * int bpf_get_retval(void) * Description * Get the BPF program's return value that will be returned to the upper layers. * * This helper is currently supported by cgroup programs and only by the hooks * where BPF program's return value is returned to the userspace via errno. * Return * The BPF program's return value. * * int bpf_set_retval(int retval) * Description * Set the BPF program's return value that will be returned to the upper layers. * * This helper is currently supported by cgroup programs and only by the hooks * where BPF program's return value is returned to the userspace via errno. * * Note that there is the following corner case where the program exports an error * via bpf_set_retval but signals success via 'return 1': * * bpf_set_retval(-EPERM); * return 1; * * In this case, the BPF program's return value will use helper's -EPERM. This * still holds true for cgroup/bind{4,6} which supports extra 'return 3' success case. * * Return * 0 on success, or a negative error in case of failure. * * u64 bpf_xdp_get_buff_len(struct xdp_buff *xdp_md) * Description * Get the total size of a given xdp buff (linear and paged area) * Return * The total size of a given xdp buffer. * * long bpf_xdp_load_bytes(struct xdp_buff *xdp_md, u32 offset, void *buf, u32 len) * Description * This helper is provided as an easy way to load data from a * xdp buffer. It can be used to load *len* bytes from *offset* from * the frame associated to *xdp_md*, into the buffer pointed by * *buf*. * Return * 0 on success, or a negative error in case of failure. * * long bpf_xdp_store_bytes(struct xdp_buff *xdp_md, u32 offset, void *buf, u32 len) * Description * Store *len* bytes from buffer *buf* into the frame * associated to *xdp_md*, at *offset*. * Return * 0 on success, or a negative error in case of failure. * * long bpf_copy_from_user_task(void *dst, u32 size, const void *user_ptr, struct task_struct *tsk, u64 flags) * Description * Read *size* bytes from user space address *user_ptr* in *tsk*'s * address space, and stores the data in *dst*. *flags* is not * used yet and is provided for future extensibility. This helper * can only be used by sleepable programs. * Return * 0 on success, or a negative error in case of failure. On error * *dst* buffer is zeroed out. * * long bpf_skb_set_tstamp(struct sk_buff *skb, u64 tstamp, u32 tstamp_type) * Description * Change the __sk_buff->tstamp_type to *tstamp_type* * and set *tstamp* to the __sk_buff->tstamp together. * * If there is no need to change the __sk_buff->tstamp_type, * the tstamp value can be directly written to __sk_buff->tstamp * instead. * * BPF_SKB_TSTAMP_DELIVERY_MONO is the only tstamp that * will be kept during bpf_redirect_*(). A non zero * *tstamp* must be used with the BPF_SKB_TSTAMP_DELIVERY_MONO * *tstamp_type*. * * A BPF_SKB_TSTAMP_UNSPEC *tstamp_type* can only be used * with a zero *tstamp*. * * Only IPv4 and IPv6 skb->protocol are supported. * * This function is most useful when it needs to set a * mono delivery time to __sk_buff->tstamp and then * bpf_redirect_*() to the egress of an iface. For example, * changing the (rcv) timestamp in __sk_buff->tstamp at * ingress to a mono delivery time and then bpf_redirect_*() * to sch_fq@phy-dev. * Return * 0 on success. * **-EINVAL** for invalid input * **-EOPNOTSUPP** for unsupported protocol * * long bpf_ima_file_hash(struct file *file, void *dst, u32 size) * Description * Returns a calculated IMA hash of the *file*. * If the hash is larger than *size*, then only *size* * bytes will be copied to *dst* * Return * The **hash_algo** is returned on success, * **-EOPNOTSUP** if the hash calculation failed or **-EINVAL** if * invalid arguments are passed. * * void *bpf_kptr_xchg(void *map_value, void *ptr) * Description * Exchange kptr at pointer *map_value* with *ptr*, and return the * old value. *ptr* can be NULL, otherwise it must be a referenced * pointer which will be released when this helper is called. * Return * The old value of kptr (which can be NULL). The returned pointer * if not NULL, is a reference which must be released using its * corresponding release function, or moved into a BPF map before * program exit. * * void *bpf_map_lookup_percpu_elem(struct bpf_map *map, const void *key, u32 cpu) * Description * Perform a lookup in *percpu map* for an entry associated to * *key* on *cpu*. * Return * Map value associated to *key* on *cpu*, or **NULL** if no entry * was found or *cpu* is invalid. * * struct mptcp_sock *bpf_skc_to_mptcp_sock(void *sk) * Description * Dynamically cast a *sk* pointer to a *mptcp_sock* pointer. * Return * *sk* if casting is valid, or **NULL** otherwise. * * long bpf_dynptr_from_mem(void *data, u32 size, u64 flags, struct bpf_dynptr *ptr) * Description * Get a dynptr to local memory *data*. * * *data* must be a ptr to a map value. * The maximum *size* supported is DYNPTR_MAX_SIZE. * *flags* is currently unused. * Return * 0 on success, -E2BIG if the size exceeds DYNPTR_MAX_SIZE, * -EINVAL if flags is not 0. * * long bpf_ringbuf_reserve_dynptr(void *ringbuf, u32 size, u64 flags, struct bpf_dynptr *ptr) * Description * Reserve *size* bytes of payload in a ring buffer *ringbuf* * through the dynptr interface. *flags* must be 0. * * Please note that a corresponding bpf_ringbuf_submit_dynptr or * bpf_ringbuf_discard_dynptr must be called on *ptr*, even if the * reservation fails. This is enforced by the verifier. * Return * 0 on success, or a negative error in case of failure. * * void bpf_ringbuf_submit_dynptr(struct bpf_dynptr *ptr, u64 flags) * Description * Submit reserved ring buffer sample, pointed to by *data*, * through the dynptr interface. This is a no-op if the dynptr is * invalid/null. * * For more information on *flags*, please see * 'bpf_ringbuf_submit'. * Return * Nothing. Always succeeds. * * void bpf_ringbuf_discard_dynptr(struct bpf_dynptr *ptr, u64 flags) * Description * Discard reserved ring buffer sample through the dynptr * interface. This is a no-op if the dynptr is invalid/null. * * For more information on *flags*, please see * 'bpf_ringbuf_discard'. * Return * Nothing. Always succeeds. * * long bpf_dynptr_read(void *dst, u32 len, const struct bpf_dynptr *src, u32 offset, u64 flags) * Description * Read *len* bytes from *src* into *dst*, starting from *offset* * into *src*. * *flags* is currently unused. * Return * 0 on success, -E2BIG if *offset* + *len* exceeds the length * of *src*'s data, -EINVAL if *src* is an invalid dynptr or if * *flags* is not 0. * * long bpf_dynptr_write(const struct bpf_dynptr *dst, u32 offset, void *src, u32 len, u64 flags) * Description * Write *len* bytes from *src* into *dst*, starting from *offset* * into *dst*. * * *flags* must be 0 except for skb-type dynptrs. * * For skb-type dynptrs: * * All data slices of the dynptr are automatically * invalidated after **bpf_dynptr_write**\ (). This is * because writing may pull the skb and change the * underlying packet buffer. * * * For *flags*, please see the flags accepted by * **bpf_skb_store_bytes**\ (). * Return * 0 on success, -E2BIG if *offset* + *len* exceeds the length * of *dst*'s data, -EINVAL if *dst* is an invalid dynptr or if *dst* * is a read-only dynptr or if *flags* is not correct. For skb-type dynptrs, * other errors correspond to errors returned by **bpf_skb_store_bytes**\ (). * * void *bpf_dynptr_data(const struct bpf_dynptr *ptr, u32 offset, u32 len) * Description * Get a pointer to the underlying dynptr data. * * *len* must be a statically known value. The returned data slice * is invalidated whenever the dynptr is invalidated. * * skb and xdp type dynptrs may not use bpf_dynptr_data. They should * instead use bpf_dynptr_slice and bpf_dynptr_slice_rdwr. * Return * Pointer to the underlying dynptr data, NULL if the dynptr is * read-only, if the dynptr is invalid, or if the offset and length * is out of bounds. * * s64 bpf_tcp_raw_gen_syncookie_ipv4(struct iphdr *iph, struct tcphdr *th, u32 th_len) * Description * Try to issue a SYN cookie for the packet with corresponding * IPv4/TCP headers, *iph* and *th*, without depending on a * listening socket. * * *iph* points to the IPv4 header. * * *th* points to the start of the TCP header, while *th_len* * contains the length of the TCP header (at least * **sizeof**\ (**struct tcphdr**)). * Return * On success, lower 32 bits hold the generated SYN cookie in * followed by 16 bits which hold the MSS value for that cookie, * and the top 16 bits are unused. * * On failure, the returned value is one of the following: * * **-EINVAL** if *th_len* is invalid. * * s64 bpf_tcp_raw_gen_syncookie_ipv6(struct ipv6hdr *iph, struct tcphdr *th, u32 th_len) * Description * Try to issue a SYN cookie for the packet with corresponding * IPv6/TCP headers, *iph* and *th*, without depending on a * listening socket. * * *iph* points to the IPv6 header. * * *th* points to the start of the TCP header, while *th_len* * contains the length of the TCP header (at least * **sizeof**\ (**struct tcphdr**)). * Return * On success, lower 32 bits hold the generated SYN cookie in * followed by 16 bits which hold the MSS value for that cookie, * and the top 16 bits are unused. * * On failure, the returned value is one of the following: * * **-EINVAL** if *th_len* is invalid. * * **-EPROTONOSUPPORT** if CONFIG_IPV6 is not builtin. * * long bpf_tcp_raw_check_syncookie_ipv4(struct iphdr *iph, struct tcphdr *th) * Description * Check whether *iph* and *th* contain a valid SYN cookie ACK * without depending on a listening socket. * * *iph* points to the IPv4 header. * * *th* points to the TCP header. * Return * 0 if *iph* and *th* are a valid SYN cookie ACK. * * On failure, the returned value is one of the following: * * **-EACCES** if the SYN cookie is not valid. * * long bpf_tcp_raw_check_syncookie_ipv6(struct ipv6hdr *iph, struct tcphdr *th) * Description * Check whether *iph* and *th* contain a valid SYN cookie ACK * without depending on a listening socket. * * *iph* points to the IPv6 header. * * *th* points to the TCP header. * Return * 0 if *iph* and *th* are a valid SYN cookie ACK. * * On failure, the returned value is one of the following: * * **-EACCES** if the SYN cookie is not valid. * * **-EPROTONOSUPPORT** if CONFIG_IPV6 is not builtin. * * u64 bpf_ktime_get_tai_ns(void) * Description * A nonsettable system-wide clock derived from wall-clock time but * ignoring leap seconds. This clock does not experience * discontinuities and backwards jumps caused by NTP inserting leap * seconds as CLOCK_REALTIME does. * * See: **clock_gettime**\ (**CLOCK_TAI**) * Return * Current *ktime*. * * long bpf_user_ringbuf_drain(struct bpf_map *map, void *callback_fn, void *ctx, u64 flags) * Description * Drain samples from the specified user ring buffer, and invoke * the provided callback for each such sample: * * long (\*callback_fn)(const struct bpf_dynptr \*dynptr, void \*ctx); * * If **callback_fn** returns 0, the helper will continue to try * and drain the next sample, up to a maximum of * BPF_MAX_USER_RINGBUF_SAMPLES samples. If the return value is 1, * the helper will skip the rest of the samples and return. Other * return values are not used now, and will be rejected by the * verifier. * Return * The number of drained samples if no error was encountered while * draining samples, or 0 if no samples were present in the ring * buffer. If a user-space producer was epoll-waiting on this map, * and at least one sample was drained, they will receive an event * notification notifying them of available space in the ring * buffer. If the BPF_RB_NO_WAKEUP flag is passed to this * function, no wakeup notification will be sent. If the * BPF_RB_FORCE_WAKEUP flag is passed, a wakeup notification will * be sent even if no sample was drained. * * On failure, the returned value is one of the following: * * **-EBUSY** if the ring buffer is contended, and another calling * context was concurrently draining the ring buffer. * * **-EINVAL** if user-space is not properly tracking the ring * buffer due to the producer position not being aligned to 8 * bytes, a sample not being aligned to 8 bytes, or the producer * position not matching the advertised length of a sample. * * **-E2BIG** if user-space has tried to publish a sample which is * larger than the size of the ring buffer, or which cannot fit * within a struct bpf_dynptr. * * void *bpf_cgrp_storage_get(struct bpf_map *map, struct cgroup *cgroup, void *value, u64 flags) * Description * Get a bpf_local_storage from the *cgroup*. * * Logically, it could be thought of as getting the value from * a *map* with *cgroup* as the **key**. From this * perspective, the usage is not much different from * **bpf_map_lookup_elem**\ (*map*, **&**\ *cgroup*) except this * helper enforces the key must be a cgroup struct and the map must also * be a **BPF_MAP_TYPE_CGRP_STORAGE**. * * In reality, the local-storage value is embedded directly inside of the * *cgroup* object itself, rather than being located in the * **BPF_MAP_TYPE_CGRP_STORAGE** map. When the local-storage value is * queried for some *map* on a *cgroup* object, the kernel will perform an * O(n) iteration over all of the live local-storage values for that * *cgroup* object until the local-storage value for the *map* is found. * * An optional *flags* (**BPF_LOCAL_STORAGE_GET_F_CREATE**) can be * used such that a new bpf_local_storage will be * created if one does not exist. *value* can be used * together with **BPF_LOCAL_STORAGE_GET_F_CREATE** to specify * the initial value of a bpf_local_storage. If *value* is * **NULL**, the new bpf_local_storage will be zero initialized. * Return * A bpf_local_storage pointer is returned on success. * * **NULL** if not found or there was an error in adding * a new bpf_local_storage. * * long bpf_cgrp_storage_delete(struct bpf_map *map, struct cgroup *cgroup) * Description * Delete a bpf_local_storage from a *cgroup*. * Return * 0 on success. * * **-ENOENT** if the bpf_local_storage cannot be found. */ #define ___BPF_FUNC_MAPPER(FN, ctx...) \ FN(unspec, 0, ##ctx) \ FN(map_lookup_elem, 1, ##ctx) \ FN(map_update_elem, 2, ##ctx) \ FN(map_delete_elem, 3, ##ctx) \ FN(probe_read, 4, ##ctx) \ FN(ktime_get_ns, 5, ##ctx) \ FN(trace_printk, 6, ##ctx) \ FN(get_prandom_u32, 7, ##ctx) \ FN(get_smp_processor_id, 8, ##ctx) \ FN(skb_store_bytes, 9, ##ctx) \ FN(l3_csum_replace, 10, ##ctx) \ FN(l4_csum_replace, 11, ##ctx) \ FN(tail_call, 12, ##ctx) \ FN(clone_redirect, 13, ##ctx) \ FN(get_current_pid_tgid, 14, ##ctx) \ FN(get_current_uid_gid, 15, ##ctx) \ FN(get_current_comm, 16, ##ctx) \ FN(get_cgroup_classid, 17, ##ctx) \ FN(skb_vlan_push, 18, ##ctx) \ FN(skb_vlan_pop, 19, ##ctx) \ FN(skb_get_tunnel_key, 20, ##ctx) \ FN(skb_set_tunnel_key, 21, ##ctx) \ FN(perf_event_read, 22, ##ctx) \ FN(redirect, 23, ##ctx) \ FN(get_route_realm, 24, ##ctx) \ FN(perf_event_output, 25, ##ctx) \ FN(skb_load_bytes, 26, ##ctx) \ FN(get_stackid, 27, ##ctx) \ FN(csum_diff, 28, ##ctx) \ FN(skb_get_tunnel_opt, 29, ##ctx) \ FN(skb_set_tunnel_opt, 30, ##ctx) \ FN(skb_change_proto, 31, ##ctx) \ FN(skb_change_type, 32, ##ctx) \ FN(skb_under_cgroup, 33, ##ctx) \ FN(get_hash_recalc, 34, ##ctx) \ FN(get_current_task, 35, ##ctx) \ FN(probe_write_user, 36, ##ctx) \ FN(current_task_under_cgroup, 37, ##ctx) \ FN(skb_change_tail, 38, ##ctx) \ FN(skb_pull_data, 39, ##ctx) \ FN(csum_update, 40, ##ctx) \ FN(set_hash_invalid, 41, ##ctx) \ FN(get_numa_node_id, 42, ##ctx) \ FN(skb_change_head, 43, ##ctx) \ FN(xdp_adjust_head, 44, ##ctx) \ FN(probe_read_str, 45, ##ctx) \ FN(get_socket_cookie, 46, ##ctx) \ FN(get_socket_uid, 47, ##ctx) \ FN(set_hash, 48, ##ctx) \ FN(setsockopt, 49, ##ctx) \ FN(skb_adjust_room, 50, ##ctx) \ FN(redirect_map, 51, ##ctx) \ FN(sk_redirect_map, 52, ##ctx) \ FN(sock_map_update, 53, ##ctx) \ FN(xdp_adjust_meta, 54, ##ctx) \ FN(perf_event_read_value, 55, ##ctx) \ FN(perf_prog_read_value, 56, ##ctx) \ FN(getsockopt, 57, ##ctx) \ FN(override_return, 58, ##ctx) \ FN(sock_ops_cb_flags_set, 59, ##ctx) \ FN(msg_redirect_map, 60, ##ctx) \ FN(msg_apply_bytes, 61, ##ctx) \ FN(msg_cork_bytes, 62, ##ctx) \ FN(msg_pull_data, 63, ##ctx) \ FN(bind, 64, ##ctx) \ FN(xdp_adjust_tail, 65, ##ctx) \ FN(skb_get_xfrm_state, 66, ##ctx) \ FN(get_stack, 67, ##ctx) \ FN(skb_load_bytes_relative, 68, ##ctx) \ FN(fib_lookup, 69, ##ctx) \ FN(sock_hash_update, 70, ##ctx) \ FN(msg_redirect_hash, 71, ##ctx) \ FN(sk_redirect_hash, 72, ##ctx) \ FN(lwt_push_encap, 73, ##ctx) \ FN(lwt_seg6_store_bytes, 74, ##ctx) \ FN(lwt_seg6_adjust_srh, 75, ##ctx) \ FN(lwt_seg6_action, 76, ##ctx) \ FN(rc_repeat, 77, ##ctx) \ FN(rc_keydown, 78, ##ctx) \ FN(skb_cgroup_id, 79, ##ctx) \ FN(get_current_cgroup_id, 80, ##ctx) \ FN(get_local_storage, 81, ##ctx) \ FN(sk_select_reuseport, 82, ##ctx) \ FN(skb_ancestor_cgroup_id, 83, ##ctx) \ FN(sk_lookup_tcp, 84, ##ctx) \ FN(sk_lookup_udp, 85, ##ctx) \ FN(sk_release, 86, ##ctx) \ FN(map_push_elem, 87, ##ctx) \ FN(map_pop_elem, 88, ##ctx) \ FN(map_peek_elem, 89, ##ctx) \ FN(msg_push_data, 90, ##ctx) \ FN(msg_pop_data, 91, ##ctx) \ FN(rc_pointer_rel, 92, ##ctx) \ FN(spin_lock, 93, ##ctx) \ FN(spin_unlock, 94, ##ctx) \ FN(sk_fullsock, 95, ##ctx) \ FN(tcp_sock, 96, ##ctx) \ FN(skb_ecn_set_ce, 97, ##ctx) \ FN(get_listener_sock, 98, ##ctx) \ FN(skc_lookup_tcp, 99, ##ctx) \ FN(tcp_check_syncookie, 100, ##ctx) \ FN(sysctl_get_name, 101, ##ctx) \ FN(sysctl_get_current_value, 102, ##ctx) \ FN(sysctl_get_new_value, 103, ##ctx) \ FN(sysctl_set_new_value, 104, ##ctx) \ FN(strtol, 105, ##ctx) \ FN(strtoul, 106, ##ctx) \ FN(sk_storage_get, 107, ##ctx) \ FN(sk_storage_delete, 108, ##ctx) \ FN(send_signal, 109, ##ctx) \ FN(tcp_gen_syncookie, 110, ##ctx) \ FN(skb_output, 111, ##ctx) \ FN(probe_read_user, 112, ##ctx) \ FN(probe_read_kernel, 113, ##ctx) \ FN(probe_read_user_str, 114, ##ctx) \ FN(probe_read_kernel_str, 115, ##ctx) \ FN(tcp_send_ack, 116, ##ctx) \ FN(send_signal_thread, 117, ##ctx) \ FN(jiffies64, 118, ##ctx) \ FN(read_branch_records, 119, ##ctx) \ FN(get_ns_current_pid_tgid, 120, ##ctx) \ FN(xdp_output, 121, ##ctx) \ FN(get_netns_cookie, 122, ##ctx) \ FN(get_current_ancestor_cgroup_id, 123, ##ctx) \ FN(sk_assign, 124, ##ctx) \ FN(ktime_get_boot_ns, 125, ##ctx) \ FN(seq_printf, 126, ##ctx) \ FN(seq_write, 127, ##ctx) \ FN(sk_cgroup_id, 128, ##ctx) \ FN(sk_ancestor_cgroup_id, 129, ##ctx) \ FN(ringbuf_output, 130, ##ctx) \ FN(ringbuf_reserve, 131, ##ctx) \ FN(ringbuf_submit, 132, ##ctx) \ FN(ringbuf_discard, 133, ##ctx) \ FN(ringbuf_query, 134, ##ctx) \ FN(csum_level, 135, ##ctx) \ FN(skc_to_tcp6_sock, 136, ##ctx) \ FN(skc_to_tcp_sock, 137, ##ctx) \ FN(skc_to_tcp_timewait_sock, 138, ##ctx) \ FN(skc_to_tcp_request_sock, 139, ##ctx) \ FN(skc_to_udp6_sock, 140, ##ctx) \ FN(get_task_stack, 141, ##ctx) \ FN(load_hdr_opt, 142, ##ctx) \ FN(store_hdr_opt, 143, ##ctx) \ FN(reserve_hdr_opt, 144, ##ctx) \ FN(inode_storage_get, 145, ##ctx) \ FN(inode_storage_delete, 146, ##ctx) \ FN(d_path, 147, ##ctx) \ FN(copy_from_user, 148, ##ctx) \ FN(snprintf_btf, 149, ##ctx) \ FN(seq_printf_btf, 150, ##ctx) \ FN(skb_cgroup_classid, 151, ##ctx) \ FN(redirect_neigh, 152, ##ctx) \ FN(per_cpu_ptr, 153, ##ctx) \ FN(this_cpu_ptr, 154, ##ctx) \ FN(redirect_peer, 155, ##ctx) \ FN(task_storage_get, 156, ##ctx) \ FN(task_storage_delete, 157, ##ctx) \ FN(get_current_task_btf, 158, ##ctx) \ FN(bprm_opts_set, 159, ##ctx) \ FN(ktime_get_coarse_ns, 160, ##ctx) \ FN(ima_inode_hash, 161, ##ctx) \ FN(sock_from_file, 162, ##ctx) \ FN(check_mtu, 163, ##ctx) \ FN(for_each_map_elem, 164, ##ctx) \ FN(snprintf, 165, ##ctx) \ FN(sys_bpf, 166, ##ctx) \ FN(btf_find_by_name_kind, 167, ##ctx) \ FN(sys_close, 168, ##ctx) \ FN(timer_init, 169, ##ctx) \ FN(timer_set_callback, 170, ##ctx) \ FN(timer_start, 171, ##ctx) \ FN(timer_cancel, 172, ##ctx) \ FN(get_func_ip, 173, ##ctx) \ FN(get_attach_cookie, 174, ##ctx) \ FN(task_pt_regs, 175, ##ctx) \ FN(get_branch_snapshot, 176, ##ctx) \ FN(trace_vprintk, 177, ##ctx) \ FN(skc_to_unix_sock, 178, ##ctx) \ FN(kallsyms_lookup_name, 179, ##ctx) \ FN(find_vma, 180, ##ctx) \ FN(loop, 181, ##ctx) \ FN(strncmp, 182, ##ctx) \ FN(get_func_arg, 183, ##ctx) \ FN(get_func_ret, 184, ##ctx) \ FN(get_func_arg_cnt, 185, ##ctx) \ FN(get_retval, 186, ##ctx) \ FN(set_retval, 187, ##ctx) \ FN(xdp_get_buff_len, 188, ##ctx) \ FN(xdp_load_bytes, 189, ##ctx) \ FN(xdp_store_bytes, 190, ##ctx) \ FN(copy_from_user_task, 191, ##ctx) \ FN(skb_set_tstamp, 192, ##ctx) \ FN(ima_file_hash, 193, ##ctx) \ FN(kptr_xchg, 194, ##ctx) \ FN(map_lookup_percpu_elem, 195, ##ctx) \ FN(skc_to_mptcp_sock, 196, ##ctx) \ FN(dynptr_from_mem, 197, ##ctx) \ FN(ringbuf_reserve_dynptr, 198, ##ctx) \ FN(ringbuf_submit_dynptr, 199, ##ctx) \ FN(ringbuf_discard_dynptr, 200, ##ctx) \ FN(dynptr_read, 201, ##ctx) \ FN(dynptr_write, 202, ##ctx) \ FN(dynptr_data, 203, ##ctx) \ FN(tcp_raw_gen_syncookie_ipv4, 204, ##ctx) \ FN(tcp_raw_gen_syncookie_ipv6, 205, ##ctx) \ FN(tcp_raw_check_syncookie_ipv4, 206, ##ctx) \ FN(tcp_raw_check_syncookie_ipv6, 207, ##ctx) \ FN(ktime_get_tai_ns, 208, ##ctx) \ FN(user_ringbuf_drain, 209, ##ctx) \ FN(cgrp_storage_get, 210, ##ctx) \ FN(cgrp_storage_delete, 211, ##ctx) \ /* */ /* backwards-compatibility macros for users of __BPF_FUNC_MAPPER that don't * know or care about integer value that is now passed as second argument */ #define __BPF_FUNC_MAPPER_APPLY(name, value, FN) FN(name), #define __BPF_FUNC_MAPPER(FN) ___BPF_FUNC_MAPPER(__BPF_FUNC_MAPPER_APPLY, FN) /* integer value in 'imm' field of BPF_CALL instruction selects which helper * function eBPF program intends to call */ #define __BPF_ENUM_FN(x, y) BPF_FUNC_ ## x = y, enum bpf_func_id { ___BPF_FUNC_MAPPER(__BPF_ENUM_FN) __BPF_FUNC_MAX_ID, }; #undef __BPF_ENUM_FN /* All flags used by eBPF helper functions, placed here. */ /* BPF_FUNC_skb_store_bytes flags. */ enum { BPF_F_RECOMPUTE_CSUM = (1ULL << 0), BPF_F_INVALIDATE_HASH = (1ULL << 1), }; /* BPF_FUNC_l3_csum_replace and BPF_FUNC_l4_csum_replace flags. * First 4 bits are for passing the header field size. */ enum { BPF_F_HDR_FIELD_MASK = 0xfULL, }; /* BPF_FUNC_l4_csum_replace flags. */ enum { BPF_F_PSEUDO_HDR = (1ULL << 4), BPF_F_MARK_MANGLED_0 = (1ULL << 5), BPF_F_MARK_ENFORCE = (1ULL << 6), }; /* BPF_FUNC_clone_redirect and BPF_FUNC_redirect flags. */ enum { BPF_F_INGRESS = (1ULL << 0), }; /* BPF_FUNC_skb_set_tunnel_key and BPF_FUNC_skb_get_tunnel_key flags. */ enum { BPF_F_TUNINFO_IPV6 = (1ULL << 0), }; /* flags for both BPF_FUNC_get_stackid and BPF_FUNC_get_stack. */ enum { BPF_F_SKIP_FIELD_MASK = 0xffULL, BPF_F_USER_STACK = (1ULL << 8), /* flags used by BPF_FUNC_get_stackid only. */ BPF_F_FAST_STACK_CMP = (1ULL << 9), BPF_F_REUSE_STACKID = (1ULL << 10), /* flags used by BPF_FUNC_get_stack only. */ BPF_F_USER_BUILD_ID = (1ULL << 11), }; /* BPF_FUNC_skb_set_tunnel_key flags. */ enum { BPF_F_ZERO_CSUM_TX = (1ULL << 1), BPF_F_DONT_FRAGMENT = (1ULL << 2), BPF_F_SEQ_NUMBER = (1ULL << 3), BPF_F_NO_TUNNEL_KEY = (1ULL << 4), }; /* BPF_FUNC_skb_get_tunnel_key flags. */ enum { BPF_F_TUNINFO_FLAGS = (1ULL << 4), }; /* BPF_FUNC_perf_event_output, BPF_FUNC_perf_event_read and * BPF_FUNC_perf_event_read_value flags. */ enum { BPF_F_INDEX_MASK = 0xffffffffULL, BPF_F_CURRENT_CPU = BPF_F_INDEX_MASK, /* BPF_FUNC_perf_event_output for sk_buff input context. */ BPF_F_CTXLEN_MASK = (0xfffffULL << 32), }; /* Current network namespace */ enum { BPF_F_CURRENT_NETNS = (-1L), }; /* BPF_FUNC_csum_level level values. */ enum { BPF_CSUM_LEVEL_QUERY, BPF_CSUM_LEVEL_INC, BPF_CSUM_LEVEL_DEC, BPF_CSUM_LEVEL_RESET, }; /* BPF_FUNC_skb_adjust_room flags. */ enum { BPF_F_ADJ_ROOM_FIXED_GSO = (1ULL << 0), BPF_F_ADJ_ROOM_ENCAP_L3_IPV4 = (1ULL << 1), BPF_F_ADJ_ROOM_ENCAP_L3_IPV6 = (1ULL << 2), BPF_F_ADJ_ROOM_ENCAP_L4_GRE = (1ULL << 3), BPF_F_ADJ_ROOM_ENCAP_L4_UDP = (1ULL << 4), BPF_F_ADJ_ROOM_NO_CSUM_RESET = (1ULL << 5), BPF_F_ADJ_ROOM_ENCAP_L2_ETH = (1ULL << 6), BPF_F_ADJ_ROOM_DECAP_L3_IPV4 = (1ULL << 7), BPF_F_ADJ_ROOM_DECAP_L3_IPV6 = (1ULL << 8), }; enum { BPF_ADJ_ROOM_ENCAP_L2_MASK = 0xff, BPF_ADJ_ROOM_ENCAP_L2_SHIFT = 56, }; #define BPF_F_ADJ_ROOM_ENCAP_L2(len) (((__u64)len & \ BPF_ADJ_ROOM_ENCAP_L2_MASK) \ << BPF_ADJ_ROOM_ENCAP_L2_SHIFT) /* BPF_FUNC_sysctl_get_name flags. */ enum { BPF_F_SYSCTL_BASE_NAME = (1ULL << 0), }; /* BPF_FUNC__storage_get flags */ enum { BPF_LOCAL_STORAGE_GET_F_CREATE = (1ULL << 0), /* BPF_SK_STORAGE_GET_F_CREATE is only kept for backward compatibility * and BPF_LOCAL_STORAGE_GET_F_CREATE must be used instead. */ BPF_SK_STORAGE_GET_F_CREATE = BPF_LOCAL_STORAGE_GET_F_CREATE, }; /* BPF_FUNC_read_branch_records flags. */ enum { BPF_F_GET_BRANCH_RECORDS_SIZE = (1ULL << 0), }; /* BPF_FUNC_bpf_ringbuf_commit, BPF_FUNC_bpf_ringbuf_discard, and * BPF_FUNC_bpf_ringbuf_output flags. */ enum { BPF_RB_NO_WAKEUP = (1ULL << 0), BPF_RB_FORCE_WAKEUP = (1ULL << 1), }; /* BPF_FUNC_bpf_ringbuf_query flags */ enum { BPF_RB_AVAIL_DATA = 0, BPF_RB_RING_SIZE = 1, BPF_RB_CONS_POS = 2, BPF_RB_PROD_POS = 3, }; /* BPF ring buffer constants */ enum { BPF_RINGBUF_BUSY_BIT = (1U << 31), BPF_RINGBUF_DISCARD_BIT = (1U << 30), BPF_RINGBUF_HDR_SZ = 8, }; /* BPF_FUNC_sk_assign flags in bpf_sk_lookup context. */ enum { BPF_SK_LOOKUP_F_REPLACE = (1ULL << 0), BPF_SK_LOOKUP_F_NO_REUSEPORT = (1ULL << 1), }; /* Mode for BPF_FUNC_skb_adjust_room helper. */ enum bpf_adj_room_mode { BPF_ADJ_ROOM_NET, BPF_ADJ_ROOM_MAC, }; /* Mode for BPF_FUNC_skb_load_bytes_relative helper. */ enum bpf_hdr_start_off { BPF_HDR_START_MAC, BPF_HDR_START_NET, }; /* Encapsulation type for BPF_FUNC_lwt_push_encap helper. */ enum bpf_lwt_encap_mode { BPF_LWT_ENCAP_SEG6, BPF_LWT_ENCAP_SEG6_INLINE, BPF_LWT_ENCAP_IP, }; /* Flags for bpf_bprm_opts_set helper */ enum { BPF_F_BPRM_SECUREEXEC = (1ULL << 0), }; /* Flags for bpf_redirect_map helper */ enum { BPF_F_BROADCAST = (1ULL << 3), BPF_F_EXCLUDE_INGRESS = (1ULL << 4), }; #define __bpf_md_ptr(type, name) \ union { \ type name; \ __u64 :64; \ } __attribute__((aligned(8))) enum { BPF_SKB_TSTAMP_UNSPEC, BPF_SKB_TSTAMP_DELIVERY_MONO, /* tstamp has mono delivery time */ /* For any BPF_SKB_TSTAMP_* that the bpf prog cannot handle, * the bpf prog should handle it like BPF_SKB_TSTAMP_UNSPEC * and try to deduce it by ingress, egress or skb->sk->sk_clockid. */ }; /* user accessible mirror of in-kernel sk_buff. * new fields can only be added to the end of this structure */ struct __sk_buff { __u32 len; __u32 pkt_type; __u32 mark; __u32 queue_mapping; __u32 protocol; __u32 vlan_present; __u32 vlan_tci; __u32 vlan_proto; __u32 priority; __u32 ingress_ifindex; __u32 ifindex; __u32 tc_index; __u32 cb[5]; __u32 hash; __u32 tc_classid; __u32 data; __u32 data_end; __u32 napi_id; /* Accessed by BPF_PROG_TYPE_sk_skb types from here to ... */ __u32 family; __u32 remote_ip4; /* Stored in network byte order */ __u32 local_ip4; /* Stored in network byte order */ __u32 remote_ip6[4]; /* Stored in network byte order */ __u32 local_ip6[4]; /* Stored in network byte order */ __u32 remote_port; /* Stored in network byte order */ __u32 local_port; /* stored in host byte order */ /* ... here. */ __u32 data_meta; __bpf_md_ptr(struct bpf_flow_keys *, flow_keys); __u64 tstamp; __u32 wire_len; __u32 gso_segs; __bpf_md_ptr(struct bpf_sock *, sk); __u32 gso_size; __u8 tstamp_type; __u32 :24; /* Padding, future use. */ __u64 hwtstamp; }; struct bpf_tunnel_key { __u32 tunnel_id; union { __u32 remote_ipv4; __u32 remote_ipv6[4]; }; __u8 tunnel_tos; __u8 tunnel_ttl; union { __u16 tunnel_ext; /* compat */ __be16 tunnel_flags; }; __u32 tunnel_label; union { __u32 local_ipv4; __u32 local_ipv6[4]; }; }; /* user accessible mirror of in-kernel xfrm_state. * new fields can only be added to the end of this structure */ struct bpf_xfrm_state { __u32 reqid; __u32 spi; /* Stored in network byte order */ __u16 family; __u16 ext; /* Padding, future use. */ union { __u32 remote_ipv4; /* Stored in network byte order */ __u32 remote_ipv6[4]; /* Stored in network byte order */ }; }; /* Generic BPF return codes which all BPF program types may support. * The values are binary compatible with their TC_ACT_* counter-part to * provide backwards compatibility with existing SCHED_CLS and SCHED_ACT * programs. * * XDP is handled seprately, see XDP_*. */ enum bpf_ret_code { BPF_OK = 0, /* 1 reserved */ BPF_DROP = 2, /* 3-6 reserved */ BPF_REDIRECT = 7, /* >127 are reserved for prog type specific return codes. * * BPF_LWT_REROUTE: used by BPF_PROG_TYPE_LWT_IN and * BPF_PROG_TYPE_LWT_XMIT to indicate that skb had been * changed and should be routed based on its new L3 header. * (This is an L3 redirect, as opposed to L2 redirect * represented by BPF_REDIRECT above). */ BPF_LWT_REROUTE = 128, /* BPF_FLOW_DISSECTOR_CONTINUE: used by BPF_PROG_TYPE_FLOW_DISSECTOR * to indicate that no custom dissection was performed, and * fallback to standard dissector is requested. */ BPF_FLOW_DISSECTOR_CONTINUE = 129, }; struct bpf_sock { __u32 bound_dev_if; __u32 family; __u32 type; __u32 protocol; __u32 mark; __u32 priority; /* IP address also allows 1 and 2 bytes access */ __u32 src_ip4; __u32 src_ip6[4]; __u32 src_port; /* host byte order */ __be16 dst_port; /* network byte order */ __u16 :16; /* zero padding */ __u32 dst_ip4; __u32 dst_ip6[4]; __u32 state; __s32 rx_queue_mapping; }; struct bpf_tcp_sock { __u32 snd_cwnd; /* Sending congestion window */ __u32 srtt_us; /* smoothed round trip time << 3 in usecs */ __u32 rtt_min; __u32 snd_ssthresh; /* Slow start size threshold */ __u32 rcv_nxt; /* What we want to receive next */ __u32 snd_nxt; /* Next sequence we send */ __u32 snd_una; /* First byte we want an ack for */ __u32 mss_cache; /* Cached effective mss, not including SACKS */ __u32 ecn_flags; /* ECN status bits. */ __u32 rate_delivered; /* saved rate sample: packets delivered */ __u32 rate_interval_us; /* saved rate sample: time elapsed */ __u32 packets_out; /* Packets which are "in flight" */ __u32 retrans_out; /* Retransmitted packets out */ __u32 total_retrans; /* Total retransmits for entire connection */ __u32 segs_in; /* RFC4898 tcpEStatsPerfSegsIn * total number of segments in. */ __u32 data_segs_in; /* RFC4898 tcpEStatsPerfDataSegsIn * total number of data segments in. */ __u32 segs_out; /* RFC4898 tcpEStatsPerfSegsOut * The total number of segments sent. */ __u32 data_segs_out; /* RFC4898 tcpEStatsPerfDataSegsOut * total number of data segments sent. */ __u32 lost_out; /* Lost packets */ __u32 sacked_out; /* SACK'd packets */ __u64 bytes_received; /* RFC4898 tcpEStatsAppHCThruOctetsReceived * sum(delta(rcv_nxt)), or how many bytes * were acked. */ __u64 bytes_acked; /* RFC4898 tcpEStatsAppHCThruOctetsAcked * sum(delta(snd_una)), or how many bytes * were acked. */ __u32 dsack_dups; /* RFC4898 tcpEStatsStackDSACKDups * total number of DSACK blocks received */ __u32 delivered; /* Total data packets delivered incl. rexmits */ __u32 delivered_ce; /* Like the above but only ECE marked packets */ __u32 icsk_retransmits; /* Number of unrecovered [RTO] timeouts */ }; struct bpf_sock_tuple { union { struct { __be32 saddr; __be32 daddr; __be16 sport; __be16 dport; } ipv4; struct { __be32 saddr[4]; __be32 daddr[4]; __be16 sport; __be16 dport; } ipv6; }; }; struct bpf_xdp_sock { __u32 queue_id; }; #define XDP_PACKET_HEADROOM 256 /* User return codes for XDP prog type. * A valid XDP program must return one of these defined values. All other * return codes are reserved for future use. Unknown return codes will * result in packet drops and a warning via bpf_warn_invalid_xdp_action(). */ enum xdp_action { XDP_ABORTED = 0, XDP_DROP, XDP_PASS, XDP_TX, XDP_REDIRECT, }; /* user accessible metadata for XDP packet hook * new fields must be added to the end of this structure */ struct xdp_md { __u32 data; __u32 data_end; __u32 data_meta; /* Below access go through struct xdp_rxq_info */ __u32 ingress_ifindex; /* rxq->dev->ifindex */ __u32 rx_queue_index; /* rxq->queue_index */ __u32 egress_ifindex; /* txq->dev->ifindex */ }; /* DEVMAP map-value layout * * The struct data-layout of map-value is a configuration interface. * New members can only be added to the end of this structure. */ struct bpf_devmap_val { __u32 ifindex; /* device index */ union { int fd; /* prog fd on map write */ __u32 id; /* prog id on map read */ } bpf_prog; }; /* CPUMAP map-value layout * * The struct data-layout of map-value is a configuration interface. * New members can only be added to the end of this structure. */ struct bpf_cpumap_val { __u32 qsize; /* queue size to remote target CPU */ union { int fd; /* prog fd on map write */ __u32 id; /* prog id on map read */ } bpf_prog; }; enum sk_action { SK_DROP = 0, SK_PASS, }; /* user accessible metadata for SK_MSG packet hook, new fields must * be added to the end of this structure */ struct sk_msg_md { __bpf_md_ptr(void *, data); __bpf_md_ptr(void *, data_end); __u32 family; __u32 remote_ip4; /* Stored in network byte order */ __u32 local_ip4; /* Stored in network byte order */ __u32 remote_ip6[4]; /* Stored in network byte order */ __u32 local_ip6[4]; /* Stored in network byte order */ __u32 remote_port; /* Stored in network byte order */ __u32 local_port; /* stored in host byte order */ __u32 size; /* Total size of sk_msg */ __bpf_md_ptr(struct bpf_sock *, sk); /* current socket */ }; struct sk_reuseport_md { /* * Start of directly accessible data. It begins from * the tcp/udp header. */ __bpf_md_ptr(void *, data); /* End of directly accessible data */ __bpf_md_ptr(void *, data_end); /* * Total length of packet (starting from the tcp/udp header). * Note that the directly accessible bytes (data_end - data) * could be less than this "len". Those bytes could be * indirectly read by a helper "bpf_skb_load_bytes()". */ __u32 len; /* * Eth protocol in the mac header (network byte order). e.g. * ETH_P_IP(0x0800) and ETH_P_IPV6(0x86DD) */ __u32 eth_protocol; __u32 ip_protocol; /* IP protocol. e.g. IPPROTO_TCP, IPPROTO_UDP */ __u32 bind_inany; /* Is sock bound to an INANY address? */ __u32 hash; /* A hash of the packet 4 tuples */ /* When reuse->migrating_sk is NULL, it is selecting a sk for the * new incoming connection request (e.g. selecting a listen sk for * the received SYN in the TCP case). reuse->sk is one of the sk * in the reuseport group. The bpf prog can use reuse->sk to learn * the local listening ip/port without looking into the skb. * * When reuse->migrating_sk is not NULL, reuse->sk is closed and * reuse->migrating_sk is the socket that needs to be migrated * to another listening socket. migrating_sk could be a fullsock * sk that is fully established or a reqsk that is in-the-middle * of 3-way handshake. */ __bpf_md_ptr(struct bpf_sock *, sk); __bpf_md_ptr(struct bpf_sock *, migrating_sk); }; #define BPF_TAG_SIZE 8 struct bpf_prog_info { __u32 type; __u32 id; __u8 tag[BPF_TAG_SIZE]; __u32 jited_prog_len; __u32 xlated_prog_len; __aligned_u64 jited_prog_insns; __aligned_u64 xlated_prog_insns; __u64 load_time; /* ns since boottime */ __u32 created_by_uid; __u32 nr_map_ids; __aligned_u64 map_ids; char name[BPF_OBJ_NAME_LEN]; __u32 ifindex; __u32 gpl_compatible:1; __u32 :31; /* alignment pad */ __u64 netns_dev; __u64 netns_ino; __u32 nr_jited_ksyms; __u32 nr_jited_func_lens; __aligned_u64 jited_ksyms; __aligned_u64 jited_func_lens; __u32 btf_id; __u32 func_info_rec_size; __aligned_u64 func_info; __u32 nr_func_info; __u32 nr_line_info; __aligned_u64 line_info; __aligned_u64 jited_line_info; __u32 nr_jited_line_info; __u32 line_info_rec_size; __u32 jited_line_info_rec_size; __u32 nr_prog_tags; __aligned_u64 prog_tags; __u64 run_time_ns; __u64 run_cnt; __u64 recursion_misses; __u32 verified_insns; __u32 attach_btf_obj_id; __u32 attach_btf_id; } __attribute__((aligned(8))); struct bpf_map_info { __u32 type; __u32 id; __u32 key_size; __u32 value_size; __u32 max_entries; __u32 map_flags; char name[BPF_OBJ_NAME_LEN]; __u32 ifindex; __u32 btf_vmlinux_value_type_id; __u64 netns_dev; __u64 netns_ino; __u32 btf_id; __u32 btf_key_type_id; __u32 btf_value_type_id; __u32 :32; /* alignment pad */ __u64 map_extra; } __attribute__((aligned(8))); struct bpf_btf_info { __aligned_u64 btf; __u32 btf_size; __u32 id; __aligned_u64 name; __u32 name_len; __u32 kernel_btf; } __attribute__((aligned(8))); struct bpf_link_info { __u32 type; __u32 id; __u32 prog_id; union { struct { __aligned_u64 tp_name; /* in/out: tp_name buffer ptr */ __u32 tp_name_len; /* in/out: tp_name buffer len */ } raw_tracepoint; struct { __u32 attach_type; __u32 target_obj_id; /* prog_id for PROG_EXT, otherwise btf object id */ __u32 target_btf_id; /* BTF type id inside the object */ } tracing; struct { __u64 cgroup_id; __u32 attach_type; } cgroup; struct { __aligned_u64 target_name; /* in/out: target_name buffer ptr */ __u32 target_name_len; /* in/out: target_name buffer len */ /* If the iter specific field is 32 bits, it can be put * in the first or second union. Otherwise it should be * put in the second union. */ union { struct { __u32 map_id; } map; }; union { struct { __u64 cgroup_id; __u32 order; } cgroup; struct { __u32 tid; __u32 pid; } task; }; } iter; struct { __u32 netns_ino; __u32 attach_type; } netns; struct { __u32 ifindex; } xdp; struct { __u32 map_id; } struct_ops; }; } __attribute__((aligned(8))); /* User bpf_sock_addr struct to access socket fields and sockaddr struct passed * by user and intended to be used by socket (e.g. to bind to, depends on * attach type). */ struct bpf_sock_addr { __u32 user_family; /* Allows 4-byte read, but no write. */ __u32 user_ip4; /* Allows 1,2,4-byte read and 4-byte write. * Stored in network byte order. */ __u32 user_ip6[4]; /* Allows 1,2,4,8-byte read and 4,8-byte write. * Stored in network byte order. */ __u32 user_port; /* Allows 1,2,4-byte read and 4-byte write. * Stored in network byte order */ __u32 family; /* Allows 4-byte read, but no write */ __u32 type; /* Allows 4-byte read, but no write */ __u32 protocol; /* Allows 4-byte read, but no write */ __u32 msg_src_ip4; /* Allows 1,2,4-byte read and 4-byte write. * Stored in network byte order. */ __u32 msg_src_ip6[4]; /* Allows 1,2,4,8-byte read and 4,8-byte write. * Stored in network byte order. */ __bpf_md_ptr(struct bpf_sock *, sk); }; /* User bpf_sock_ops struct to access socket values and specify request ops * and their replies. * Some of this fields are in network (bigendian) byte order and may need * to be converted before use (bpf_ntohl() defined in samples/bpf/bpf_endian.h). * New fields can only be added at the end of this structure */ struct bpf_sock_ops { __u32 op; union { __u32 args[4]; /* Optionally passed to bpf program */ __u32 reply; /* Returned by bpf program */ __u32 replylong[4]; /* Optionally returned by bpf prog */ }; __u32 family; __u32 remote_ip4; /* Stored in network byte order */ __u32 local_ip4; /* Stored in network byte order */ __u32 remote_ip6[4]; /* Stored in network byte order */ __u32 local_ip6[4]; /* Stored in network byte order */ __u32 remote_port; /* Stored in network byte order */ __u32 local_port; /* stored in host byte order */ __u32 is_fullsock; /* Some TCP fields are only valid if * there is a full socket. If not, the * fields read as zero. */ __u32 snd_cwnd; __u32 srtt_us; /* Averaged RTT << 3 in usecs */ __u32 bpf_sock_ops_cb_flags; /* flags defined in uapi/linux/tcp.h */ __u32 state; __u32 rtt_min; __u32 snd_ssthresh; __u32 rcv_nxt; __u32 snd_nxt; __u32 snd_una; __u32 mss_cache; __u32 ecn_flags; __u32 rate_delivered; __u32 rate_interval_us; __u32 packets_out; __u32 retrans_out; __u32 total_retrans; __u32 segs_in; __u32 data_segs_in; __u32 segs_out; __u32 data_segs_out; __u32 lost_out; __u32 sacked_out; __u32 sk_txhash; __u64 bytes_received; __u64 bytes_acked; __bpf_md_ptr(struct bpf_sock *, sk); /* [skb_data, skb_data_end) covers the whole TCP header. * * BPF_SOCK_OPS_PARSE_HDR_OPT_CB: The packet received * BPF_SOCK_OPS_HDR_OPT_LEN_CB: Not useful because the * header has not been written. * BPF_SOCK_OPS_WRITE_HDR_OPT_CB: The header and options have * been written so far. * BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB: The SYNACK that concludes * the 3WHS. * BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB: The ACK that concludes * the 3WHS. * * bpf_load_hdr_opt() can also be used to read a particular option. */ __bpf_md_ptr(void *, skb_data); __bpf_md_ptr(void *, skb_data_end); __u32 skb_len; /* The total length of a packet. * It includes the header, options, * and payload. */ __u32 skb_tcp_flags; /* tcp_flags of the header. It provides * an easy way to check for tcp_flags * without parsing skb_data. * * In particular, the skb_tcp_flags * will still be available in * BPF_SOCK_OPS_HDR_OPT_LEN even though * the outgoing header has not * been written yet. */ __u64 skb_hwtstamp; }; /* Definitions for bpf_sock_ops_cb_flags */ enum { BPF_SOCK_OPS_RTO_CB_FLAG = (1<<0), BPF_SOCK_OPS_RETRANS_CB_FLAG = (1<<1), BPF_SOCK_OPS_STATE_CB_FLAG = (1<<2), BPF_SOCK_OPS_RTT_CB_FLAG = (1<<3), /* Call bpf for all received TCP headers. The bpf prog will be * called under sock_ops->op == BPF_SOCK_OPS_PARSE_HDR_OPT_CB * * Please refer to the comment in BPF_SOCK_OPS_PARSE_HDR_OPT_CB * for the header option related helpers that will be useful * to the bpf programs. * * It could be used at the client/active side (i.e. connect() side) * when the server told it that the server was in syncookie * mode and required the active side to resend the bpf-written * options. The active side can keep writing the bpf-options until * it received a valid packet from the server side to confirm * the earlier packet (and options) has been received. The later * example patch is using it like this at the active side when the * server is in syncookie mode. * * The bpf prog will usually turn this off in the common cases. */ BPF_SOCK_OPS_PARSE_ALL_HDR_OPT_CB_FLAG = (1<<4), /* Call bpf when kernel has received a header option that * the kernel cannot handle. The bpf prog will be called under * sock_ops->op == BPF_SOCK_OPS_PARSE_HDR_OPT_CB. * * Please refer to the comment in BPF_SOCK_OPS_PARSE_HDR_OPT_CB * for the header option related helpers that will be useful * to the bpf programs. */ BPF_SOCK_OPS_PARSE_UNKNOWN_HDR_OPT_CB_FLAG = (1<<5), /* Call bpf when the kernel is writing header options for the * outgoing packet. The bpf prog will first be called * to reserve space in a skb under * sock_ops->op == BPF_SOCK_OPS_HDR_OPT_LEN_CB. Then * the bpf prog will be called to write the header option(s) * under sock_ops->op == BPF_SOCK_OPS_WRITE_HDR_OPT_CB. * * Please refer to the comment in BPF_SOCK_OPS_HDR_OPT_LEN_CB * and BPF_SOCK_OPS_WRITE_HDR_OPT_CB for the header option * related helpers that will be useful to the bpf programs. * * The kernel gets its chance to reserve space and write * options first before the BPF program does. */ BPF_SOCK_OPS_WRITE_HDR_OPT_CB_FLAG = (1<<6), /* Mask of all currently supported cb flags */ BPF_SOCK_OPS_ALL_CB_FLAGS = 0x7F, }; /* List of known BPF sock_ops operators. * New entries can only be added at the end */ enum { BPF_SOCK_OPS_VOID, BPF_SOCK_OPS_TIMEOUT_INIT, /* Should return SYN-RTO value to use or * -1 if default value should be used */ BPF_SOCK_OPS_RWND_INIT, /* Should return initial advertized * window (in packets) or -1 if default * value should be used */ BPF_SOCK_OPS_TCP_CONNECT_CB, /* Calls BPF program right before an * active connection is initialized */ BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB, /* Calls BPF program when an * active connection is * established */ BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB, /* Calls BPF program when a * passive connection is * established */ BPF_SOCK_OPS_NEEDS_ECN, /* If connection's congestion control * needs ECN */ BPF_SOCK_OPS_BASE_RTT, /* Get base RTT. The correct value is * based on the path and may be * dependent on the congestion control * algorithm. In general it indicates * a congestion threshold. RTTs above * this indicate congestion */ BPF_SOCK_OPS_RTO_CB, /* Called when an RTO has triggered. * Arg1: value of icsk_retransmits * Arg2: value of icsk_rto * Arg3: whether RTO has expired */ BPF_SOCK_OPS_RETRANS_CB, /* Called when skb is retransmitted. * Arg1: sequence number of 1st byte * Arg2: # segments * Arg3: return value of * tcp_transmit_skb (0 => success) */ BPF_SOCK_OPS_STATE_CB, /* Called when TCP changes state. * Arg1: old_state * Arg2: new_state */ BPF_SOCK_OPS_TCP_LISTEN_CB, /* Called on listen(2), right after * socket transition to LISTEN state. */ BPF_SOCK_OPS_RTT_CB, /* Called on every RTT. */ BPF_SOCK_OPS_PARSE_HDR_OPT_CB, /* Parse the header option. * It will be called to handle * the packets received at * an already established * connection. * * sock_ops->skb_data: * Referring to the received skb. * It covers the TCP header only. * * bpf_load_hdr_opt() can also * be used to search for a * particular option. */ BPF_SOCK_OPS_HDR_OPT_LEN_CB, /* Reserve space for writing the * header option later in * BPF_SOCK_OPS_WRITE_HDR_OPT_CB. * Arg1: bool want_cookie. (in * writing SYNACK only) * * sock_ops->skb_data: * Not available because no header has * been written yet. * * sock_ops->skb_tcp_flags: * The tcp_flags of the * outgoing skb. (e.g. SYN, ACK, FIN). * * bpf_reserve_hdr_opt() should * be used to reserve space. */ BPF_SOCK_OPS_WRITE_HDR_OPT_CB, /* Write the header options * Arg1: bool want_cookie. (in * writing SYNACK only) * * sock_ops->skb_data: * Referring to the outgoing skb. * It covers the TCP header * that has already been written * by the kernel and the * earlier bpf-progs. * * sock_ops->skb_tcp_flags: * The tcp_flags of the outgoing * skb. (e.g. SYN, ACK, FIN). * * bpf_store_hdr_opt() should * be used to write the * option. * * bpf_load_hdr_opt() can also * be used to search for a * particular option that * has already been written * by the kernel or the * earlier bpf-progs. */ }; /* List of TCP states. There is a build check in net/ipv4/tcp.c to detect * changes between the TCP and BPF versions. Ideally this should never happen. * If it does, we need to add code to convert them before calling * the BPF sock_ops function. */ enum { BPF_TCP_ESTABLISHED = 1, BPF_TCP_SYN_SENT, BPF_TCP_SYN_RECV, BPF_TCP_FIN_WAIT1, BPF_TCP_FIN_WAIT2, BPF_TCP_TIME_WAIT, BPF_TCP_CLOSE, BPF_TCP_CLOSE_WAIT, BPF_TCP_LAST_ACK, BPF_TCP_LISTEN, BPF_TCP_CLOSING, /* Now a valid state */ BPF_TCP_NEW_SYN_RECV, BPF_TCP_MAX_STATES /* Leave at the end! */ }; enum { TCP_BPF_IW = 1001, /* Set TCP initial congestion window */ TCP_BPF_SNDCWND_CLAMP = 1002, /* Set sndcwnd_clamp */ TCP_BPF_DELACK_MAX = 1003, /* Max delay ack in usecs */ TCP_BPF_RTO_MIN = 1004, /* Min delay ack in usecs */ /* Copy the SYN pkt to optval * * BPF_PROG_TYPE_SOCK_OPS only. It is similar to the * bpf_getsockopt(TCP_SAVED_SYN) but it does not limit * to only getting from the saved_syn. It can either get the * syn packet from: * * 1. the just-received SYN packet (only available when writing the * SYNACK). It will be useful when it is not necessary to * save the SYN packet for latter use. It is also the only way * to get the SYN during syncookie mode because the syn * packet cannot be saved during syncookie. * * OR * * 2. the earlier saved syn which was done by * bpf_setsockopt(TCP_SAVE_SYN). * * The bpf_getsockopt(TCP_BPF_SYN*) option will hide where the * SYN packet is obtained. * * If the bpf-prog does not need the IP[46] header, the * bpf-prog can avoid parsing the IP header by using * TCP_BPF_SYN. Otherwise, the bpf-prog can get both * IP[46] and TCP header by using TCP_BPF_SYN_IP. * * >0: Total number of bytes copied * -ENOSPC: Not enough space in optval. Only optlen number of * bytes is copied. * -ENOENT: The SYN skb is not available now and the earlier SYN pkt * is not saved by setsockopt(TCP_SAVE_SYN). */ TCP_BPF_SYN = 1005, /* Copy the TCP header */ TCP_BPF_SYN_IP = 1006, /* Copy the IP[46] and TCP header */ TCP_BPF_SYN_MAC = 1007, /* Copy the MAC, IP[46], and TCP header */ }; enum { BPF_LOAD_HDR_OPT_TCP_SYN = (1ULL << 0), }; /* args[0] value during BPF_SOCK_OPS_HDR_OPT_LEN_CB and * BPF_SOCK_OPS_WRITE_HDR_OPT_CB. */ enum { BPF_WRITE_HDR_TCP_CURRENT_MSS = 1, /* Kernel is finding the * total option spaces * required for an established * sk in order to calculate the * MSS. No skb is actually * sent. */ BPF_WRITE_HDR_TCP_SYNACK_COOKIE = 2, /* Kernel is in syncookie mode * when sending a SYN. */ }; struct bpf_perf_event_value { __u64 counter; __u64 enabled; __u64 running; }; enum { BPF_DEVCG_ACC_MKNOD = (1ULL << 0), BPF_DEVCG_ACC_READ = (1ULL << 1), BPF_DEVCG_ACC_WRITE = (1ULL << 2), }; enum { BPF_DEVCG_DEV_BLOCK = (1ULL << 0), BPF_DEVCG_DEV_CHAR = (1ULL << 1), }; struct bpf_cgroup_dev_ctx { /* access_type encoded as (BPF_DEVCG_ACC_* << 16) | BPF_DEVCG_DEV_* */ __u32 access_type; __u32 major; __u32 minor; }; struct bpf_raw_tracepoint_args { __u64 args[0]; }; /* DIRECT: Skip the FIB rules and go to FIB table associated with device * OUTPUT: Do lookup from egress perspective; default is ingress */ enum { BPF_FIB_LOOKUP_DIRECT = (1U << 0), BPF_FIB_LOOKUP_OUTPUT = (1U << 1), BPF_FIB_LOOKUP_SKIP_NEIGH = (1U << 2), }; enum { BPF_FIB_LKUP_RET_SUCCESS, /* lookup successful */ BPF_FIB_LKUP_RET_BLACKHOLE, /* dest is blackholed; can be dropped */ BPF_FIB_LKUP_RET_UNREACHABLE, /* dest is unreachable; can be dropped */ BPF_FIB_LKUP_RET_PROHIBIT, /* dest not allowed; can be dropped */ BPF_FIB_LKUP_RET_NOT_FWDED, /* packet is not forwarded */ BPF_FIB_LKUP_RET_FWD_DISABLED, /* fwding is not enabled on ingress */ BPF_FIB_LKUP_RET_UNSUPP_LWT, /* fwd requires encapsulation */ BPF_FIB_LKUP_RET_NO_NEIGH, /* no neighbor entry for nh */ BPF_FIB_LKUP_RET_FRAG_NEEDED, /* fragmentation required to fwd */ }; struct bpf_fib_lookup { /* input: network family for lookup (AF_INET, AF_INET6) * output: network family of egress nexthop */ __u8 family; /* set if lookup is to consider L4 data - e.g., FIB rules */ __u8 l4_protocol; __be16 sport; __be16 dport; union { /* used for MTU check */ /* input to lookup */ __u16 tot_len; /* L3 length from network hdr (iph->tot_len) */ /* output: MTU value */ __u16 mtu_result; }; /* input: L3 device index for lookup * output: device index from FIB lookup */ __u32 ifindex; union { /* inputs to lookup */ __u8 tos; /* AF_INET */ __be32 flowinfo; /* AF_INET6, flow_label + priority */ /* output: metric of fib result (IPv4/IPv6 only) */ __u32 rt_metric; }; union { __be32 ipv4_src; __u32 ipv6_src[4]; /* in6_addr; network order */ }; /* input to bpf_fib_lookup, ipv{4,6}_dst is destination address in * network header. output: bpf_fib_lookup sets to gateway address * if FIB lookup returns gateway route */ union { __be32 ipv4_dst; __u32 ipv6_dst[4]; /* in6_addr; network order */ }; /* output */ __be16 h_vlan_proto; __be16 h_vlan_TCI; __u8 smac[6]; /* ETH_ALEN */ __u8 dmac[6]; /* ETH_ALEN */ }; struct bpf_redir_neigh { /* network family for lookup (AF_INET, AF_INET6) */ __u32 nh_family; /* network address of nexthop; skips fib lookup to find gateway */ union { __be32 ipv4_nh; __u32 ipv6_nh[4]; /* in6_addr; network order */ }; }; /* bpf_check_mtu flags*/ enum bpf_check_mtu_flags { BPF_MTU_CHK_SEGS = (1U << 0), }; enum bpf_check_mtu_ret { BPF_MTU_CHK_RET_SUCCESS, /* check and lookup successful */ BPF_MTU_CHK_RET_FRAG_NEEDED, /* fragmentation required to fwd */ BPF_MTU_CHK_RET_SEGS_TOOBIG, /* GSO re-segmentation needed to fwd */ }; enum bpf_task_fd_type { BPF_FD_TYPE_RAW_TRACEPOINT, /* tp name */ BPF_FD_TYPE_TRACEPOINT, /* tp name */ BPF_FD_TYPE_KPROBE, /* (symbol + offset) or addr */ BPF_FD_TYPE_KRETPROBE, /* (symbol + offset) or addr */ BPF_FD_TYPE_UPROBE, /* filename + offset */ BPF_FD_TYPE_URETPROBE, /* filename + offset */ }; enum { BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG = (1U << 0), BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL = (1U << 1), BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP = (1U << 2), }; struct bpf_flow_keys { __u16 nhoff; __u16 thoff; __u16 addr_proto; /* ETH_P_* of valid addrs */ __u8 is_frag; __u8 is_first_frag; __u8 is_encap; __u8 ip_proto; __be16 n_proto; __be16 sport; __be16 dport; union { struct { __be32 ipv4_src; __be32 ipv4_dst; }; struct { __u32 ipv6_src[4]; /* in6_addr; network order */ __u32 ipv6_dst[4]; /* in6_addr; network order */ }; }; __u32 flags; __be32 flow_label; }; struct bpf_func_info { __u32 insn_off; __u32 type_id; }; #define BPF_LINE_INFO_LINE_NUM(line_col) ((line_col) >> 10) #define BPF_LINE_INFO_LINE_COL(line_col) ((line_col) & 0x3ff) struct bpf_line_info { __u32 insn_off; __u32 file_name_off; __u32 line_off; __u32 line_col; }; struct bpf_spin_lock { __u32 val; }; struct bpf_timer { __u64 :64; __u64 :64; } __attribute__((aligned(8))); struct bpf_dynptr { __u64 :64; __u64 :64; } __attribute__((aligned(8))); struct bpf_list_head { __u64 :64; __u64 :64; } __attribute__((aligned(8))); struct bpf_list_node { __u64 :64; __u64 :64; } __attribute__((aligned(8))); struct bpf_rb_root { __u64 :64; __u64 :64; } __attribute__((aligned(8))); struct bpf_rb_node { __u64 :64; __u64 :64; __u64 :64; } __attribute__((aligned(8))); struct bpf_refcount { __u32 :32; } __attribute__((aligned(4))); struct bpf_sysctl { __u32 write; /* Sysctl is being read (= 0) or written (= 1). * Allows 1,2,4-byte read, but no write. */ __u32 file_pos; /* Sysctl file position to read from, write to. * Allows 1,2,4-byte read an 4-byte write. */ }; struct bpf_sockopt { __bpf_md_ptr(struct bpf_sock *, sk); __bpf_md_ptr(void *, optval); __bpf_md_ptr(void *, optval_end); __s32 level; __s32 optname; __s32 optlen; __s32 retval; }; struct bpf_pidns_info { __u32 pid; __u32 tgid; }; /* User accessible data for SK_LOOKUP programs. Add new fields at the end. */ struct bpf_sk_lookup { union { __bpf_md_ptr(struct bpf_sock *, sk); /* Selected socket */ __u64 cookie; /* Non-zero if socket was selected in PROG_TEST_RUN */ }; __u32 family; /* Protocol family (AF_INET, AF_INET6) */ __u32 protocol; /* IP protocol (IPPROTO_TCP, IPPROTO_UDP) */ __u32 remote_ip4; /* Network byte order */ __u32 remote_ip6[4]; /* Network byte order */ __be16 remote_port; /* Network byte order */ __u16 :16; /* Zero padding */ __u32 local_ip4; /* Network byte order */ __u32 local_ip6[4]; /* Network byte order */ __u32 local_port; /* Host byte order */ __u32 ingress_ifindex; /* The arriving interface. Determined by inet_iif. */ }; /* * struct btf_ptr is used for typed pointer representation; the * type id is used to render the pointer data as the appropriate type * via the bpf_snprintf_btf() helper described above. A flags field - * potentially to specify additional details about the BTF pointer * (rather than its mode of display) - is included for future use. * Display flags - BTF_F_* - are passed to bpf_snprintf_btf separately. */ struct btf_ptr { void *ptr; __u32 type_id; __u32 flags; /* BTF ptr flags; unused at present. */ }; /* * Flags to control bpf_snprintf_btf() behaviour. * - BTF_F_COMPACT: no formatting around type information * - BTF_F_NONAME: no struct/union member names/types * - BTF_F_PTR_RAW: show raw (unobfuscated) pointer values; * equivalent to %px. * - BTF_F_ZERO: show zero-valued struct/union members; they * are not displayed by default */ enum { BTF_F_COMPACT = (1ULL << 0), BTF_F_NONAME = (1ULL << 1), BTF_F_PTR_RAW = (1ULL << 2), BTF_F_ZERO = (1ULL << 3), }; /* bpf_core_relo_kind encodes which aspect of captured field/type/enum value * has to be adjusted by relocations. It is emitted by llvm and passed to * libbpf and later to the kernel. */ enum bpf_core_relo_kind { BPF_CORE_FIELD_BYTE_OFFSET = 0, /* field byte offset */ BPF_CORE_FIELD_BYTE_SIZE = 1, /* field size in bytes */ BPF_CORE_FIELD_EXISTS = 2, /* field existence in target kernel */ BPF_CORE_FIELD_SIGNED = 3, /* field signedness (0 - unsigned, 1 - signed) */ BPF_CORE_FIELD_LSHIFT_U64 = 4, /* bitfield-specific left bitshift */ BPF_CORE_FIELD_RSHIFT_U64 = 5, /* bitfield-specific right bitshift */ BPF_CORE_TYPE_ID_LOCAL = 6, /* type ID in local BPF object */ BPF_CORE_TYPE_ID_TARGET = 7, /* type ID in target kernel */ BPF_CORE_TYPE_EXISTS = 8, /* type existence in target kernel */ BPF_CORE_TYPE_SIZE = 9, /* type size in bytes */ BPF_CORE_ENUMVAL_EXISTS = 10, /* enum value existence in target kernel */ BPF_CORE_ENUMVAL_VALUE = 11, /* enum value integer value */ BPF_CORE_TYPE_MATCHES = 12, /* type match in target kernel */ }; /* * "struct bpf_core_relo" is used to pass relocation data form LLVM to libbpf * and from libbpf to the kernel. * * CO-RE relocation captures the following data: * - insn_off - instruction offset (in bytes) within a BPF program that needs * its insn->imm field to be relocated with actual field info; * - type_id - BTF type ID of the "root" (containing) entity of a relocatable * type or field; * - access_str_off - offset into corresponding .BTF string section. String * interpretation depends on specific relocation kind: * - for field-based relocations, string encodes an accessed field using * a sequence of field and array indices, separated by colon (:). It's * conceptually very close to LLVM's getelementptr ([0]) instruction's * arguments for identifying offset to a field. * - for type-based relocations, strings is expected to be just "0"; * - for enum value-based relocations, string contains an index of enum * value within its enum type; * - kind - one of enum bpf_core_relo_kind; * * Example: * struct sample { * int a; * struct { * int b[10]; * }; * }; * * struct sample *s = ...; * int *x = &s->a; // encoded as "0:0" (a is field #0) * int *y = &s->b[5]; // encoded as "0:1:0:5" (anon struct is field #1, * // b is field #0 inside anon struct, accessing elem #5) * int *z = &s[10]->b; // encoded as "10:1" (ptr is used as an array) * * type_id for all relocs in this example will capture BTF type id of * `struct sample`. * * Such relocation is emitted when using __builtin_preserve_access_index() * Clang built-in, passing expression that captures field address, e.g.: * * bpf_probe_read(&dst, sizeof(dst), * __builtin_preserve_access_index(&src->a.b.c)); * * In this case Clang will emit field relocation recording necessary data to * be able to find offset of embedded `a.b.c` field within `src` struct. * * [0] https://llvm.org/docs/LangRef.html#getelementptr-instruction */ struct bpf_core_relo { __u32 insn_off; __u32 type_id; __u32 access_str_off; enum bpf_core_relo_kind kind; }; /* * Flags to control bpf_timer_start() behaviour. * - BPF_F_TIMER_ABS: Timeout passed is absolute time, by default it is * relative to current time. */ enum { BPF_F_TIMER_ABS = (1ULL << 0), }; /* BPF numbers iterator state */ struct bpf_iter_num { /* opaque iterator state; having __u64 here allows to preserve correct * alignment requirements in vmlinux.h, generated from BTF */ __u64 __opaque[1]; } __attribute__((aligned(8))); #endif /* _UAPI__LINUX_BPF_H__ */ #ifndef __HAVE_BUILTIN_BSWAP16__ #define __HAVE_BUILTIN_BSWAP16__ #endif #ifndef __HAVE_BUILTIN_BSWAP32__ #define __HAVE_BUILTIN_BSWAP32__ #endif #ifndef __HAVE_BUILTIN_BSWAP64__ #define __HAVE_BUILTIN_BSWAP64__ #endif /** * commit b2f557eae9ed ("kasan, arm64: adjust shadow size for tag-based mode") * KASAN_SHADOW_SCALE_SHIFT moved from headers to the arm64 Makefile * see: * https://github.com/torvalds/linux/commit/b2f557eae9ed */ #ifdef __aarch64__ #if defined(CONFIG_KASAN) && !defined(KASAN_SHADOW_SCALE_SHIFT) #ifdef CONFIG_KASAN_SW_TAGS #define KASAN_SHADOW_SCALE_SHIFT 4 #endif #ifdef CONFIG_KASAN_GENERIC #define KASAN_SHADOW_SCALE_SHIFT 3 #endif #endif #endif /* * Copyright (c) 2015 PLUMgrid, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef __BCC_PROTO_H #define __BCC_PROTO_H #include #define BPF_PACKET_HEADER __attribute__((packed)) __attribute__((deprecated("packet"))) struct ethernet_t { unsigned long long dst:48; unsigned long long src:48; unsigned int type:16; } BPF_PACKET_HEADER; struct dot1q_t { unsigned short pri:3; unsigned short cfi:1; unsigned short vlanid:12; unsigned short type; } BPF_PACKET_HEADER; struct arp_t { unsigned short htype; unsigned short ptype; unsigned char hlen; unsigned char plen; unsigned short oper; unsigned long long sha:48; unsigned long long spa:32; unsigned long long tha:48; unsigned int tpa; } BPF_PACKET_HEADER; struct ip_t { unsigned char ver:4; // byte 0 unsigned char hlen:4; unsigned char tos; unsigned short tlen; unsigned short identification; // byte 4 unsigned short ffo_unused:1; unsigned short df:1; unsigned short mf:1; unsigned short foffset:13; unsigned char ttl; // byte 8 unsigned char nextp; unsigned short hchecksum; unsigned int src; // byte 12 unsigned int dst; // byte 16 } BPF_PACKET_HEADER; struct icmp_t { unsigned char type; unsigned char code; unsigned short checksum; } BPF_PACKET_HEADER; struct ip6_t { unsigned int ver:4; unsigned int priority:8; unsigned int flow_label:20; unsigned short payload_len; unsigned char next_header; unsigned char hop_limit; unsigned long long src_hi; unsigned long long src_lo; unsigned long long dst_hi; unsigned long long dst_lo; } BPF_PACKET_HEADER; struct ip6_opt_t { unsigned char next_header; unsigned char ext_len; unsigned char pad[6]; } BPF_PACKET_HEADER; struct icmp6_t { unsigned char type; unsigned char code; unsigned short checksum; } BPF_PACKET_HEADER; struct udp_t { unsigned short sport; unsigned short dport; unsigned short length; unsigned short crc; } BPF_PACKET_HEADER; struct tcp_t { unsigned short src_port; // byte 0 unsigned short dst_port; unsigned int seq_num; // byte 4 unsigned int ack_num; // byte 8 unsigned char offset:4; // byte 12 unsigned char reserved:4; unsigned char flag_cwr:1; unsigned char flag_ece:1; unsigned char flag_urg:1; unsigned char flag_ack:1; unsigned char flag_psh:1; unsigned char flag_rst:1; unsigned char flag_syn:1; unsigned char flag_fin:1; unsigned short rcv_wnd; unsigned short cksum; // byte 16 unsigned short urg_ptr; } BPF_PACKET_HEADER; struct vxlan_t { unsigned int rsv1:4; unsigned int iflag:1; unsigned int rsv2:3; unsigned int rsv3:24; unsigned int key:24; unsigned int rsv4:8; } BPF_PACKET_HEADER; struct vxlan_gbp_t { unsigned int gflag:1; unsigned int rsv1:3; unsigned int iflag:1; unsigned int rsv2:3; unsigned int rsv3:1; unsigned int dflag:1; unsigned int rsv4:1; unsigned int aflag:1; unsigned int rsv5:3; unsigned int tag:16; unsigned int key:24; unsigned int rsv6:8; } BPF_PACKET_HEADER; #endif /* * Copyright (c) 2015 PLUMgrid, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef __BPF_HELPERS_H #define __BPF_HELPERS_H /* In Linux 5.4 asm_inline was introduced, but it's not supported by clang. * Redefine it to just asm to enable successful compilation. */ #ifdef asm_inline #undef asm_inline #define asm_inline asm #endif /* Before bpf_helpers.h is included, uapi bpf.h has been * included, which references linux/types.h. This may bring * in asm_volatile_goto definition if permitted based on * compiler setup and kernel configs. * * clang does not support "asm volatile goto" yet. * So redefine asm_volatile_goto to some invalid asm code. * If asm_volatile_goto is actually used by the bpf program, * a compilation error will appear. */ #ifdef asm_volatile_goto #undef asm_volatile_goto #endif #define asm_volatile_goto(x...) asm volatile("invalid use of asm_volatile_goto") /* In 4.18 and later, when CONFIG_FUNCTION_TRACER is defined, kernel Makefile adds * -DCC_USING_FENTRY. Let do the same for bpf programs. */ #if defined(CONFIG_FUNCTION_TRACER) #define CC_USING_FENTRY #endif #include #include #include #include #include #ifndef CONFIG_BPF_SYSCALL #error "CONFIG_BPF_SYSCALL is undefined, please check your .config or ask your Linux distro to enable this feature" #endif #ifdef PERF_MAX_STACK_DEPTH #define BPF_MAX_STACK_DEPTH PERF_MAX_STACK_DEPTH #else #define BPF_MAX_STACK_DEPTH 127 #endif /* helper macro to place programs, maps, license in * different sections in elf_bpf file. Section names * are interpreted by elf_bpf loader */ #define BCC_SEC(NAME) __attribute__((section(NAME), used)) #ifdef B_WORKAROUND #define BCC_SEC_HELPERS BCC_SEC("helpers") #else #define BCC_SEC_HELPERS #endif // Associate map with its key/value types #define BPF_ANNOTATE_KV_PAIR(name, type_key, type_val) \ struct ____btf_map_##name { \ type_key key; \ type_val value; \ }; \ struct ____btf_map_##name \ __attribute__ ((section(".maps." #name), used)) \ ____btf_map_##name = { } // Associate map with its key/value types for QUEUE/STACK map types #define BPF_ANNOTATE_KV_PAIR_QUEUESTACK(name, type_val) \ struct ____btf_map_##name { \ type_val value; \ }; \ struct ____btf_map_##name \ __attribute__ ((section(".maps." #name), used)) \ ____btf_map_##name = { } // Changes to the macro require changes in BFrontendAction classes #define BPF_F_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries, _flags) \ struct _name##_table_t { \ _key_type key; \ _leaf_type leaf; \ _leaf_type * (*lookup) (_key_type *); \ _leaf_type * (*lookup_or_init) (_key_type *, _leaf_type *); \ _leaf_type * (*lookup_or_try_init) (_key_type *, _leaf_type *); \ int (*update) (_key_type *, _leaf_type *); \ int (*insert) (_key_type *, _leaf_type *); \ int (*delete) (_key_type *); \ void (*call) (void *, int index); \ void (*increment) (_key_type, ...); \ void (*atomic_increment) (_key_type, ...); \ int (*get_stackid) (void *, u64); \ void * (*sk_storage_get) (void *, void *, int); \ int (*sk_storage_delete) (void *); \ void * (*inode_storage_get) (void *, void *, int); \ int (*inode_storage_delete) (void *); \ void * (*task_storage_get) (void *, void *, int); \ int (*task_storage_delete) (void *); \ u32 max_entries; \ int flags; \ }; \ __attribute__((section("maps/" _table_type))) \ struct _name##_table_t _name = { .flags = (_flags), .max_entries = (_max_entries) }; \ BPF_ANNOTATE_KV_PAIR(_name, _key_type, _leaf_type) // Changes to the macro require changes in BFrontendAction classes #define BPF_QUEUESTACK(_table_type, _name, _leaf_type, _max_entries, _flags) \ struct _name##_table_t { \ _leaf_type leaf; \ int * (*peek) (_leaf_type *); \ int * (*pop) (_leaf_type *); \ int * (*push) (_leaf_type *, u64); \ u32 max_entries; \ int flags; \ }; \ __attribute__((section("maps/" _table_type))) \ struct _name##_table_t _name = { .flags = (_flags), .max_entries = (_max_entries) }; \ BPF_ANNOTATE_KV_PAIR_QUEUESTACK(_name, _leaf_type) // define queue with 3 parameters (_type=queue/stack automatically) and default flags to 0 #define BPF_QUEUE_STACK3(_type, _name, _leaf_type, _max_entries) \ BPF_QUEUESTACK(_type, _name, _leaf_type, _max_entries, 0) // define queue with 4 parameters (_type=queue/stack automatically) #define BPF_QUEUE_STACK4(_type, _name, _leaf_type, _max_entries, _flags) \ BPF_QUEUESTACK(_type, _name, _leaf_type, _max_entries, _flags) // helper for default-variable macro function #define BPF_QUEUE_STACKX(_1, _2, _3, _4, NAME, ...) NAME #define BPF_QUEUE(...) \ BPF_QUEUE_STACKX(__VA_ARGS__, BPF_QUEUE_STACK4, BPF_QUEUE_STACK3)("queue", __VA_ARGS__) #define BPF_STACK(...) \ BPF_QUEUE_STACKX(__VA_ARGS__, BPF_QUEUE_STACK4, BPF_QUEUE_STACK3)("stack", __VA_ARGS__) #define BPF_QUEUESTACK_PINNED(_table_type, _name, _leaf_type, _max_entries, _flags, _pinned) \ BPF_QUEUESTACK(_table_type ":" _pinned, _name, _leaf_type, _max_entries, _flags) #define BPF_QUEUESTACK_PUBLIC(_table_type, _name, _leaf_type, _max_entries, _flags) \ BPF_QUEUESTACK(_table_type, _name, _leaf_type, _max_entries, _flags); \ __attribute__((section("maps/export"))) \ struct _name##_table_t __##_name #define BPF_QUEUESTACK_SHARED(_table_type, _name, _leaf_type, _max_entries, _flags) \ BPF_QUEUESTACK(_table_type, _name, _leaf_type, _max_entries, _flags); \ __attribute__((section("maps/shared"))) \ struct _name##_table_t __##_name #define BPF_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries) \ BPF_F_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries, 0) #define BPF_TABLE_PINNED7(_table_type, _key_type, _leaf_type, _name, _max_entries, _pinned, _flags) \ BPF_F_TABLE(_table_type ":" _pinned, _key_type, _leaf_type, _name, _max_entries, _flags) #define BPF_TABLE_PINNED6(_table_type, _key_type, _leaf_type, _name, _max_entries, _pinned) \ BPF_F_TABLE(_table_type ":" _pinned, _key_type, _leaf_type, _name, _max_entries, 0) #define BPF_TABLE_PINNEDX(_1, _2, _3, _4, _5, _6, _7, NAME, ...) NAME // Define a pinned table with optional flags argument #define BPF_TABLE_PINNED(...) \ BPF_TABLE_PINNEDX(__VA_ARGS__, BPF_TABLE_PINNED7, BPF_TABLE_PINNED6)(__VA_ARGS__) // define a table same as above but allow it to be referenced by other modules #define BPF_TABLE_PUBLIC(_table_type, _key_type, _leaf_type, _name, _max_entries) \ BPF_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries); \ __attribute__((section("maps/export"))) \ struct _name##_table_t __##_name // define a table that is shared across the programs in the same namespace #define BPF_TABLE_SHARED(_table_type, _key_type, _leaf_type, _name, _max_entries) \ BPF_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries); \ __attribute__((section("maps/shared"))) \ struct _name##_table_t __##_name // Identifier for current CPU used in perf_submit and perf_read // Prefer BPF_F_CURRENT_CPU flag, falls back to call helper for older kernel // Can be overridden from BCC #ifndef CUR_CPU_IDENTIFIER #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0) #define CUR_CPU_IDENTIFIER BPF_F_CURRENT_CPU #else #define CUR_CPU_IDENTIFIER bpf_get_smp_processor_id() #endif #endif // Table for pushing custom events to userspace via perf ring buffer #define BPF_PERF_OUTPUT(_name) \ struct _name##_table_t { \ int key; \ u32 leaf; \ /* map.perf_submit(ctx, data, data_size) */ \ int (*perf_submit) (void *, void *, u32); \ int (*perf_submit_skb) (void *, u32, void *, u32); \ u32 max_entries; \ }; \ __attribute__((section("maps/perf_output"))) \ struct _name##_table_t _name = { .max_entries = 0 } // Table for pushing custom events to userspace via ring buffer #define BPF_RINGBUF_OUTPUT(_name, _num_pages) \ struct _name##_table_t { \ int key; \ u32 leaf; \ /* map.ringbuf_output(data, data_size, flags) */ \ int (*ringbuf_output) (void *, u64, u64); \ /* map.ringbuf_reserve(data_size) */ \ void* (*ringbuf_reserve) (u64); \ /* map.ringbuf_discard(data, flags) */ \ void (*ringbuf_discard) (void *, u64); \ /* map.ringbuf_submit(data, flags) */ \ void (*ringbuf_submit) (void *, u64); \ /* map.ringbuf_query(flags) */ \ u64 (*ringbuf_query) (u64); \ u32 max_entries; \ }; \ __attribute__((section("maps/ringbuf"))) \ struct _name##_table_t _name = { .max_entries = ((_num_pages) * PAGE_SIZE) } // Table for reading hw perf cpu counters #define BPF_PERF_ARRAY(_name, _max_entries) \ struct _name##_table_t { \ int key; \ u32 leaf; \ /* counter = map.perf_read(index) */ \ u64 (*perf_read) (int); \ int (*perf_counter_value) (int, void *, u32); \ u32 max_entries; \ }; \ __attribute__((section("maps/perf_array"))) \ struct _name##_table_t _name = { .max_entries = (_max_entries) } // Table for cgroup file descriptors #define BPF_CGROUP_ARRAY(_name, _max_entries) \ struct _name##_table_t { \ int key; \ u32 leaf; \ int (*check_current_task) (int); \ u32 max_entries; \ }; \ __attribute__((section("maps/cgroup_array"))) \ struct _name##_table_t _name = { .max_entries = (_max_entries) } #define BPF_HASH1(_name) \ BPF_TABLE("hash", u64, u64, _name, 10240) #define BPF_HASH2(_name, _key_type) \ BPF_TABLE("hash", _key_type, u64, _name, 10240) #define BPF_HASH3(_name, _key_type, _leaf_type) \ BPF_TABLE("hash", _key_type, _leaf_type, _name, 10240) #define BPF_HASH4(_name, _key_type, _leaf_type, _size) \ BPF_TABLE("hash", _key_type, _leaf_type, _name, _size) // helper for default-variable macro function #define BPF_HASHX(_1, _2, _3, _4, NAME, ...) NAME // Define a hash function, some arguments optional // BPF_HASH(name, key_type=u64, leaf_type=u64, size=10240) #define BPF_HASH(...) \ BPF_HASHX(__VA_ARGS__, BPF_HASH4, BPF_HASH3, BPF_HASH2, BPF_HASH1)(__VA_ARGS__) #define BPF_PERCPU_HASH1(_name) \ BPF_TABLE("percpu_hash", u64, u64, _name, 10240) #define BPF_PERCPU_HASH2(_name, _key_type) \ BPF_TABLE("percpu_hash", _key_type, u64, _name, 10240) #define BPF_PERCPU_HASH3(_name, _key_type, _leaf_type) \ BPF_TABLE("percpu_hash", _key_type, _leaf_type, _name, 10240) #define BPF_PERCPU_HASH4(_name, _key_type, _leaf_type, _size) \ BPF_TABLE("percpu_hash", _key_type, _leaf_type, _name, _size) // helper for default-variable macro function #define BPF_PERCPU_HASHX(_1, _2, _3, _4, NAME, ...) NAME // Define a hash function, some arguments optional // BPF_PERCPU_HASH(name, key_type=u64, leaf_type=u64, size=10240) #define BPF_PERCPU_HASH(...) \ BPF_PERCPU_HASHX( \ __VA_ARGS__, BPF_PERCPU_HASH4, BPF_PERCPU_HASH3, BPF_PERCPU_HASH2, BPF_PERCPU_HASH1) \ (__VA_ARGS__) #define BPF_ARRAY1(_name) \ BPF_TABLE("array", int, u64, _name, 10240) #define BPF_ARRAY2(_name, _leaf_type) \ BPF_TABLE("array", int, _leaf_type, _name, 10240) #define BPF_ARRAY3(_name, _leaf_type, _size) \ BPF_TABLE("array", int, _leaf_type, _name, _size) // helper for default-variable macro function #define BPF_ARRAYX(_1, _2, _3, NAME, ...) NAME // Define an array function, some arguments optional // BPF_ARRAY(name, leaf_type=u64, size=10240) #define BPF_ARRAY(...) \ BPF_ARRAYX(__VA_ARGS__, BPF_ARRAY3, BPF_ARRAY2, BPF_ARRAY1)(__VA_ARGS__) #define BPF_PERCPU_ARRAY1(_name) \ BPF_TABLE("percpu_array", int, u64, _name, 10240) #define BPF_PERCPU_ARRAY2(_name, _leaf_type) \ BPF_TABLE("percpu_array", int, _leaf_type, _name, 10240) #define BPF_PERCPU_ARRAY3(_name, _leaf_type, _size) \ BPF_TABLE("percpu_array", int, _leaf_type, _name, _size) // helper for default-variable macro function #define BPF_PERCPU_ARRAYX(_1, _2, _3, NAME, ...) NAME // Define an array function (per CPU), some arguments optional // BPF_PERCPU_ARRAY(name, leaf_type=u64, size=10240) #define BPF_PERCPU_ARRAY(...) \ BPF_PERCPU_ARRAYX( \ __VA_ARGS__, BPF_PERCPU_ARRAY3, BPF_PERCPU_ARRAY2, BPF_PERCPU_ARRAY1) \ (__VA_ARGS__) #define BPF_HIST1(_name) \ BPF_TABLE("histogram", int, u64, _name, 64) #define BPF_HIST2(_name, _key_type) \ BPF_TABLE("histogram", _key_type, u64, _name, 64) #define BPF_HIST3(_name, _key_type, _size) \ BPF_TABLE("histogram", _key_type, u64, _name, _size) #define BPF_HISTX(_1, _2, _3, NAME, ...) NAME // Define a histogram, some arguments optional // BPF_HISTOGRAM(name, key_type=int, size=64) #define BPF_HISTOGRAM(...) \ BPF_HISTX(__VA_ARGS__, BPF_HIST3, BPF_HIST2, BPF_HIST1)(__VA_ARGS__) #define BPF_LPM_TRIE1(_name) \ BPF_F_TABLE("lpm_trie", u64, u64, _name, 10240, BPF_F_NO_PREALLOC) #define BPF_LPM_TRIE2(_name, _key_type) \ BPF_F_TABLE("lpm_trie", _key_type, u64, _name, 10240, BPF_F_NO_PREALLOC) #define BPF_LPM_TRIE3(_name, _key_type, _leaf_type) \ BPF_F_TABLE("lpm_trie", _key_type, _leaf_type, _name, 10240, BPF_F_NO_PREALLOC) #define BPF_LPM_TRIE4(_name, _key_type, _leaf_type, _size) \ BPF_F_TABLE("lpm_trie", _key_type, _leaf_type, _name, _size, BPF_F_NO_PREALLOC) #define BPF_LPM_TRIEX(_1, _2, _3, _4, NAME, ...) NAME // Define a LPM trie function, some arguments optional // BPF_LPM_TRIE(name, key_type=u64, leaf_type=u64, size=10240) #define BPF_LPM_TRIE(...) \ BPF_LPM_TRIEX(__VA_ARGS__, BPF_LPM_TRIE4, BPF_LPM_TRIE3, BPF_LPM_TRIE2, BPF_LPM_TRIE1)(__VA_ARGS__) struct bpf_stacktrace { u64 ip[BPF_MAX_STACK_DEPTH]; }; struct bpf_stacktrace_buildid { struct bpf_stack_build_id trace[BPF_MAX_STACK_DEPTH]; }; #define BPF_STACK_TRACE(_name, _max_entries) \ BPF_TABLE("stacktrace", int, struct bpf_stacktrace, _name, roundup_pow_of_two(_max_entries)) #define BPF_STACK_TRACE_BUILDID(_name, _max_entries) \ BPF_F_TABLE("stacktrace", int, struct bpf_stacktrace_buildid, _name, roundup_pow_of_two(_max_entries), BPF_F_STACK_BUILD_ID) #define BPF_PROG_ARRAY(_name, _max_entries) \ BPF_TABLE("prog", u32, u32, _name, _max_entries) #define BPF_XDP_REDIRECT_MAP(_table_type, _leaf_type, _name, _max_entries) \ struct _name##_table_t { \ u32 key; \ _leaf_type leaf; \ /* xdp_act = map.redirect_map(index, flag) */ \ u64 (*redirect_map) (int, int); \ u32 max_entries; \ }; \ __attribute__((section("maps/"_table_type))) \ struct _name##_table_t _name = { .max_entries = (_max_entries) } #define BPF_DEVMAP(_name, _max_entries) \ BPF_XDP_REDIRECT_MAP("devmap", int, _name, _max_entries) #define BPF_CPUMAP(_name, _max_entries) \ BPF_XDP_REDIRECT_MAP("cpumap", u32, _name, _max_entries) #define _BPF_XSKMAP(_name, _max_entries, _pinned) \ struct _name##_table_t { \ u32 key; \ int leaf; \ int * (*lookup) (int *); \ /* xdp_act = map.redirect_map(index, flag) */ \ u64 (*redirect_map) (int, int); \ u32 max_entries; \ }; \ __attribute__((section("maps/xskmap" _pinned))) \ struct _name##_table_t _name = { .max_entries = (_max_entries) } #define BPF_XSKMAP2(_name, _max_entries) _BPF_XSKMAP(_name, _max_entries, "") #define BPF_XSKMAP3(_name, _max_entries, _pinned) _BPF_XSKMAP(_name, _max_entries, ":" _pinned) #define BPF_XSKMAPX(_1, _2, _3, NAME, ...) NAME #define BPF_XSKMAP(...) BPF_XSKMAPX(__VA_ARGS__, BPF_XSKMAP3, BPF_XSKMAP2)(__VA_ARGS__) #define BPF_ARRAY_OF_MAPS(_name, _inner_map_name, _max_entries) \ BPF_TABLE("array_of_maps$" _inner_map_name, int, int, _name, _max_entries) #define BPF_HASH_OF_MAPS2(_name, _inner_map_name) \ BPF_TABLE("hash_of_maps$" _inner_map_name, int, int, _name, 10240) #define BPF_HASH_OF_MAPS3(_name, _key_type, _inner_map_name) \ BPF_TABLE("hash_of_maps$" _inner_map_name, _key_type, int, _name, 10240) #define BPF_HASH_OF_MAPS4(_name, _key_type, _inner_map_name, _max_entries) \ BPF_TABLE("hash_of_maps$" _inner_map_name, _key_type, int, _name, _max_entries) #define BPF_HASH_OF_MAPSX(_name, _2, _3, _4, NAME, ...) NAME #define BPF_HASH_OF_MAPS(...) \ BPF_HASH_OF_MAPSX(__VA_ARGS__, BPF_HASH_OF_MAPS4, BPF_HASH_OF_MAPS3, BPF_HASH_OF_MAPS2)(__VA_ARGS__) #define BPF_SK_STORAGE(_name, _leaf_type) \ struct _name##_table_t { \ int key; \ _leaf_type leaf; \ void * (*sk_storage_get) (void *, void *, int); \ int (*sk_storage_delete) (void *); \ u32 flags; \ }; \ __attribute__((section("maps/sk_storage"))) \ struct _name##_table_t _name = { .flags = BPF_F_NO_PREALLOC }; \ BPF_ANNOTATE_KV_PAIR(_name, int, _leaf_type) #define BPF_INODE_STORAGE(_name, _leaf_type) \ struct _name##_table_t { \ int key; \ _leaf_type leaf; \ void * (*inode_storage_get) (void *, void *, int); \ int (*inode_storage_delete) (void *); \ u32 flags; \ }; \ __attribute__((section("maps/inode_storage"))) \ struct _name##_table_t _name = { .flags = BPF_F_NO_PREALLOC }; \ BPF_ANNOTATE_KV_PAIR(_name, int, _leaf_type) #define BPF_TASK_STORAGE(_name, _leaf_type) \ struct _name##_table_t { \ int key; \ _leaf_type leaf; \ void * (*task_storage_get) (void *, void *, int); \ int (*task_storage_delete) (void *); \ u32 flags; \ }; \ __attribute__((section("maps/task_storage"))) \ struct _name##_table_t _name = { .flags = BPF_F_NO_PREALLOC }; \ BPF_ANNOTATE_KV_PAIR(_name, int, _leaf_type) #define BPF_SOCKMAP_COMMON(_name, _max_entries, _kind, _helper_name) \ struct _name##_table_t { \ u32 key; \ int leaf; \ int (*update) (u32 *, int *); \ int (*delete) (u32 *); \ /* ret = map.sock_map_update(ctx, key, flag) */ \ int (* _helper_name) (void *, void *, u64); \ u32 max_entries; \ }; \ __attribute__((section("maps/" _kind))) \ struct _name##_table_t _name = { .max_entries = (_max_entries) }; \ BPF_ANNOTATE_KV_PAIR(_name, u32, int) #define BPF_SOCKMAP(_name, _max_entries) \ BPF_SOCKMAP_COMMON(_name, _max_entries, "sockmap", sock_map_update) #define BPF_SOCKHASH_COMMON(_name, _key_type, _max_entries) \ struct _name##_table_t {\ _key_type key;\ int leaf; \ int (*update) (_key_type *, int *); \ int (*delete) (_key_type *); \ int (*sock_hash_update) (void *, void *, u64); \ int (*msg_redirect_hash) (void *, void *, u64); \ int (*sk_redirect_hash) (void *, void *, u64); \ u32 max_entries; \ }; \ __attribute__((section("maps/sockhash"))) \ struct _name##_table_t _name = { .max_entries = (_max_entries) }; \ BPF_ANNOTATE_KV_PAIR(_name, _key_type, int) #define BPF_SOCKHASH1(_name) \ BPF_SOCKHASH_COMMON(_name, u32, 10240) #define BPF_SOCKHASH2(_name, _key_type) \ BPF_SOCKHASH_COMMON(_name, _key_type, 10240) #define BPF_SOCKHASH3(_name, _key_type, _max_entries) \ BPF_SOCKHASH_COMMON(_name, _key_type, _max_entries) #define BPF_SOCKHASHX(_1, _2, _3, NAME, ...) NAME // We can define a five-tuple as the key, and basically never define the val type. // BPF_SOCKHASH(name, key_type=u64, size=10240) #define BPF_SOCKHASH(...) \ BPF_SOCKHASHX(__VA_ARGS__, BPF_SOCKHASH3, BPF_SOCKHASH2, BPF_SOCKHASH1)(__VA_ARGS__) #define BPF_CGROUP_STORAGE_COMMON(_name, _leaf_type, _kind) \ struct _name##_table_t { \ struct bpf_cgroup_storage_key key; \ _leaf_type leaf; \ _leaf_type * (*lookup) (struct bpf_cgroup_storage_key *); \ int (*update) (struct bpf_cgroup_storage_key *, _leaf_type *); \ int (*get_local_storage) (u64); \ }; \ __attribute__((section("maps/" _kind))) \ struct _name##_table_t _name = { 0 }; \ BPF_ANNOTATE_KV_PAIR(_name, struct bpf_cgroup_storage_key, _leaf_type) #define BPF_CGROUP_STORAGE(_name, _leaf_type) \ BPF_CGROUP_STORAGE_COMMON(_name, _leaf_type, "cgroup_storage") #define BPF_PERCPU_CGROUP_STORAGE(_name, _leaf_type) \ BPF_CGROUP_STORAGE_COMMON(_name, _leaf_type, "percpu_cgroup_storage") // packet parsing state machine helpers #define cursor_advance(_cursor, _len) \ ({ void *_tmp = _cursor; _cursor += _len; _tmp; }) #ifdef LINUX_VERSION_CODE_OVERRIDE unsigned _version BCC_SEC("version") = LINUX_VERSION_CODE_OVERRIDE; #else unsigned _version BCC_SEC("version") = LINUX_VERSION_CODE; #endif /* helper functions called from eBPF programs written in C */ static void *(*bpf_map_lookup_elem)(void *map, void *key) = (void *) BPF_FUNC_map_lookup_elem; static int (*bpf_map_update_elem)(void *map, void *key, void *value, u64 flags) = (void *) BPF_FUNC_map_update_elem; static int (*bpf_map_delete_elem)(void *map, void *key) = (void *) BPF_FUNC_map_delete_elem; static int (*bpf_probe_read)(void *dst, u64 size, const void *unsafe_ptr) = (void *) BPF_FUNC_probe_read; static u64 (*bpf_ktime_get_ns)(void) = (void *) BPF_FUNC_ktime_get_ns; static u32 (*bpf_get_prandom_u32)(void) = (void *) BPF_FUNC_get_prandom_u32; static int (*bpf_trace_printk_)(const char *fmt, u64 fmt_size, ...) = (void *) BPF_FUNC_trace_printk; static int (*bpf_probe_read_str)(void *dst, u64 size, const void *unsafe_ptr) = (void *) BPF_FUNC_probe_read_str; int bpf_trace_printk(const char *fmt, ...) asm("llvm.bpf.extra"); static inline __attribute__((always_inline)) void bpf_tail_call_(void *map_fd, void *ctx, int index) { ((void (*)(void *, u64, int))BPF_FUNC_tail_call)(ctx, (u64)map_fd, index); } static int (*bpf_clone_redirect)(void *ctx, int ifindex, u32 flags) = (void *) BPF_FUNC_clone_redirect; static u64 (*bpf_get_smp_processor_id)(void) = (void *) BPF_FUNC_get_smp_processor_id; static u64 (*bpf_get_current_pid_tgid)(void) = (void *) BPF_FUNC_get_current_pid_tgid; static u64 (*bpf_get_current_uid_gid)(void) = (void *) BPF_FUNC_get_current_uid_gid; static int (*bpf_get_current_comm)(void *buf, int buf_size) = (void *) BPF_FUNC_get_current_comm; static u64 (*bpf_get_cgroup_classid)(void *ctx) = (void *) BPF_FUNC_get_cgroup_classid; static u64 (*bpf_skb_vlan_push)(void *ctx, u16 proto, u16 vlan_tci) = (void *) BPF_FUNC_skb_vlan_push; static u64 (*bpf_skb_vlan_pop)(void *ctx) = (void *) BPF_FUNC_skb_vlan_pop; static int (*bpf_skb_get_tunnel_key)(void *ctx, void *to, u32 size, u64 flags) = (void *) BPF_FUNC_skb_get_tunnel_key; static int (*bpf_skb_set_tunnel_key)(void *ctx, void *from, u32 size, u64 flags) = (void *) BPF_FUNC_skb_set_tunnel_key; static u64 (*bpf_perf_event_read)(void *map, u64 flags) = (void *) BPF_FUNC_perf_event_read; static int (*bpf_redirect)(int ifindex, u32 flags) = (void *) BPF_FUNC_redirect; static u32 (*bpf_get_route_realm)(void *ctx) = (void *) BPF_FUNC_get_route_realm; static int (*bpf_perf_event_output)(void *ctx, void *map, u64 index, void *data, u32 size) = (void *) BPF_FUNC_perf_event_output; static int (*bpf_skb_load_bytes)(void *ctx, int offset, void *to, u32 len) = (void *) BPF_FUNC_skb_load_bytes; static int (*bpf_perf_event_read_value)(void *map, u64 flags, void *buf, u32 buf_size) = (void *) BPF_FUNC_perf_event_read_value; static int (*bpf_perf_prog_read_value)(void *ctx, void *buf, u32 buf_size) = (void *) BPF_FUNC_perf_prog_read_value; static int (*bpf_current_task_under_cgroup)(void *map, int index) = (void *) BPF_FUNC_current_task_under_cgroup; static u32 (*bpf_get_socket_cookie)(void *ctx) = (void *) BPF_FUNC_get_socket_cookie; static u64 (*bpf_get_socket_uid)(void *ctx) = (void *) BPF_FUNC_get_socket_uid; static int (*bpf_getsockopt)(void *ctx, int level, int optname, void *optval, int optlen) = (void *) BPF_FUNC_getsockopt; static int (*bpf_redirect_map)(void *map, int key, int flags) = (void *) BPF_FUNC_redirect_map; static int (*bpf_set_hash)(void *ctx, u32 hash) = (void *) BPF_FUNC_set_hash; static int (*bpf_setsockopt)(void *ctx, int level, int optname, void *optval, int optlen) = (void *) BPF_FUNC_setsockopt; static int (*bpf_skb_adjust_room)(void *ctx, int len_diff, u32 mode, u64 flags) = (void *) BPF_FUNC_skb_adjust_room; static int (*bpf_skb_under_cgroup)(void *ctx, void *map, int index) = (void *) BPF_FUNC_skb_under_cgroup; static struct bpf_sock *(*bpf_skc_lookup_tcp)(void *ctx, struct bpf_sock_tuple *tuple, int size, unsigned long long netns_id, unsigned long long flags) = (void *) BPF_FUNC_skc_lookup_tcp; static int (*bpf_sk_redirect_map)(void *ctx, void *map, int key, int flags) = (void *) BPF_FUNC_sk_redirect_map; static int (*bpf_sock_map_update)(void *map, void *key, void *value, unsigned long long flags) = (void *) BPF_FUNC_sock_map_update; static int (*bpf_strtol)(const char *buf, size_t buf_len, u64 flags, long *res) = (void *) BPF_FUNC_strtol; static int (*bpf_strtoul)(const char *buf, size_t buf_len, u64 flags, unsigned long *res) = (void *) BPF_FUNC_strtoul; static int (*bpf_sysctl_get_current_value)(struct bpf_sysctl *ctx, char *buf, size_t buf_len) = (void *) BPF_FUNC_sysctl_get_current_value; static int (*bpf_sysctl_get_name)(struct bpf_sysctl *ctx, char *buf, size_t buf_len, u64 flags) = (void *) BPF_FUNC_sysctl_get_name; static int (*bpf_sysctl_get_new_value)(struct bpf_sysctl *ctx, char *buf, size_t buf_len) = (void *) BPF_FUNC_sysctl_get_new_value; static int (*bpf_sysctl_set_new_value)(struct bpf_sysctl *ctx, const char *buf, size_t buf_len) = (void *) BPF_FUNC_sysctl_set_new_value; static int (*bpf_tcp_check_syncookie)(void *sk, void *ip, int ip_len, void *tcp, int tcp_len) = (void *) BPF_FUNC_tcp_check_syncookie; static int (*bpf_xdp_adjust_meta)(void *ctx, int offset) = (void *) BPF_FUNC_xdp_adjust_meta; /* bcc_get_stackid will return a negative value in the case of an error * * BPF_STACK_TRACE(_name, _size) will allocate space for _size stack traces. * -ENOMEM will be returned when this limit is reached. * * -EFAULT is typically returned when requesting user-space stack straces (using * BPF_F_USER_STACK) for kernel threads. However, a valid stackid may be * returned in some cases; consider a tracepoint or kprobe executing in the * kernel context. Given this you can typically ignore -EFAULT errors when * retrieving user-space stack traces. */ static int (*bcc_get_stackid_)(void *ctx, void *map, u64 flags) = (void *) BPF_FUNC_get_stackid; static inline __attribute__((always_inline)) int bcc_get_stackid(uintptr_t map, void *ctx, u64 flags) { return bcc_get_stackid_(ctx, (void *)map, flags); } static int (*bpf_csum_diff)(void *from, u64 from_size, void *to, u64 to_size, u64 seed) = (void *) BPF_FUNC_csum_diff; static int (*bpf_skb_get_tunnel_opt)(void *ctx, void *md, u32 size) = (void *) BPF_FUNC_skb_get_tunnel_opt; static int (*bpf_skb_set_tunnel_opt)(void *ctx, void *md, u32 size) = (void *) BPF_FUNC_skb_set_tunnel_opt; static int (*bpf_skb_change_proto)(void *ctx, u16 proto, u64 flags) = (void *) BPF_FUNC_skb_change_proto; static int (*bpf_skb_change_type)(void *ctx, u32 type) = (void *) BPF_FUNC_skb_change_type; static u32 (*bpf_get_hash_recalc)(void *ctx) = (void *) BPF_FUNC_get_hash_recalc; static u64 (*bpf_get_current_task)(void) = (void *) BPF_FUNC_get_current_task; static int (*bpf_probe_write_user)(void *dst, void *src, u32 size) = (void *) BPF_FUNC_probe_write_user; static int (*bpf_skb_change_tail)(void *ctx, u32 new_len, u64 flags) = (void *) BPF_FUNC_skb_change_tail; static int (*bpf_skb_pull_data)(void *ctx, u32 len) = (void *) BPF_FUNC_skb_pull_data; static int (*bpf_csum_update)(void *ctx, u16 csum) = (void *) BPF_FUNC_csum_update; static int (*bpf_set_hash_invalid)(void *ctx) = (void *) BPF_FUNC_set_hash_invalid; static int (*bpf_get_numa_node_id)(void) = (void *) BPF_FUNC_get_numa_node_id; static int (*bpf_skb_change_head)(void *ctx, u32 len, u64 flags) = (void *) BPF_FUNC_skb_change_head; static int (*bpf_xdp_adjust_head)(void *ctx, int offset) = (void *) BPF_FUNC_xdp_adjust_head; static int (*bpf_override_return)(void *pt_regs, unsigned long rc) = (void *) BPF_FUNC_override_return; static int (*bpf_sock_ops_cb_flags_set)(void *skops, int flags) = (void *) BPF_FUNC_sock_ops_cb_flags_set; static int (*bpf_msg_redirect_map)(void *msg, void *map, u32 key, u64 flags) = (void *) BPF_FUNC_msg_redirect_map; static int (*bpf_msg_apply_bytes)(void *msg, u32 bytes) = (void *) BPF_FUNC_msg_apply_bytes; static int (*bpf_msg_cork_bytes)(void *msg, u32 bytes) = (void *) BPF_FUNC_msg_cork_bytes; static int (*bpf_msg_pull_data)(void *msg, u32 start, u32 end, u64 flags) = (void *) BPF_FUNC_msg_pull_data; static int (*bpf_bind)(void *ctx, void *addr, int addr_len) = (void *) BPF_FUNC_bind; static int (*bpf_xdp_adjust_tail)(void *ctx, int offset) = (void *) BPF_FUNC_xdp_adjust_tail; static int (*bpf_skb_get_xfrm_state)(void *ctx, u32 index, void *xfrm_state, u32 size, u64 flags) = (void *) BPF_FUNC_skb_get_xfrm_state; static int (*bpf_get_stack)(void *ctx, void *buf, u32 size, u64 flags) = (void *) BPF_FUNC_get_stack; static int (*bpf_skb_load_bytes_relative)(void *ctx, u32 offset, void *to, u32 len, u32 start_header) = (void *) BPF_FUNC_skb_load_bytes_relative; static int (*bpf_fib_lookup)(void *ctx, void *params, int plen, u32 flags) = (void *) BPF_FUNC_fib_lookup; static int (*bpf_sock_hash_update)(void *ctx, void *map, void *key, u64 flags) = (void *) BPF_FUNC_sock_hash_update; static int (*bpf_msg_redirect_hash)(void *ctx, void *map, void *key, u64 flags) = (void *) BPF_FUNC_msg_redirect_hash; static int (*bpf_sk_redirect_hash)(void *ctx, void *map, void *key, u64 flags) = (void *) BPF_FUNC_sk_redirect_hash; static int (*bpf_lwt_push_encap)(void *skb, u32 type, void *hdr, u32 len) = (void *) BPF_FUNC_lwt_push_encap; static int (*bpf_lwt_seg6_store_bytes)(void *ctx, u32 offset, const void *from, u32 len) = (void *) BPF_FUNC_lwt_seg6_store_bytes; static int (*bpf_lwt_seg6_adjust_srh)(void *ctx, u32 offset, s32 delta) = (void *) BPF_FUNC_lwt_seg6_adjust_srh; static int (*bpf_lwt_seg6_action)(void *ctx, u32 action, void *param, u32 param_len) = (void *) BPF_FUNC_lwt_seg6_action; static int (*bpf_rc_keydown)(void *ctx, u32 protocol, u64 scancode, u32 toggle) = (void *) BPF_FUNC_rc_keydown; static int (*bpf_rc_repeat)(void *ctx) = (void *) BPF_FUNC_rc_repeat; static u64 (*bpf_skb_cgroup_id)(void *skb) = (void *) BPF_FUNC_skb_cgroup_id; static u64 (*bpf_get_current_cgroup_id)(void) = (void *) BPF_FUNC_get_current_cgroup_id; static u64 (*bpf_skb_ancestor_cgroup_id)(void *skb, int ancestor_level) = (void *) BPF_FUNC_skb_ancestor_cgroup_id; static void * (*bpf_get_local_storage)(void *map, u64 flags) = (void *) BPF_FUNC_get_local_storage; static int (*bpf_sk_select_reuseport)(void *reuse, void *map, void *key, u64 flags) = (void *) BPF_FUNC_sk_select_reuseport; static struct bpf_sock *(*bpf_sk_lookup_tcp)(void *ctx, struct bpf_sock_tuple *tuple, int size, unsigned int netns_id, unsigned long long flags) = (void *) BPF_FUNC_sk_lookup_tcp; static struct bpf_sock *(*bpf_sk_lookup_udp)(void *ctx, struct bpf_sock_tuple *tuple, int size, unsigned int netns_id, unsigned long long flags) = (void *) BPF_FUNC_sk_lookup_udp; static int (*bpf_sk_release)(void *sk) = (void *) BPF_FUNC_sk_release; static int (*bpf_map_push_elem)(void *map, const void *value, u64 flags) = (void *) BPF_FUNC_map_push_elem; static int (*bpf_map_pop_elem)(void *map, void *value) = (void *) BPF_FUNC_map_pop_elem; static int (*bpf_map_peek_elem)(void *map, void *value) = (void *) BPF_FUNC_map_peek_elem; static int (*bpf_msg_push_data)(void *skb, u32 start, u32 len, u64 flags) = (void *) BPF_FUNC_msg_push_data; static int (*bpf_msg_pop_data)(void *msg, u32 start, u32 pop, u64 flags) = (void *) BPF_FUNC_msg_pop_data; static int (*bpf_rc_pointer_rel)(void *ctx, s32 rel_x, s32 rel_y) = (void *) BPF_FUNC_rc_pointer_rel; static void (*bpf_spin_lock)(struct bpf_spin_lock *lock) = (void *) BPF_FUNC_spin_lock; static void (*bpf_spin_unlock)(struct bpf_spin_lock *lock) = (void *) BPF_FUNC_spin_unlock; static struct bpf_sock *(*bpf_sk_fullsock)(struct bpf_sock *sk) = (void *) BPF_FUNC_sk_fullsock; static struct bpf_tcp_sock *(*bpf_tcp_sock)(struct bpf_sock *sk) = (void *) BPF_FUNC_tcp_sock; static int (*bpf_skb_ecn_set_ce)(void *ctx) = (void *) BPF_FUNC_skb_ecn_set_ce; static struct bpf_sock *(*bpf_get_listener_sock)(struct bpf_sock *sk) = (void *) BPF_FUNC_get_listener_sock; static void *(*bpf_sk_storage_get)(void *map, void *sk, void *value, __u64 flags) = (void *) BPF_FUNC_sk_storage_get; static int (*bpf_sk_storage_delete)(void *map, void *sk) = (void *)BPF_FUNC_sk_storage_delete; static int (*bpf_send_signal)(unsigned sig) = (void *)BPF_FUNC_send_signal; static long long (*bpf_tcp_gen_syncookie)(void *sk, void *ip, int ip_len, void *tcp, int tcp_len) = (void *) BPF_FUNC_tcp_gen_syncookie; static int (*bpf_skb_output)(void *ctx, void *map, __u64 flags, void *data, __u64 size) = (void *)BPF_FUNC_skb_output; static int (*bpf_probe_read_user)(void *dst, __u32 size, const void *unsafe_ptr) = (void *)BPF_FUNC_probe_read_user; static int (*bpf_probe_read_kernel)(void *dst, __u32 size, const void *unsafe_ptr) = (void *)BPF_FUNC_probe_read_kernel; static int (*bpf_probe_read_user_str)(void *dst, __u32 size, const void *unsafe_ptr) = (void *)BPF_FUNC_probe_read_user_str; static int (*bpf_probe_read_kernel_str)(void *dst, __u32 size, const void *unsafe_ptr) = (void *)BPF_FUNC_probe_read_kernel_str; static int (*bpf_tcp_send_ack)(void *tp, __u32 rcv_nxt) = (void *)BPF_FUNC_tcp_send_ack; static int (*bpf_send_signal_thread)(__u32 sig) = (void *)BPF_FUNC_send_signal_thread; static __u64 (*bpf_jiffies64)(void) = (void *)BPF_FUNC_jiffies64; struct bpf_perf_event_data; static int (*bpf_read_branch_records)(struct bpf_perf_event_data *ctx, void *buf, __u32 size, __u64 flags) = (void *)BPF_FUNC_read_branch_records; static int (*bpf_get_ns_current_pid_tgid)(__u64 dev, __u64 ino, struct bpf_pidns_info *nsdata, __u32 size) = (void *)BPF_FUNC_get_ns_current_pid_tgid; struct bpf_map; static int (*bpf_xdp_output)(void *ctx, struct bpf_map *map, __u64 flags, void *data, __u64 size) = (void *)BPF_FUNC_xdp_output; static __u64 (*bpf_get_netns_cookie)(void *ctx) = (void *)BPF_FUNC_get_netns_cookie; static __u64 (*bpf_get_current_ancestor_cgroup_id)(int ancestor_level) = (void *)BPF_FUNC_get_current_ancestor_cgroup_id; struct sk_buff; static int (*bpf_sk_assign)(void *skb, void *sk, __u64 flags) = (void *)BPF_FUNC_sk_assign; static __u64 (*bpf_ktime_get_boot_ns)(void) = (void *)BPF_FUNC_ktime_get_boot_ns; struct seq_file; static int (*bpf_seq_printf)(struct seq_file *m, const char *fmt, __u32 fmt_size, const void *data, __u32 data_len) = (void *)BPF_FUNC_seq_printf; static int (*bpf_seq_write)(struct seq_file *m, const void *data, __u32 len) = (void *)BPF_FUNC_seq_write; static __u64 (*bpf_sk_cgroup_id)(void *sk) = (void *)BPF_FUNC_sk_cgroup_id; static __u64 (*bpf_sk_ancestor_cgroup_id)(void *sk, int ancestor_level) = (void *)BPF_FUNC_sk_ancestor_cgroup_id; static int (*bpf_ringbuf_output)(void *ringbuf, void *data, __u64 size, __u64 flags) = (void *)BPF_FUNC_ringbuf_output; static void *(*bpf_ringbuf_reserve)(void *ringbuf, __u64 size, __u64 flags) = (void *)BPF_FUNC_ringbuf_reserve; static void (*bpf_ringbuf_submit)(void *data, __u64 flags) = (void *)BPF_FUNC_ringbuf_submit; static void (*bpf_ringbuf_discard)(void *data, __u64 flags) = (void *)BPF_FUNC_ringbuf_discard; static __u64 (*bpf_ringbuf_query)(void *ringbuf, __u64 flags) = (void *)BPF_FUNC_ringbuf_query; static int (*bpf_csum_level)(struct __sk_buff *skb, __u64 level) = (void *)BPF_FUNC_csum_level; struct tcp6_sock; struct tcp_sock; struct tcp_timewait_sock; struct tcp_request_sock; struct udp6_sock; static struct tcp6_sock *(*bpf_skc_to_tcp6_sock)(void *sk) = (void *)BPF_FUNC_skc_to_tcp6_sock; static struct tcp_sock *(*bpf_skc_to_tcp_sock)(void *sk) = (void *)BPF_FUNC_skc_to_tcp_sock; static struct tcp_timewait_sock *(*bpf_skc_to_tcp_timewait_sock)(void *sk) = (void *)BPF_FUNC_skc_to_tcp_timewait_sock; static struct tcp_request_sock *(*bpf_skc_to_tcp_request_sock)(void *sk) = (void *)BPF_FUNC_skc_to_tcp_request_sock; static struct udp6_sock *(*bpf_skc_to_udp6_sock)(void *sk) = (void *)BPF_FUNC_skc_to_udp6_sock; struct task_struct; static long (*bpf_get_task_stack)(struct task_struct *task, void *buf, __u32 size, __u64 flags) = (void *)BPF_FUNC_get_task_stack; struct bpf_sock_ops; static long (*bpf_load_hdr_opt)(struct bpf_sock_ops *skops, void *searchby_res, u32 len, u64 flags) = (void *)BPF_FUNC_load_hdr_opt; static long (*bpf_store_hdr_opt)(struct bpf_sock_ops *skops, const void *from, u32 len, u64 flags) = (void *)BPF_FUNC_store_hdr_opt; static long (*bpf_reserve_hdr_opt)(struct bpf_sock_ops *skops, u32 len, u64 flags) = (void *)BPF_FUNC_reserve_hdr_opt; static void *(*bpf_inode_storage_get)(struct bpf_map *map, void *inode, void *value, u64 flags) = (void *)BPF_FUNC_inode_storage_get; static int (*bpf_inode_storage_delete)(struct bpf_map *map, void *inode) = (void *)BPF_FUNC_inode_storage_delete; struct path; static long (*bpf_d_path)(struct path *path, char *buf, u32 sz) = (void *)BPF_FUNC_d_path; static long (*bpf_copy_from_user)(void *dst, u32 size, const void *user_ptr) = (void *)BPF_FUNC_copy_from_user; static long (*bpf_snprintf_btf)(char *str, u32 str_size, struct btf_ptr *ptr, u32 btf_ptr_size, u64 flags) = (void *)BPF_FUNC_snprintf_btf; static long (*bpf_seq_printf_btf)(struct seq_file *m, struct btf_ptr *ptr, u32 ptr_size, u64 flags) = (void *)BPF_FUNC_seq_printf_btf; static u64 (*bpf_skb_cgroup_classid)(struct sk_buff *skb) = (void *)BPF_FUNC_skb_cgroup_classid; static long (*bpf_redirect_neigh)(u32 ifindex, struct bpf_redir_neigh *params, u64 flags) = (void *)BPF_FUNC_redirect_neigh; static void * (*bpf_per_cpu_ptr)(const void *percpu_ptr, u32 cpu) = (void *)BPF_FUNC_per_cpu_ptr; static void * (*bpf_this_cpu_ptr)(const void *percpu_ptr) = (void *)BPF_FUNC_this_cpu_ptr; static long (*bpf_redirect_peer)(u32 ifindex, u64 flags) = (void *)BPF_FUNC_redirect_peer; static void *(*bpf_task_storage_get)(void *map, struct task_struct *task, void *value, __u64 flags) = (void *)BPF_FUNC_task_storage_get; static long (*bpf_task_storage_delete)(void *map, struct task_struct *task) = (void *)BPF_FUNC_task_storage_delete; static struct task_struct *(*bpf_get_current_task_btf)(void) = (void *)BPF_FUNC_get_current_task_btf; struct linux_binprm; static long (*bpf_bprm_opts_set)(struct linux_binprm *bprm, __u64 flags) = (void *)BPF_FUNC_bprm_opts_set; static __u64 (*bpf_ktime_get_coarse_ns)(void) = (void *)BPF_FUNC_ktime_get_coarse_ns; struct inode; static long (*bpf_ima_inode_hash)(struct inode *inode, void *dst, __u32 size) = (void *)BPF_FUNC_ima_inode_hash; struct file; static struct socket *(*bpf_sock_from_file)(struct file *file) = (void *)BPF_FUNC_sock_from_file; static long (*bpf_check_mtu)(void *ctx, __u32 ifindex, __u32 *mtu_len, __s32 len_diff, __u64 flags) = (void *)BPF_FUNC_check_mtu; static long (*bpf_for_each_map_elem)(void *map, void *callback_fn, void *callback_ctx, __u64 flags) = (void *)BPF_FUNC_for_each_map_elem; static long (*bpf_snprintf)(char *str, __u32 str_size, const char *fmt, __u64 *data, __u32 data_len) = (void *)BPF_FUNC_snprintf; static long (*bpf_sys_bpf)(__u32 cmd, void *attr, __u32 attr_size) = (void *)BPF_FUNC_sys_bpf; static long (*bpf_btf_find_by_name_kind)(char *name, int name_sz, __u32 kind, int flags) = (void *)BPF_FUNC_btf_find_by_name_kind; static long (*bpf_sys_close)(__u32 fd) = (void *)BPF_FUNC_sys_close; struct bpf_timer; static long (*bpf_timer_init)(struct bpf_timer *timer, void *map, __u64 flags) = (void *)BPF_FUNC_timer_init; static long (*bpf_timer_set_callback)(struct bpf_timer *timer, void *callback_fn) = (void *)BPF_FUNC_timer_set_callback; static long (*bpf_timer_start)(struct bpf_timer *timer, __u64 nsecs, __u64 flags) = (void *)BPF_FUNC_timer_start; static long (*bpf_timer_cancel)(struct bpf_timer *timer) = (void *)BPF_FUNC_timer_cancel; static __u64 (*bpf_get_func_ip)(void *ctx) = (void *)BPF_FUNC_get_func_ip; static __u64 (*bpf_get_attach_cookie)(void *ctx) = (void *)BPF_FUNC_get_attach_cookie; static long (*bpf_task_pt_regs)(struct task_struct *task) = (void *)BPF_FUNC_task_pt_regs; static long (*bpf_get_branch_snapshot)(void *entries, __u32 size, __u64 flags) = (void *)BPF_FUNC_get_branch_snapshot; static long (*bpf_trace_vprintk)(const char *fmt, __u32 fmt_size, const void *data, __u32 data_len) = (void *)BPF_FUNC_trace_vprintk; static struct unix_sock *(*bpf_skc_to_unix_sock)(void *sk) = (void *)BPF_FUNC_skc_to_unix_sock; static long (*bpf_kallsyms_lookup_name)(const char *name, int name_sz, int flags, __u64 *res) = (void *)BPF_FUNC_kallsyms_lookup_name; static long (*bpf_find_vma)(struct task_struct *task, __u64 addr, void *callback_fn, void *callback_ctx, __u64 flags) = (void *)BPF_FUNC_find_vma; static long (*bpf_loop)(__u32 nr_loops, void *callback_fn, void *callback_ctx, __u64 flags) = (void *)BPF_FUNC_loop; static long (*bpf_strncmp)(const char *s1, __u32 s1_sz, const char *s2) = (void *)BPF_FUNC_strncmp; static long (*bpf_get_func_arg)(void *ctx, __u32 n, __u64 *value) = (void *)BPF_FUNC_get_func_arg; static long (*bpf_get_func_ret)(void *ctx, __u64 *value) = (void *)BPF_FUNC_get_func_ret; static long (*bpf_get_func_arg_cnt)(void *ctx) = (void *)BPF_FUNC_get_func_arg_cnt; static int (*bpf_get_retval)(void) = (void *)BPF_FUNC_get_retval; static int (*bpf_set_retval)(int retval) = (void *)BPF_FUNC_set_retval; static __u64 (*bpf_xdp_get_buff_len)(struct xdp_md *xdp_md) = (void *)BPF_FUNC_xdp_get_buff_len; static long (*bpf_xdp_load_bytes)(struct xdp_md *xdp_md, __u32 offset, void *buf, __u32 len) = (void *)BPF_FUNC_xdp_load_bytes; static long (*bpf_xdp_store_bytes)(struct xdp_md *xdp_md, __u32 offset, void *buf, __u32 len) = (void *)BPF_FUNC_xdp_store_bytes; static long (*bpf_copy_from_user_task)(void *dst, __u32 size, const void *user_ptr, struct task_struct *tsk, __u64 flags) = (void *)BPF_FUNC_copy_from_user_task; static long (*bpf_skb_set_tstamp)(struct __sk_buff *skb, __u64 tstamp, __u32 tstamp_type) = (void *)BPF_FUNC_skb_set_tstamp; static long (*bpf_ima_file_hash)(struct file *file, void *dst, __u32 size) = (void *)BPF_FUNC_ima_file_hash; static void *(*bpf_kptr_xchg)(void *map_value, void *ptr) = (void *)BPF_FUNC_kptr_xchg; static void *(*bpf_map_lookup_percpu_elem)(void *map, const void *key, __u32 cpu) = (void *)BPF_FUNC_map_lookup_percpu_elem; struct mptcp_sock; struct bpf_dynptr; struct iphdr; struct ipv6hdr; struct tcphdr; static struct mptcp_sock *(*bpf_skc_to_mptcp_sock)(void *sk) = (void *)BPF_FUNC_skc_to_mptcp_sock; static long (*bpf_dynptr_from_mem)(void *data, __u32 size, __u64 flags, struct bpf_dynptr *ptr) = (void *)BPF_FUNC_dynptr_from_mem; static long (*bpf_ringbuf_reserve_dynptr)(void *ringbuf, __u32 size, __u64 flags, struct bpf_dynptr *ptr) = (void *)BPF_FUNC_ringbuf_reserve_dynptr; static void (*bpf_ringbuf_submit_dynptr)(struct bpf_dynptr *ptr, __u64 flags) = (void *)BPF_FUNC_ringbuf_submit_dynptr; static void (*bpf_ringbuf_discard_dynptr)(struct bpf_dynptr *ptr, __u64 flags) = (void *)BPF_FUNC_ringbuf_discard_dynptr; static long (*bpf_dynptr_read)(void *dst, __u32 len, const struct bpf_dynptr *src, __u32 offset, __u64 flags) = (void *)BPF_FUNC_dynptr_read; static long (*bpf_dynptr_write)(const struct bpf_dynptr *dst, __u32 offset, void *src, __u32 len, __u64 flags) = (void *)BPF_FUNC_dynptr_write; static void *(*bpf_dynptr_data)(const struct bpf_dynptr *ptr, __u32 offset, __u32 len) = (void *)BPF_FUNC_dynptr_data; static __s64 (*bpf_tcp_raw_gen_syncookie_ipv4)(struct iphdr *iph, struct tcphdr *th, __u32 th_len) = (void *)BPF_FUNC_tcp_raw_gen_syncookie_ipv4; static __s64 (*bpf_tcp_raw_gen_syncookie_ipv6)(struct ipv6hdr *iph, struct tcphdr *th, __u32 th_len) = (void *)BPF_FUNC_tcp_raw_gen_syncookie_ipv6; static long (*bpf_tcp_raw_check_syncookie_ipv4)(struct iphdr *iph, struct tcphdr *th) = (void *)BPF_FUNC_tcp_raw_check_syncookie_ipv4; static long (*bpf_tcp_raw_check_syncookie_ipv6)(struct ipv6hdr *iph, struct tcphdr *th) = (void *)BPF_FUNC_tcp_raw_check_syncookie_ipv6; static __u64 (*bpf_ktime_get_tai_ns)(void) = (void *)BPF_FUNC_ktime_get_tai_ns; static long (*bpf_user_ringbuf_drain)(void *map, void *callback_fn, void *ctx, __u64 flags) = (void *)BPF_FUNC_user_ringbuf_drain; struct cgroup; static void *(*bpf_cgrp_storage_get)(void *map, struct cgroup *cgroup, void *value, __u64 flags) = (void *)BPF_FUNC_cgrp_storage_get; static long (*bpf_cgrp_storage_delete)(void *map, struct cgroup *cgroup) = (void *)BPF_FUNC_cgrp_storage_delete; /* llvm builtin functions that eBPF C program may use to * emit BPF_LD_ABS and BPF_LD_IND instructions */ unsigned long long load_byte(void *skb, unsigned long long off) asm("llvm.bpf.load.byte"); unsigned long long load_half(void *skb, unsigned long long off) asm("llvm.bpf.load.half"); unsigned long long load_word(void *skb, unsigned long long off) asm("llvm.bpf.load.word"); /* a helper structure used by eBPF C program * to describe map attributes to elf_bpf loader */ struct bpf_map_def { unsigned int type; unsigned int key_size; unsigned int value_size; unsigned int max_entries; }; static int (*bpf_skb_store_bytes)(void *ctx, unsigned long long off, void *from, unsigned long long len, unsigned long long flags) = (void *) BPF_FUNC_skb_store_bytes; static int (*bpf_l3_csum_replace)(void *ctx, unsigned long long off, unsigned long long from, unsigned long long to, unsigned long long flags) = (void *) BPF_FUNC_l3_csum_replace; static int (*bpf_l4_csum_replace)(void *ctx, unsigned long long off, unsigned long long from, unsigned long long to, unsigned long long flags) = (void *) BPF_FUNC_l4_csum_replace; static inline __attribute__((always_inline)) u16 bpf_ntohs(u16 val) { /* will be recognized by gcc into rotate insn and eventually rolw 8 */ return (val << 8) | (val >> 8); } static inline __attribute__((always_inline)) u32 bpf_ntohl(u32 val) { /* gcc will use bswapsi2 insn */ return __builtin_bswap32(val); } static inline __attribute__((always_inline)) u64 bpf_ntohll(u64 val) { /* gcc will use bswapdi2 insn */ return __builtin_bswap64(val); } static inline __attribute__((always_inline)) unsigned __int128 bpf_ntoh128(unsigned __int128 val) { return (((unsigned __int128)bpf_ntohll(val) << 64) | (u64)bpf_ntohll(val >> 64)); } static inline __attribute__((always_inline)) u16 bpf_htons(u16 val) { return bpf_ntohs(val); } static inline __attribute__((always_inline)) u32 bpf_htonl(u32 val) { return bpf_ntohl(val); } static inline __attribute__((always_inline)) u64 bpf_htonll(u64 val) { return bpf_ntohll(val); } static inline __attribute__((always_inline)) unsigned __int128 bpf_hton128(unsigned __int128 val) { return bpf_ntoh128(val); } static inline __attribute__((always_inline)) u64 load_dword(void *skb, u64 off) { return ((u64)load_word(skb, off) << 32) | load_word(skb, off + 4); } void bpf_store_byte(void *skb, u64 off, u64 val) asm("llvm.bpf.store.byte"); void bpf_store_half(void *skb, u64 off, u64 val) asm("llvm.bpf.store.half"); void bpf_store_word(void *skb, u64 off, u64 val) asm("llvm.bpf.store.word"); u64 bpf_pseudo_fd(u64, u64) asm("llvm.bpf.pseudo"); static inline void __attribute__((always_inline)) bpf_store_dword(void *skb, u64 off, u64 val) { bpf_store_word(skb, off, (u32)val); bpf_store_word(skb, off + 4, val >> 32); } #define MASK(_n) ((_n) < 64 ? (1ull << (_n)) - 1 : ((u64)-1LL)) #define MASK128(_n) ((_n) < 128 ? ((unsigned __int128)1 << (_n)) - 1 : ((unsigned __int128)-1)) static inline __attribute__((always_inline)) unsigned int bpf_log2(unsigned int v) { unsigned int r; unsigned int shift; r = (v > 0xFFFF) << 4; v >>= r; shift = (v > 0xFF) << 3; v >>= shift; r |= shift; shift = (v > 0xF) << 2; v >>= shift; r |= shift; shift = (v > 0x3) << 1; v >>= shift; r |= shift; r |= (v >> 1); return r; } static inline __attribute__((always_inline)) unsigned int bpf_log2l(unsigned long v) { unsigned int hi = v >> 32; if (hi) return bpf_log2(hi) + 32 + 1; else return bpf_log2(v) + 1; } struct bpf_context; static inline __attribute__((always_inline)) BCC_SEC_HELPERS u64 bpf_dext_pkt(void *pkt, u64 off, u64 bofs, u64 bsz) { if (bofs == 0 && bsz == 8) { return load_byte(pkt, off); } else if (bofs + bsz <= 8) { return load_byte(pkt, off) >> (8 - (bofs + bsz)) & MASK(bsz); } else if (bofs == 0 && bsz == 16) { return load_half(pkt, off); } else if (bofs + bsz <= 16) { return load_half(pkt, off) >> (16 - (bofs + bsz)) & MASK(bsz); } else if (bofs == 0 && bsz == 32) { return load_word(pkt, off); } else if (bofs + bsz <= 32) { return load_word(pkt, off) >> (32 - (bofs + bsz)) & MASK(bsz); } else if (bofs == 0 && bsz == 64) { return load_dword(pkt, off); } else if (bofs + bsz <= 64) { return load_dword(pkt, off) >> (64 - (bofs + bsz)) & MASK(bsz); } return 0; } static inline __attribute__((always_inline)) BCC_SEC_HELPERS void bpf_dins_pkt(void *pkt, u64 off, u64 bofs, u64 bsz, u64 val) { // The load_xxx function does a bswap before returning the short/word/dword, // so the value in register will always be host endian. However, the bytes // written back need to be in network order. if (bofs == 0 && bsz == 8) { bpf_skb_store_bytes(pkt, off, &val, 1, 0); } else if (bofs + bsz <= 8) { u8 v = load_byte(pkt, off); v &= ~(MASK(bsz) << (8 - (bofs + bsz))); v |= ((val & MASK(bsz)) << (8 - (bofs + bsz))); bpf_skb_store_bytes(pkt, off, &v, 1, 0); } else if (bofs == 0 && bsz == 16) { u16 v = bpf_htons(val); bpf_skb_store_bytes(pkt, off, &v, 2, 0); } else if (bofs + bsz <= 16) { u16 v = load_half(pkt, off); v &= ~(MASK(bsz) << (16 - (bofs + bsz))); v |= ((val & MASK(bsz)) << (16 - (bofs + bsz))); v = bpf_htons(v); bpf_skb_store_bytes(pkt, off, &v, 2, 0); } else if (bofs == 0 && bsz == 32) { u32 v = bpf_htonl(val); bpf_skb_store_bytes(pkt, off, &v, 4, 0); } else if (bofs + bsz <= 32) { u32 v = load_word(pkt, off); v &= ~(MASK(bsz) << (32 - (bofs + bsz))); v |= ((val & MASK(bsz)) << (32 - (bofs + bsz))); v = bpf_htonl(v); bpf_skb_store_bytes(pkt, off, &v, 4, 0); } else if (bofs == 0 && bsz == 64) { u64 v = bpf_htonll(val); bpf_skb_store_bytes(pkt, off, &v, 8, 0); } else if (bofs + bsz <= 64) { u64 v = load_dword(pkt, off); v &= ~(MASK(bsz) << (64 - (bofs + bsz))); v |= ((val & MASK(bsz)) << (64 - (bofs + bsz))); v = bpf_htonll(v); bpf_skb_store_bytes(pkt, off, &v, 8, 0); } } static inline __attribute__((always_inline)) BCC_SEC_HELPERS void * bpf_map_lookup_elem_(uintptr_t map, void *key) { return bpf_map_lookup_elem((void *)map, key); } static inline __attribute__((always_inline)) BCC_SEC_HELPERS int bpf_map_update_elem_(uintptr_t map, void *key, void *value, u64 flags) { return bpf_map_update_elem((void *)map, key, value, flags); } static inline __attribute__((always_inline)) BCC_SEC_HELPERS int bpf_map_delete_elem_(uintptr_t map, void *key) { return bpf_map_delete_elem((void *)map, key); } static inline __attribute__((always_inline)) BCC_SEC_HELPERS int bpf_l3_csum_replace_(void *ctx, u64 off, u64 from, u64 to, u64 flags) { switch (flags & 0xf) { case 2: return bpf_l3_csum_replace(ctx, off, bpf_htons(from), bpf_htons(to), flags); case 4: return bpf_l3_csum_replace(ctx, off, bpf_htonl(from), bpf_htonl(to), flags); case 8: return bpf_l3_csum_replace(ctx, off, bpf_htonll(from), bpf_htonll(to), flags); default: {} } return bpf_l3_csum_replace(ctx, off, from, to, flags); } static inline __attribute__((always_inline)) BCC_SEC_HELPERS int bpf_l4_csum_replace_(void *ctx, u64 off, u64 from, u64 to, u64 flags) { switch (flags & 0xf) { case 2: return bpf_l4_csum_replace(ctx, off, bpf_htons(from), bpf_htons(to), flags); case 4: return bpf_l4_csum_replace(ctx, off, bpf_htonl(from), bpf_htonl(to), flags); case 8: return bpf_l4_csum_replace(ctx, off, bpf_htonll(from), bpf_htonll(to), flags); default: {} } return bpf_l4_csum_replace(ctx, off, from, to, flags); } int incr_cksum_l3(void *off, u64 oldval, u64 newval) asm("llvm.bpf.extra"); int incr_cksum_l4(void *off, u64 oldval, u64 newval, u64 flags) asm("llvm.bpf.extra"); int bpf_num_cpus() asm("llvm.bpf.extra"); struct pt_regs; int bpf_usdt_readarg(int argc, struct pt_regs *ctx, void *arg) asm("llvm.bpf.extra"); int bpf_usdt_readarg_p(int argc, struct pt_regs *ctx, void *buf, u64 len) asm("llvm.bpf.extra"); /* Scan the ARCH passed in from ARCH env variable (see kbuild_helper.cc) */ #if defined(__TARGET_ARCH_x86) #define bpf_target_x86 #define bpf_target_defined #elif defined(__TARGET_ARCH_s390x) #define bpf_target_s390x #define bpf_target_defined #elif defined(__TARGET_ARCH_arm64) #define bpf_target_arm64 #define bpf_target_defined #elif defined(__TARGET_ARCH_powerpc) #define bpf_target_powerpc #define bpf_target_defined #elif defined(__TARGET_ARCH_mips) #define bpf_target_mips #define bpf_target_defined #elif defined(__TARGET_ARCH_riscv64) #define bpf_target_riscv64 #define bpf_target_defined #elif defined(__TARGET_ARCH_loongarch) #define bpf_target_loongarch #define bpf_target_defined #else #undef bpf_target_defined #endif /* Fall back to what the compiler says */ #ifndef bpf_target_defined #if defined(__x86_64__) #define bpf_target_x86 #elif defined(__s390x__) #define bpf_target_s390x #elif defined(__aarch64__) #define bpf_target_arm64 #elif defined(__powerpc__) #define bpf_target_powerpc #elif defined(__mips__) #define bpf_target_mips #elif defined(__riscv) && (__riscv_xlen == 64) #define bpf_target_riscv64 #elif defined(__loongarch__) #define bpf_target_loongarch #endif #endif #if defined(bpf_target_powerpc) #define PT_REGS_PARM1(ctx) ((ctx)->gpr[3]) #define PT_REGS_PARM2(ctx) ((ctx)->gpr[4]) #define PT_REGS_PARM3(ctx) ((ctx)->gpr[5]) #define PT_REGS_PARM4(ctx) ((ctx)->gpr[6]) #define PT_REGS_PARM5(ctx) ((ctx)->gpr[7]) #define PT_REGS_PARM6(ctx) ((ctx)->gpr[8]) #define PT_REGS_RC(ctx) ((ctx)->gpr[3]) #define PT_REGS_IP(ctx) ((ctx)->nip) #define PT_REGS_SP(ctx) ((ctx)->gpr[1]) #elif defined(bpf_target_s390x) #define PT_REGS_PARM1(x) ((x)->gprs[2]) #define PT_REGS_PARM2(x) ((x)->gprs[3]) #define PT_REGS_PARM3(x) ((x)->gprs[4]) #define PT_REGS_PARM4(x) ((x)->gprs[5]) #define PT_REGS_PARM5(x) ((x)->gprs[6]) #define PT_REGS_RET(x) ((x)->gprs[14]) #define PT_REGS_FP(x) ((x)->gprs[11]) /* Works only with CONFIG_FRAME_POINTER */ #define PT_REGS_RC(x) ((x)->gprs[2]) #define PT_REGS_SP(x) ((x)->gprs[15]) #define PT_REGS_IP(x) ((x)->psw.addr) #elif defined(bpf_target_x86) #define PT_REGS_PARM1(ctx) ((ctx)->di) #define PT_REGS_PARM2(ctx) ((ctx)->si) #define PT_REGS_PARM3(ctx) ((ctx)->dx) #define PT_REGS_PARM4(ctx) ((ctx)->cx) #define PT_REGS_PARM5(ctx) ((ctx)->r8) #define PT_REGS_PARM6(ctx) ((ctx)->r9) #define PT_REGS_RET(ctx) ((ctx)->sp) #define PT_REGS_FP(ctx) ((ctx)->bp) /* Works only with CONFIG_FRAME_POINTER */ #define PT_REGS_RC(ctx) ((ctx)->ax) #define PT_REGS_IP(ctx) ((ctx)->ip) #define PT_REGS_SP(ctx) ((ctx)->sp) #elif defined(bpf_target_arm64) #define PT_REGS_PARM1(x) ((x)->regs[0]) #define PT_REGS_PARM2(x) ((x)->regs[1]) #define PT_REGS_PARM3(x) ((x)->regs[2]) #define PT_REGS_PARM4(x) ((x)->regs[3]) #define PT_REGS_PARM5(x) ((x)->regs[4]) #define PT_REGS_PARM6(x) ((x)->regs[5]) #define PT_REGS_RET(x) ((x)->regs[30]) #define PT_REGS_FP(x) ((x)->regs[29]) /* Works only with CONFIG_FRAME_POINTER */ #define PT_REGS_RC(x) ((x)->regs[0]) #define PT_REGS_SP(x) ((x)->sp) #define PT_REGS_IP(x) ((x)->pc) #elif defined(bpf_target_mips) #define PT_REGS_PARM1(x) ((x)->regs[4]) #define PT_REGS_PARM2(x) ((x)->regs[5]) #define PT_REGS_PARM3(x) ((x)->regs[6]) #define PT_REGS_PARM4(x) ((x)->regs[7]) #define PT_REGS_PARM5(x) ((x)->regs[8]) #define PT_REGS_PARM6(x) ((x)->regs[9]) #define PT_REGS_RET(x) ((x)->regs[31]) #define PT_REGS_FP(x) ((x)->regs[30]) /* Works only with CONFIG_FRAME_POINTER */ #define PT_REGS_RC(x) ((x)->regs[2]) #define PT_REGS_SP(x) ((x)->regs[29]) #define PT_REGS_IP(x) ((x)->cp0_epc) #elif defined(bpf_target_riscv64) /* riscv64 provides struct user_pt_regs instead of struct pt_regs to userspace */ #define __PT_REGS_CAST(x) ((const struct user_regs_struct *)(x)) #define PT_REGS_PARM1(x) (__PT_REGS_CAST(x)->a0) #define PT_REGS_PARM2(x) (__PT_REGS_CAST(x)->a1) #define PT_REGS_PARM3(x) (__PT_REGS_CAST(x)->a2) #define PT_REGS_PARM4(x) (__PT_REGS_CAST(x)->a3) #define PT_REGS_PARM5(x) (__PT_REGS_CAST(x)->a4) #define PT_REGS_PARM6(x) (__PT_REGS_CAST(x)->a5) #define PT_REGS_RET(x) (__PT_REGS_CAST(x)->ra) #define PT_REGS_FP(x) (__PT_REGS_CAST(x)->s0) /* Works only with CONFIG_FRAME_POINTER */ #define PT_REGS_RC(x) (__PT_REGS_CAST(x)->a0) #define PT_REGS_SP(x) (__PT_REGS_CAST(x)->sp) #define PT_REGS_IP(x) (__PT_REGS_CAST(x)->pc) #elif defined(bpf_target_loongarch) #define PT_REGS_PARM1(x) ((x)->regs[4]) #define PT_REGS_PARM2(x) ((x)->regs[5]) #define PT_REGS_PARM3(x) ((x)->regs[6]) #define PT_REGS_PARM4(x) ((x)->regs[7]) #define PT_REGS_PARM5(x) ((x)->regs[8]) #define PT_REGS_PARM6(x) ((x)->regs[9]) #define PT_REGS_RET(x) ((x)->regs[1]) #define PT_REGS_FP(x) ((x)->regs[22]) /* Works only with CONFIG_FRAME_POINTER */ #define PT_REGS_RC(x) ((x)->regs[4]) #define PT_REGS_SP(x) ((x)->regs[3]) #define PT_REGS_IP(x) ((x)->csr_era) #else #error "bcc does not support this platform yet" #endif #if defined(CONFIG_ARCH_HAS_SYSCALL_WRAPPER) && !defined(__s390x__) #define PT_REGS_SYSCALL_CTX(ctx) ((struct pt_regs *)PT_REGS_PARM1(ctx)) #else #define PT_REGS_SYSCALL_CTX(ctx) (ctx) #endif /* Helpers for syscall params. Pass in a ctx returned from PT_REGS_SYSCALL_CTX. */ #define PT_REGS_PARM1_SYSCALL(ctx) PT_REGS_PARM1(ctx) #define PT_REGS_PARM2_SYSCALL(ctx) PT_REGS_PARM2(ctx) #define PT_REGS_PARM3_SYSCALL(ctx) PT_REGS_PARM3(ctx) #if defined(bpf_target_x86) #define PT_REGS_PARM4_SYSCALL(ctx) ((ctx)->r10) /* for syscall only */ #else #define PT_REGS_PARM4_SYSCALL(ctx) PT_REGS_PARM4(ctx) #endif #define PT_REGS_PARM5_SYSCALL(ctx) PT_REGS_PARM5(ctx) #ifdef PT_REGS_PARM6 #define PT_REGS_PARM6_SYSCALL(ctx) PT_REGS_PARM6(ctx) #endif #define lock_xadd(ptr, val) ((void)__sync_fetch_and_add(ptr, val)) #define TRACEPOINT_PROBE(category, event) \ int tracepoint__##category##__##event(struct tracepoint__##category##__##event *args) #define RAW_TRACEPOINT_PROBE(event) \ int raw_tracepoint__##event(struct bpf_raw_tracepoint_args *ctx) /* BPF_PROG macro allows to define trampoline function, * borrowed from kernel bpf selftest code. */ #define ___bpf_concat(a, b) a ## b #define ___bpf_apply(fn, n) ___bpf_concat(fn, n) #define ___bpf_nth(_, _1, _2, _3, _4, _5, _6, _7, _8, _9, _a, _b, _c, N, ...) N #define ___bpf_narg(...) \ ___bpf_nth(_, ##__VA_ARGS__, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0) #define ___bpf_ctx_cast0() ctx #define ___bpf_ctx_cast1(x) ___bpf_ctx_cast0(), (void *)ctx[0] #define ___bpf_ctx_cast2(x, args...) ___bpf_ctx_cast1(args), (void *)ctx[1] #define ___bpf_ctx_cast3(x, args...) ___bpf_ctx_cast2(args), (void *)ctx[2] #define ___bpf_ctx_cast4(x, args...) ___bpf_ctx_cast3(args), (void *)ctx[3] #define ___bpf_ctx_cast5(x, args...) ___bpf_ctx_cast4(args), (void *)ctx[4] #define ___bpf_ctx_cast6(x, args...) ___bpf_ctx_cast5(args), (void *)ctx[5] #define ___bpf_ctx_cast7(x, args...) ___bpf_ctx_cast6(args), (void *)ctx[6] #define ___bpf_ctx_cast8(x, args...) ___bpf_ctx_cast7(args), (void *)ctx[7] #define ___bpf_ctx_cast9(x, args...) ___bpf_ctx_cast8(args), (void *)ctx[8] #define ___bpf_ctx_cast10(x, args...) ___bpf_ctx_cast9(args), (void *)ctx[9] #define ___bpf_ctx_cast11(x, args...) ___bpf_ctx_cast10(args), (void *)ctx[10] #define ___bpf_ctx_cast12(x, args...) ___bpf_ctx_cast11(args), (void *)ctx[11] #define ___bpf_ctx_cast(args...) \ ___bpf_apply(___bpf_ctx_cast, ___bpf_narg(args))(args) #define BPF_PROG(name, args...) \ int name(unsigned long long *ctx); \ __attribute__((always_inline)) \ static int ____##name(unsigned long long *ctx, ##args); \ int name(unsigned long long *ctx) \ { \ int __ret; \ \ _Pragma("GCC diagnostic push") \ _Pragma("GCC diagnostic ignored \"-Wint-conversion\"") \ __ret = ____##name(___bpf_ctx_cast(args)); \ _Pragma("GCC diagnostic pop") \ return __ret; \ } \ static int ____##name(unsigned long long *ctx, ##args) #define KFUNC_PROBE(event, args...) \ BPF_PROG(kfunc__vmlinux__ ## event, ##args) #define KRETFUNC_PROBE(event, args...) \ BPF_PROG(kretfunc__vmlinux__ ## event, ##args) #define MODULE_KFUNC_PROBE(module, event, args...) \ BPF_PROG(kfunc__ ## module ## __ ## event, ##args) #define MODULE_KRETFUNC_PROBE(module, event, args...) \ BPF_PROG(kretfunc__ ## module ## __ ## event, ##args) #define KMOD_RET(event, args...) \ BPF_PROG(kmod_ret__ ## event, ##args) #define LSM_PROBE(event, args...) \ BPF_PROG(lsm__ ## event, ##args) #define BPF_ITER(target) \ int bpf_iter__ ## target (struct bpf_iter__ ## target *ctx) #define TP_DATA_LOC_READ_CONST(dst, field, length) \ do { \ unsigned short __offset = args->data_loc_##field & 0xFFFF; \ bpf_probe_read((void *)dst, length, (char *)args + __offset); \ } while (0) #define TP_DATA_LOC_READ(dst, field) \ do { \ unsigned short __offset = args->data_loc_##field & 0xFFFF; \ unsigned short __length = args->data_loc_##field >> 16; \ bpf_probe_read((void *)dst, __length, (char *)args + __offset); \ } while (0) #define TP_DATA_LOC_READ_STR(dst, field, length) \ do { \ unsigned short __offset = args->data_loc_##field & 0xFFFF; \ bpf_probe_read_str((void *)dst, length, (char *)args + __offset); \ } while (0) #endif /virtual/lib/clang/include/stdarg.h /*===---- stdarg.h - Variable argument handling ----------------------------=== * * Copyright (c) 2008 Eli Friedman * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. * *===-----------------------------------------------------------------------=== */ #ifndef __STDARG_H #define __STDARG_H #ifndef _VA_LIST typedef __builtin_va_list va_list; #define _VA_LIST #endif #define va_start(ap, param) __builtin_va_start(ap, param) #define va_end(ap) __builtin_va_end(ap) #define va_arg(ap, type) __builtin_va_arg(ap, type) /* GCC always defines __va_copy, but does not define va_copy unless in c99 mode * or -ansi is not specified, since it was not part of C90. */ #define __va_copy(d,s) __builtin_va_copy(d,s) #if __STDC_VERSION__ >= 199901L || __cplusplus >= 201103L || !defined(__STRICT_ANSI__) #define va_copy(dest, src) __builtin_va_copy(dest, src) #endif /* Hack required to make standard headers work, at least on Ubuntu */ #ifndef __GNUC_VA_LIST #define __GNUC_VA_LIST 1 #endif typedef __builtin_va_list __gnuc_va_list; #endif /* __STDARG_H */ /* * Copyright (c) 2018 Clevernet, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef BPF_LICENSE /* No license defined, using GPL * You can define your own BPF_LICENSE in your C code */ #define BPF_LICENSE GPL #endif #define ___LICENSE(s) #s #define __LICENSE(s) ___LICENSE(s) #define _LICENSE __LICENSE(BPF_LICENSE) char _license[] BCC_SEC("license") = _LICENSE; Bucket < End*Loc == Ptr && "broken find!"Bucket <= Endbasic_string::appendconstruct into local variableconstruct into new-allocatorconstruct into return addressmaterialize temporarydestroy temporaryelide destructorelide constructorconstruct into argumentUnknown ItemKind./src/cc/vendor/optional.hpp!"ref"licenseversionprog tag mismatch %llx %llx /var/tmp/bcccannot create /var/tmp/bcc /var/tmp/bcc/bpf_prog_%llxcannot create %s .bpf.fn.%s%s-DB_WORKAROUND.maps.basic_string::substr.BTF.BTF.extmaps/Program already initialized Invalid filename isValid() && "Invalid twine!"DesiredTypeName = llvm::vector::_M_realloc_insert____btf_map_struct %s not found in BTF Loading .BTF section failed // Line%4lu Disassembly of function %4lu:map::atsscanffmtDebug Error: no disassembler idx < size()invalid mem access 'inv'unknown opcodeinvalid func invalid stack off=-%s/idread(%s): %s perf_event_open(%s/id): %s ioctl(PERF_EVENT_IOC_SET_BPF)ioctl(PERF_EVENT_IOC_ENABLE)/sys/kernel/tracing/sys/kernel/debug/tracing%s/%s_eventssnprintf(%s): %d -:%ss/%s_bcc_%dwrite(%s): %s error in sscanf: %serror in snprintf: %s{ begin <= end"%s"%[^"][ 0xl%hh%h%%lreaderoutentrywriternreadsnprintfsha1 socket not available %s sha1 bind fail %s sha1 accept fail %s sha1 write fail %s sha1 read fail %s /proc/self/fdinfo/%dprog_tag:%llxkprobe__kretprobe__raw_tracepoint__kfunc__kmod_ret__kretfunc__lsm__bpf_iter__bpf: %s BTF is not found cannot create raw socket bind to %s: %s kprobeuprobe/sys/kernel/btf/vmlinuxperf_event_open: %s perf_event_open failedclose perf event FD failedconfig:%s/kprobe_events-:kprobes/%s_0cannot detach kprobe, %s %s/events/%s/%sfailed to mkdir %s: %s failed to statfs %s: %s %s: reader fd is not set mmapPossibly lost %lu samples %s: corrupt sample header %s: corrupt raw sample %s: unknown sample type %d !/3.194.1ktime_get_nsget_prandom_u32get_smp_processor_idskb_store_bytesl3_csum_replacel4_csum_replacetail_call4.2clone_redirectget_current_pid_tgidget_current_uid_gidget_current_commget_cgroup_classid4.3skb_vlan_pushskb_vlan_popskb_get_tunnel_keyskb_set_tunnel_key4.4get_route_realmperf_event_outputskb_load_bytes4.5get_stackid4.6csum_diffskb_get_tunnel_optskb_set_tunnel_optskb_change_proto4.8skb_change_typeskb_under_cgroupget_hash_recalcprobe_write_user4.9skb_change_tailskb_pull_datacsum_updateset_hash_invalidget_numa_node_id4.10skb_change_headxdp_adjust_headprobe_read_str4.11get_socket_cookie4.12get_socket_uidset_hash4.13setsockoptskb_adjust_room4.14sk_redirect_mapsock_map_updatexdp_adjust_meta4.15perf_prog_read_valuegetsockoptoverride_return4.16sock_ops_cb_flags_setmsg_redirect_map4.17msg_apply_bytesmsg_cork_bytesmsg_pull_databindxdp_adjust_tail4.18skb_get_xfrm_stateget_stackskb_load_bytes_relativefib_lookupsock_hash_updatemsg_redirect_hashsk_redirect_hashlwt_push_encaplwt_seg6_store_byteslwt_seg6_adjust_srhlwt_seg6_actionrc_repeatrc_keydownskb_cgroup_idget_current_cgroup_id4.19sk_select_reuseportskb_ancestor_cgroup_idsk_lookup_tcp4.20sk_lookup_udpsk_releasemap_peak_elemmsg_push_datamsg_pop_data5.0rc_pointer_relspin_lock5.1spin_unlocksk_fullsockskb_ecn_set_ceget_listener_sockskc_lookup_tcp5.2tcp_check_syncookiesysctl_get_namesysctl_get_current_valuesysctl_get_new_valuesysctl_set_new_valuestrtolstrtoulsend_signal5.3tcp_gen_syncookieskb_output5.5probe_read_kernel_strtcp_send_acksend_signal_threadjiffies64read_branch_records5.6get_ns_current_pid_tgidxdp_outputget_netns_cookiesk_assignktime_get_boot_ns5.7seq_printfseq_writesk_cgroup_idsk_ancestor_cgroup_idcsum_levelringbuf_output5.8ringbuf_reserveringbuf_submitringbuf_discardringbuf_queryskc_to_tcp6_sock5.9skc_to_tcp_sockskc_to_tcp_timewait_sockskc_to_tcp_request_sockskc_to_udp6_sockget_task_stackload_hdr_opt5.10store_hdr_optreserve_hdr_optd_pathcopy_from_usersnprintf_btfseq_printf_btfskb_cgroup_classidredirect_neighper_cpu_ptrthis_cpu_ptrredirect_peer5.11get_current_task_btfbprm_opts_setktime_get_coarse_nsima_inode_hashsock_from_filecheck_mtu5.12for_each_map_elem5.135.14btf_find_by_name_kindsys_closetimer_init5.15timer_set_callbacktimer_starttimer_cancelget_func_ipget_attach_cookietask_pt_regsget_branch_snapshot5.16trace_vprintkskc_to_unix_sockkallsyms_lookup_namefind_vma5.17loopstrncmpget_func_argget_func_retget_retval5.18set_retvalxdp_get_buff_lenxdp_load_bytesxdp_store_bytescopy_from_user_taskskb_set_tstampima_file_hashkptr_xchg5.19map_lookup_percpu_elemskc_to_mptcp_sockdynptr_from_memringbuf_reserve_dynptrringbuf_submit_dynptrringbuf_discard_dynptrdynptr_readdynptr_writedynptr_datatcp_raw_gen_syncookie_ipv46.0tcp_raw_gen_syncookie_ipv6tcp_raw_check_syncookie_ipv4tcp_raw_check_syncookie_ipv6ktime_get_tai_ns6.1user_ringbuf_draincgrp_storage_get6.2cgrp_storage_deleteisa(CanonicalType)","unsigned long long"bad attribute kind["", [Begin + idx < End["__pad_]], ["__pad_end","char",[, "union", "struct", "struct_packed"unexpected caseT::isKind(*this)N <= capacity()getKind() == Packi <= NumParams!empty()/proc/self/fd/%dOpening failed: /proc/%d/exe/proc/%d/root/proc/%d/ns/mnt___Z.note.gnu.build-idGNU%02hhxglibc-ld.so.cache0123456789abcdef[vdso]/tmp/bcc_%d_vdso_image_XXXXXXUnlink %s failed: %s /proc/%d/statusTgid:NStgid:%s/tmp/perf-%d.map//anon/dev/zero/anon_hugepage[stack/SYSV[heap][vsyscall]/proc/kallsyms/proc/%ld/maps/lib%s./lib%s-%*x-%*x %*s %*x %*s %*d/etc/ld.so.cacheld.so-1.7.0lib%s.so/proc/%ld/exe%llx-%llx %s %llx %s %lld/lib%slibc/memfd:/proc/%d/fd.zip.apk/proc/%d/root%s%s!/%.*s.probes.note.stapsdt.gnu_debuglink%s/.debug/%s/usr/lib/debug%s/%s/usr/lib/debugBCC_DEBUGINFO_ROOT%s/.build-id/%c%c/%s.debugBCC_SYMFS/proc/%*u/root/%n.text/procPATH%.*s/%sbcc_free_memory/proc/self/exe/proc/self/mapslibbcc.so/events//formatstruct tracepoint__ u64 __do_not_use__; field:offset:size: __data_loccommon_basic_string::replaces16unsigned charuint8_tu16s32unsigned shortuint16_tpid_tunsigned intuint32_tunsigneduid_tgid_tu64 char __do_not_use__ int data_loc_ char __pad_}; ARCHpowerpcs390xarm64mipsriscv64loongarchjavanodeperlphppythonrubypowerpc64le-unknown-linux-gnupowerpc64-unknown-linux-gnus390x-ibm-linux-gnuaarch64-unknown-linux-gnuriscv64-unknown-linux-gnuloongarch64-unknown-linux-gnux86_64-unknown-linux-gnuN <= SizeTypeMax()Allocator-include/virtual/include/bcc/bpf.hvector::_M_range_insert-fno-jump-tablesclangBCC_KERNEL_SOURCEBCC_LINUX_VERSION_CODE/lib/modules/build/sourceBCC_KERNEL_MODULES_SUFFIX/include/linux/kconfig.hgetcwdchdir(%s): %s -O0-O2-emit-llvm-I-D__BPF_TRACING__-Wno-deprecated-declarations-Wno-address-of-packed-member-Wno-unknown-warning-option-fcf-protection-fno-color-diagnostics-fno-unwind-tables-x-c-D__MIPSEL__-D_MIPS_SZLONG=64-g-gdwarf-4-isystem/virtual/includelookup_or_initlookup_or_try_initregs[0]regs[1]regs[2]regs[3]regs[4]regs[5]gprs[2]gprs[3]gprs[4]gprs[5]gprs[6]r8r9r10regs[6]regs[7]regs[8]regs[9]a0a1a2a3a4a5orig_x0orig_gpr2gpr[3]gpr[4]gpr[5]gpr[6]gpr[7]gpr[8]ptregs = (-> bpf_probe_read_kernel bpf_probe_read(&, sizeof(), & struct pt_regs * = (void *)syscall__kprobe____x64_sys_ #else #endif ({ typeof() + ())); _val; })unrecognized characterisInt() && "Invalid accessor"packetbpf_dins_pkt(, (u64)+bpf_dext_pkt(__attribute__((section(""))) bpf_table %0 failed to open({typeof(.leaf) *leaf = if (!leaf) {, BPF_NOEXIST); leaf = if (!leaf) return 0;leaf;})atomic_incrementperf_submit.key) _key = .leaf) *_leaf = , &_key); if (_leaf) lock_xadd(_leaf, (*_leaf) += else { typeof(_zleaf += bpf_perf_event_output(, (void *)bpf_pseudo_fd(1, , CUR_CPU_IDENTIFIER, #perf_submit_skb), ((__u64) << 32) | BPF_F_CURRENT_CPU, bcc_get_stackid(bpf_, 0)bpf_ringbuf_discard(bpf_ringbuf_submit(bpf_map_lookup_elembpf_map_update_elem, BPF_ANY), BPF_NOEXIST)bpf_map_delete_elembpf_tail_call_perf_readbpf_perf_event_readperf_counter_valuebpf_perf_event_read_valuecheck_current_taskbpf_current_task_under_cgroupbpf_redirect_mapbpf_sk_storage_getbpf_sk_storage_deletebpf_inode_storage_getbpf_inode_storage_deletebpf_task_storage_getbpf_task_storage_deletebpf_get_local_storagebpf_map_push_elembpf_map_pop_elempeekbpf_map_peek_elem((void *)bpf_pseudo_fd(1, llvm.bpf.extraincr_cksum_l3bpf_l3_csum_replace_(incr_cksum_l4bpf_l4_csum_replace_(, (( & 0x1) << 4) | sizeof(bpf_trace_printk({ char _fmt[] = ); })); }bpf_num_cpusbpf_usdt_readarg_p({ u64 __addr = 0x0; _bpf_readarg_, &__addr, sizeof(__addr));bpf_probe_read_user, (void *)__addr);bpf_usdt_readarg, sizeof(*()))Linkage hasn't been computed! #include unknown typeinvalid zero-sized leafmax_entriesflagsget map info failed: %0maps/array_of_mapsmaps/hash_of_mapsmaps/hashmaps/arraymaps/percpu_hashmaps/percpu_arraymaps/lru_hashmaps/lru_percpu_hashmaps/lpm_triemaps/histogrammaps/progmaps/perf_outputmaps/ringbufmaps/perf_arraymaps/queuemaps/stackmaps/cgroup_arraymaps/stacktracemaps/devmapmaps/cpumapmaps/xskmapmaps/sk_storagemaps/inode_storagemaps/task_storagemaps/sockmapmaps/sockhashmaps/cgroup_storagemaps/percpu_cgroup_storagemaps/externmaps/exportmaps/sharedunsupported map type: %0struct pt_regs *bpf_get_current_taskUnhandled Linkage enumstructclassx86_64x86aarch64armsa110s390parisc64pariscppcriscv-Iarch//include//build/arch//include/generated-Iinclude/build/include/include/uapi-Iinclude/uapi/build/include/generated/uapi-Iinclude/generated/uapi-D__TARGET_ARCH_/tmpTMPDIR%s/kheaders-%srm -rf /sys/kernel/kheaders.tar.xzmodprobe kheaders%s/kheaders-%s-XXXXXXtar -xf %s -C %srmmod kheaders from binary PID for probe kprobe %s already attachedreturn ERRORuprobe %s already attachedUnable to enable USDT %s at address During clean up: USDT %s not foundvector::reserveFailed to detach Tracepoint Failed to close perf buffer Can't close FD for %s: %d__x64_sys_bpfNo open Raw tracepoint %sPerf Event for %s not openPerf buffer for %s not openFailed to load %s: %dUnable to parse Tracepoint %s_0xUnable to detach kprobe %sNo open %skprobe for %sNo open Tracepoint %s For CPU Unable to detach uprobe %sUnable to disable USDT Unable to load USDT Unable to find USDT Table '' is not a stack table' is not a perf buffer' is not a perf event array' is not a prog table' is not a cgroup array' is not a devmap table' is not a xskmap table' is not a sockmap table' is not a sockhash tableuint%d_tuint64_tParse error: %s regs[bad optional accessError getting value: %svector::_M_default_appenderror updating elementError updating value: %sUnable to open %sError removing value: %sError looking up value: %sFailed to close CPU perf buffer: perf event: %s = %lld;xmm%s = 0;%s = ctx->%s;{ u64 __addr = ctx->%s + %d + (ctx->%s * %d); %s !"initialized()"r11r12r13r14r15xmm0xmm1xmm2xmm3xmm4xmm5xmm6xmm7xmm8xmm9xmm10xmm11xmm12xmm13xmm14xmm15^(-?[0-9]+)@^(-?[0-9]+)(?: +|$)^%r([0-9]|1[0-5])(?: +|$)gprs[^(\-?[1248])\@^i(\-?[0-9]+)( +|$)gpr[^(\-?[0-9]+)( +|$)^^(\-?[0-9]+)\(\)( +|$)Invalid collate element.Invalid equivalence class.Invalid character class.invalid back referencealnumalphablankcntrlgraphlowerprintpunctupperxdigitinitialized()raxeaxrbxebxblrcxecxclrdxedxdlrsiesisilrdiedidilrbpebpbplrspespsplr8dr8wr8br9dr9wr9br10dr10wr10br11dr11wr11br12dr12wr12br13dr13wr13br14dr14wr14br15dr15wr15brip./src/cc/usdt/usdt.ccpid_/proc/%d/membool USDT::Probe::disable()largest*((%s *)dest) return 0; } switch (PT_REGS_IP(ctx)) { case 0x%xULL: return 0; } return -1; } NULSOHSTXETXEOTENQACKalertbackspacenewlinevertical-tabform-feedcarriage-returnSOSIDLEDC1DC2DC3DC4NAKSYNETBCANEMSUBESCIS4IS3IS2IS1exclamation-markquotation-marknumber-signdollar-signpercent-signampersandapostropheleft-parenthesisright-parenthesisasteriskplus-signcommahyphenperiodonetwothreefourfivesixseveneightninesemicolonless-than-signequals-signgreater-than-signquestion-markcommercial-atAGJPWYleft-square-bracketbackslashright-square-bracketcircumflexunderscoregrave-accentjqleft-curly-bracketvertical-lineright-curly-brackettildeDEL^$\.*+?()[]{}|.[\*^$.[\()*+?{|^$.[\*^$ .[\()*+?{|^$ stoullreference to undefined tablestoibuffer of size %zd too smallbpf_probe_read_user_str%s: open(%s): %s p:kprobes/%s %s+%lur%d:kprobes/%s %s%c:kprobes/%s %s%c:%ss/%s %s:0x%lxcannot attach %s, %s %s/events/%ss/%sbar/virtual/include/bcc/proto.h/virtual/include/bcc/footer.h^^^^__$_4_^^sscanf unimplemesnprintf unimple000102030405060708091011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495293949596979899/virtual/includede/bcc/helpers.h Debug Error: no section entry fotry for section Disassembly of fDebug Error: disassembler failedDebug Error: cannnot get target not get registernot get assemblyDebug Error: unable to create instruction printeno disassembler Debug Error: dwarf context creatcreation failed rf context failed to get line tarw_engine not ensscanf not availsnprintf not ava ( clang LLVM compibcc-clang-driverbpf_probe_read_k/virtual/lib/claib/clang/include./include/linux//linux/kconfig.h-DKBUILD_MODNAME-Wno-unused-valu-Wno-pointer-sig-fno-stack-proteUnable to initialize BPF programopen_perf_buffer page_cnt must be a power of twoNo valid Binary Path or PID proverror getting vaerror updating eerror removing eUnable to constrruct perf readerPreviously opened perf buffer noffer not cleanedd perf event notbpf_probe_read_s 2-11111181111111811H1`Њparse_swperf_reader_event_readperf_reader_mmap@rZB*jR:" zbJ2pX@(hP8 x`H0H0x`t\D,9! x hP8 x`H=|dL4t\D,T<$ |dL4t\D,lT" x`H0|dL4rZB*rZBkS;# {cK3s[C+kS;# {2zbJ2rZB*jR:"B*J0x`H0.u]E-&>M5nVE-mU=% {cK3q?'gO7X?Olgm\K:)hW$ 7j\wWw{   p _ \ / G 6 %  P$.$...$.1$.$.$.D.$.0$..&2222301}123T.+/D.T.$.00/$./D.D.$.$.$.0t.t.2o0..1D..T.00D.D.$.$.La^D^]]L]\``__a` \[dd daa|d\bjm Zjz  ' }Dңhi]Wbgeq6lknv+ӉZzJgo߹ホCՎ`~ѡ8ROggW?K6H+ L J6`zA`Ugn1yiFafo%6hRw G "/&U;( Z+j\1е,[d&c윣ju m ?6grWJz+{8 Ғ |! ӆBhn[&wowGZpj;f\ eibkaElx TN³9a&g`MGiIwn>JjѮZf @;7SŞϲG0򽽊º0S$6к)WTg#.zfJah]+o*7 Z-?p??????D@D@d@t@@@T@  D P \ +.=L[jy;JYhw,;JYhjy%4 )8Sbun}N]l{0?! />M\kzXgvv c!""""""r!!!!!!""###D#S#b#q##########$$%$4$C$R$a$p$$$$$$$$$$%%$%3%B%Q%`%o%~%%%%%%%%%&&#&2&A&P&_&n&}&&&&&&&&&''"'1'@'(,,++++((((( ()*)9)H)&*5**y++ OO ggD  w '4 ow  x g  { j Y H 7 T4' G Y H 7 /#w#'#""(""'W'&&& &%%%%%g%%%$g$D//3g32m24 T C 2 !  yhWiXG7?c,++8+'+** *))\21<100/!!w.'.-<-x,g,(((o(o))#==G=<>DIIMGMLuLlN:Y:H:7:&:::w9f9U9D98)88877p7_766'65K54EEE0EEDDDpD_DdLKDKJ$JI;7;HGHG4GpF_FCCBBCC=T \aR] ZTYd]8bf[`\`}Xf^b[Ae]BaXXf]a[c\\`WVlSTmQPPRwP>WSUQfVQlTPgWCSUDQVQT8PRR{UP=VQCTOO)OrONOORONNN~qkxkzotPi|]pvjy@mosh}qwTkWzmth{o[uiylrdgK~Sqxkzneth{ p6v]jaylsg}pvkzmsZhM{go uixJlyrgt~|qBxkznt'i|4p_vjymFsg}pw+k.zmshv{o2uixslr;g"~*qw}kznotyix!lPrf/f__c3\a{]ZZ}^T^ab[e\aXe^ c[e)]kaXf]b=[:d\7`Wf_6cȧbio vrIضȨB^$ lŤV;МK?}tѣhn"Ɲ=ěfš#־,FFitٰ2Au7йAڸ }$`+?hH;ZBx5D8>2FU:z@04C6d=1G:A4FDd7>*2E9P?r3B6<04HK;B&5D@8Z>|2E:(@3PCn6=71 G:@4C7=1 3B5n<0]Ht;1BO5Di8>2F,:Q@4yC6;=`1G:A4D;7=2eE9'?I3B5<0 H";A4oD81>S2E9?3'CE6<1F~:@Y4C6=1E69>2B5E1$ ֳɳ{naTGܲϲ²tgZM@3& ر˱M@3& ذ˰}pcVISRE8+٦6׬%̦6X&|&h&(tt@&thTVoLh'I(X(#HHK|h(1& AScq ? "8! !HPh!x!0"" 8 ""((xXH xX8P(`";;;;;y;l;_;R;E;8;+;;''''''::::u:h:[:N:A:4:':: ::"'99999999~9q9d9W9J9=909#99 98888888888z8m8`8S8F898,888777777D=7=*===&=<&>>>B>>=8(+((''''')))~)q)d)W)J) )((&l(_(R(E(j+]+P+C+6+)++++**********s*A*4*'** **))))))0/#// /..........z.m.`.S.F.9.,....-------K->-1-$-- -,,,"',,,,,,{,n,a,('G,:,-, ,,,++++++w+? ?22222t2g2Z2M2@232&22 21111111111}1p1c1V1I1<1/1"1//~/q/d/&H' '0///////00000y0l0_00000101R0>>>>>>6666666j6P6?626%66 65555^5Q5D575*555544444m4`4S4F494,44443333333333v3i3\3O3B3222<<<<<<<<('^=x=k=====;;::::::Q="'J/=/'z'p'b'{7n77a766<==L=><<<[<<-  $(%,p2@.+*5.3T,1-1)*7/3,>6-2~*T7.2,4J-0X)'}$%"!!%#!D(+$&/"o'"x%#!m(T$&X"'"%L!$#&"F'"O% =   f wPBI=L6@Eu:N~AG;Kd>D-9O"BHx<7L?1E9M@yF;'J=C8%PtB1I;D8NAG&D9-M@'F:In=C78NPBZIdD9OAHO<L>E9VM@PF:I=C`8OKBI<`L?ZE9MA(GX;K=D8NAG;K>DV9M_@E:IE=nC870b4!-+7i.2+a/8/=3},6-1R*6/4,6.G2*}7.2+,:5s-1)70941}||||||||}|p|c|V|I|<|/|"|||{{{{{{{{{{y{l{_{R{A{4{'{{ {{zzzzzzzzzzzzpzfz\zRzHz}}sfYL?2% ہ΁yy)>z4zR}pcVI</"~~~~Z~~y~}}}}}}PCՂȂWJ=0# ZM@ك̃~qdJ=0# Յȅzm`S{y9,{yބфtgĉvi\OB5(yڈ͈{yRE8+݇ЇÇuh[NA4' ن̆~qdWwΐy)yy׏ېٍ̍sfYL?2% Îyh[NA4'y މщe}X}ʏz8+ݎЎ*zz\OB5(ڌ͌reXK>1̋~qdWJ=# ՊȊzm`SF9,yC{yj]K}>}}r}6F~6};b;;rhL;ZR,,R;p,z2;,W,,,;;P;(;2ڬĭ"ǣyl_RE8+uh[NA4' ~qzm`SF9,=0# WJduh[NA4' *]uh[NA4f&5|obUH;.!`SF9,vi\OB5(wj]PC6eXK>1$ ^QD7*tgZM@3&?2% 5sfY|' obUH;.!xkQ*MtgZM@3&uh[NA4' C)sfYL%?2L  H.!D;7r$Ny$FPP>,PnX[D%$$$$$$+''''&&&&&&&&&&u&h&[&N&A&4&'&& &&%%%%%%%%***s*f*Y*L*?*2*%** *))))+*******6+)+++P+C+]+))z)m)`)S)F)9),))))(((((((j(*(''''''y'l'_'R'E'8'N3A343'332r2"""""""t"g"Z"M"@"3"&"" "!!!!!!!!!W!J!=!0!#!! ! z m ` S F 9 ,    eXK>1sfL?2% <?2% |obUH;.!- -,,,,,,,,,,{,n,a,T,\61G,:,-, ,,,++######.z.m.`.S.F.9.,...---------v-\-B-1-$-w+j+#w#j#'##"i0\0O0B050(0000////~/q/d/W/J/=/0/#// /.........11w1j11000@232&22 211<0000000v0++++++++22t2g2Z26t$g$$Z$ $###%z%m%`%S%F%9%,%M2Yr%'xww7wvvwv||{w{z}zlz[zJz9z(zzyxygyyxԃwtttrtatPt?tsssssr`rOrqqqq?qpoppo&o8'7~~~w~\̇ :b h:R : ; < l= =B >j D> $@ @T(AAjHCCLCLD6D(EE0@FGdGGzHhH#,I#I#0J$J:$d2>>6?t?@$ A||AA,`BB^C4CBDfE ~E4EPEF$GxHI Jt\K4L MpMN(OxzOO0"PVPzP8P"QVQ@zQQQ8QR>><\?\?|@|@@l>>>L> ?L L?| h? ? ? ?L ?H@\@|@L@@<.LAOAOASAlV,BVTB[BL\B\B\B]Cl^hCqC,DlpD DDLEE[>[?H[,@x[@[A[C\C8\Dh\E\F\G\H$]IP]J],L] @ܲ|@@0lA`,BCLH\ILIt,?@4@HlAtco |x\}\(L\<0 ,H|P|||<,\<0`=A=\B=|C=,K>TL>T`>W>X>\[>\]?^H?`p?a?|c?e@,g8@hh@i@lk@l@n$AoPAp|AEC M D }$  T6  %EC AT ,L=0EC M E |/}$ l 3  3  %EC AT ,=EC M G @|$` 0 3D X ,%EC AT ,<=EC M G |$  (, D P%EC AT ,H`>vEC M D x{$T h L,| h t%EC AT ,>EC M D '{$ $8pEI E E `{% H L$XuEI E E z%`  4$@ 8EC E A  z%#  $@  EC E A h jz% Pdx }EI i A $TEC BD D y0 16AC M E T y3 8 V EC HK. g.* G 2z* 8 EC HD. g. A 4 z4 ,sEC BJK I J 4{H 0 EC DEED H z$ 0 0EC DEED H  z$c 0@ xmGEF P> G t nzE , *EC DE~ A  z$ , =EC M G  |z$ ,< EC DE A l Lz$ , <vEC DE A  z$S , ;EC DE A  y$ ,,>EC M D \y$ ,kEC DEH A y2 0EC P C $vy `PEI | A (PEI | A H\VEI  D |0$EC DLHN} E Fye+ ,L:EC DIED A \:JC f A8l|EE DEED0 L q G x, 8cEC HD F  A 1JC AY 4,9EC BEEEH.@t A dly$ 4mEC DFFH.@` A 4y8 0EC DHn F yd 0\< EC Ps E  y 8 EC PK E ^ E ya 0t OC FMH C Hy2 (!EC E{ H N B 8x!EC DNFH\.k.G J hzPi (0#EC Ew L N B 8#!EC DNFH\.k.G J $@,zP 4 %8HL%8\x%p%8 %HEI As A %8 &NEL Av A 4&8`& \&$P&fEC EG A xDy+ `$'80P'7EF DM D  y% ,8)>mEF DE F 0x$F (*0$*D *FEJ Aq ,P*FEF DE G hx% (P+AC M G (,AC M G ( -AC M G (8L/AC M G $d0EC CT A 19EC BDj  41EEG Ar A `1EEG Ar A 1#A] 1#A] 01#A]  L1,AQ A G 0p2EC BEDw F Y G S 03 ,3,AQ A G 084EC BEDw F Y G S 4 $4'84'(L4dAC M K (x 6EC I G (6EC I G (7EC I G <8oEG FEH D   G l L (<:EP M A <h,oEG FEH D   G l L <@oEG FEH D   G l L (( BEC M G (T DEC I B  E E |E1 E'E]  E'E]  .s"EC AT $!0sqEC DE[ q 0!MgOC M E H!p@ 4$ QEC BGFHi H  F 0SkEC P A p_k ,$ \;EC BEEED H ($]EC M G (%$EC M G 0%D^ D%@^90 l^EG M H o- $%_EC E C %o0 !8aM)EC T H T!o@ D&0d'E] `&Dd t&PdbEH O A ,#eEC BIF E @$|f {AC HDU..D.~. E `$o (d"p.|EF C E "`o$Y |'q'E] ,"q%EM DI{ A "o$ 'q 'qEC P (q)<%r&EC M.`.X E d.`. %n. ((sEC M F 0&uE ?EC HL  H H&>n 0L$̂nEM HE E $n-P @&tp4EC W. Z.C.P.? A 'n  )^q"EC AT )\q*D $*@8*< L*8`*4t*0*,*(*p*p*p*p,4&ԒgEC I A d&p$D ,&P(EL I A &hp$ ++Tp(+ԓ+Г(,'̓EC E^ E X'p} (x'`eEC E^ E 'oH ,IEC A  ,$9EC BDj  ,@<EJ Ci ,\ -X -T4-PH-L(\-HEC M G (-EC M E 0-sJL DD^ D  -&EC A\ (. AC M G <4.`_AG FEH D  G l L t.AG  H 0. AC Cj O U K Z $._AN C G (.bAC \ G  /Bm" ,@/kAC Yb A ,p/TAC M I P 0, EC HK E ((-WEF C8 J (0'EC BEDc J 0`+ES DMIH H +$l%| $0PEI E A ,+ث8EI G E ,k$ (1EP M A ,,1AC M E 8.EC DH G .e. .6km 1X'E] 1l'E] 1'E] 2'E] ,2'E] H2'E] d2'E] 2'E] 2'E] 8 0 EC BQ.{. G H0Hkw 3'E] ,43EC HD E d3 tEX Q A 3| 3x 3t 3p 3lEC L 3l  4h  4dEC L 0@4dEC DHFy E b t4 4 ,4lEG BJJ G (4(EW BM E ,4EJ DGK D $(5EL Jh A (P5REM DMI D |58*EN V 5H5D5@(5<^EC BFT D u 6p@EJ Ek ($6EC BEH^ K $P6\EG ER E s $x6,\EG ER E s ,6dEC BEJIG A 6i (6$EC BEDQ D 7`EI BIF @7h> ,\7,EC BEEEG D 7OQJ Cp 7h1 (7AC h H 7#EC Z ,8EC BEGD F H8L \8H p8D 8@ 8< 88EG  A 8 (8EC FD E (9D&EC K K (<9HhEC BJJEH| 0h9NE AQ K ` A  9yEC EB A 9f ,9<EC HH B (:2EI BJJ E $4:CIF BEa I\:,p:kEN DNK C :e :$NEH { A :T:P,;LEC BJ] G J 8;)L; `; t; 0;EC HHr F  H ;8 ;4(7@EC Cq D D7d$ (d7hEC Cq D 7\d$I (71EC Cq D 74d$ 07<EC DHD D 08d, $ =|EJ C] A H=:$\=[EC AA F J (8@+aEC CS A 8|c= ,9$%EF DH H 49MEJ Ci E L (92ÿEC BDW A 9b (>yEC BIH F (>@yEC BIH F 0$:?3EF BGG A X:Tb@ H?|*\?*(<پEC A Q E 8<EF HHl I f J ,=a+ $P=( ?EC C3 ,X;@ _EC DMy A ;a[F t@ "ZC @ ,; _EC DIG C <jaQ (@ VEC Y} B ,X<EC DM A <;al 0>ayEC DGKC A >Ta  ,AEC I A A$BSC  GA 8Bl |tC  TB ER I H (xB|!QEC Cp E L A B!2jC B!Mk] B"'EC Y A B"!XC E  C("EC E_ A ,@C")EC C G \ A pC#EG y K (CD$EC BHa E  C%C%C %C,%/ DH%WEC P A ,D%WEC P A LD%WEC P A lD&WEC P A DH&WEC P A D&WEC P A D&WEC P A D'WEC P A  EH'WEC P A ,E'WEC P A LE'XEC Q A lE(WEC P A EH(WEC P A E(WEC P A E(WEC P A E)WEC P A  FH)XEC Q A ,F)WEC P A LF)WEC P A lF*XEC Q A FH*WEC P A F*WEC P A F*WEC P A F+WEC P A  GH+WEC P A ,G+WEC P A LG+WEC P A lG,WEC P A GH,WEC P A G,WEC P A G,WEC P A G-WEC P A  HH-WEC P A ,H-WEC P A LH-WEC P A lH.WEC P A HH.WEC P A H.WEC P A H.WEC P A H/WEC P A  IH/WEC P A ,I/WEC P A LI/WEC P A lI0WEC P A IH0#EC P A IX0WEC P A I0WEC P A I0WEC P A  J1WEC P A ,JX1WEC P A LJ1WEC P A lJ1WEC P A J2WEC P A JX2WEC P A J2WEC P A J2WEC P A  K3WEC P A ,KX3WEC P A LK3XEC Q A lK3WEC P A K4WEC P A KX4WEC P A K4WEC P A K4WEC P A  L5WEC P A ,LX5WEC P A LL5WEC P A lL5WEC P A L6WEC P A LX6XEC Q A L6XEC Q A L6XEC Q A  M7XEC Q A ,MX7XEC Q A LM7XEC Q A lM7XEC Q A M8XEC Q A MX8XEC Q A M8XEC Q A M8XEC Q A  N9XEC Q A ,NX9XEC Q A LN9XEC Q A lN9XEC Q A N:XEC Q A NX:WEC P A N:XEC Q A N:WEC P A  O;XEC Q A ,OX;WEC P A LO;XEC Q A lO;XEC Q A OXEC Q A PX>XEC Q A P>XEC Q A P>XEC Q A  Q?XEC Q A ,QX?XEC Q A LQ?XEC Q A lQ?XEC Q A Q@XEC Q A QX@XEC Q A Q@XEC Q A Q@$EC Q A  R@XEC Q A ,R(AXEC Q A LRhAXEC Q A lRAXEC Q A RAXEC Q A R(BXEC Q A RhBXEC Q A RBXEC Q A  SBXEC Q A ,S(CXEC Q A LShCXEC Q A lSCXEC Q A SCXEC Q A S(DXEC Q A ShDWEC P A SDWEC P A  TDXEC Q A ,T(EXEC Q A LThEXEC Q A lTEXEC Q A TEXEC Q A T(FXEC Q A ThFXEC Q A TFXEC Q A  UFXEC Q A ,U(GXEC Q A LUhGWEC P A lUGXEC Q A UGWEC P A U(HXEC Q A UhHXEC Q A UHWEC P A  VHWEC P A ,V(IXEC Q A LVhIXEC Q A lVIXEC Q A VIXEC Q A V(JXEC Q A VhJXEC Q A VJXEC Q A  WJXEC Q A ,W(KWEC P A LWhKXEC Q A lWKXEC Q A WKXEC Q A W(LXEC Q A WhLWEC P A WLWEC P A  XLXEC Q A ,X(MXEC Q A LXhMXEC Q A lXMXEC Q A XMXEC Q A X(NWEC P A XhNXEC Q A XNWEC P A  YNXEC Q A ,Y(OXEC Q A LYhOXEC Q A lYOXEC Q A YOXEC Q A Y(PXEC Q A YhPXEC Q A YPXEC Q A  ZPXEC Q A ,Z(QXEC Q A LZhQXEC Q A lZQXEC Q A ZQXEC Q A Z(RXEC Q A ZhRXEC Q A ZRXEC Q A  [RXEC Q A ,[(SXEC Q A L[hSWEC P A l[SWEC P A [SXEC Q A [(TXEC Q A [hTXEC Q A [TXEC Q A  \TWEC P A ,\(UXEC Q A L\hUXEC Q A l\UXEC Q A \UXEC Q A \(VXEC Q A \hVXEC Q A \VWEC P A  ]VXEC Q A ,](WXEC Q A L]hWXEC Q A l]WWEC P A ]WXEC Q A ](XWEC P A ]hXXEC Q A ]XXEC Q A  ^XXEC Q A ,^(YXEC Q A L^hYXEC Q A l^YXEC Q A ^YXEC Q A ^(ZXEC Q A ^hZXEC Q A ^ZXEC Q A  _ZXEC Q A ,_([XEC Q A L_h[XEC Q A l_[WEC P A _[XEC Q A _(\XEC Q A _h\XEC Q A _\XEC Q A  `\XEC Q A ,`(]XEC Q A L`h]XEC Q A l`]XEC Q A `]XEC Q A `(^WEC P A `h^XEC Q A `^XEC Q A  a^XEC Q A ,a(_XEC Q A Lah_XEC Q A la_XEC Q A a_XEC Q A a(`XEC Q A ah`XEC Q A a`XEC Q A  b`XEC Q A ,b(aXEC Q A LbhaXEC Q A lbaXEC Q A baXEC Q A b(bXEC Q A bhbWEC P A bbXEC Q A  cbWEC P A ,c(cWEC P A LchcXEC Q A lccXEC Q A ccXEC Q A c(dXEC Q A chdWEC P A cdXEC Q A  ddXEC Q A ,d(eXEC Q A LdheXEC Q A ldeXEC Q A deXEC Q A d(fXEC Q A dhfXEC Q A dfXEC Q A  efWEC P A ,e(gWEC P A LehgWEC P A legWEC P A egWEC P A e(hXEC Q A ehhXEC Q A ehWEC P A  fhWEC P A ,f(iWEC P A LfhiXEC Q A lfiXEC Q A fiXEC Q A f(jXEC Q A fhjXEC Q A fjXEC Q A  gjXEC Q A ,g(kWEC P A LghkWEC P A lgkXEC Q A gkWEC P A g(lXEC Q A ghlXEC Q A glXEC Q A  hlXEC Q A ,h(mXEC Q A LhhmXEC Q A lhmXEC Q A hmXEC Q A h(nWEC P A hhnWEC P A hnXEC Q A  inXEC Q A ,i(oWEC P A LihoWEC P A lioXEC Q A ioXEC Q A i(pXEC Q A ihpXEC Q A ipWEC P A  jpXEC Q A ,j(qXEC Q A LjhqWEC P A ljqXEC Q A jqXEC Q A j(rXEC Q A jhrXEC Q A jrXEC Q A  krXEC Q A ,k(sXEC Q A LkhsXEC Q A lksWEC P A ksXEC Q A k(tXEC Q A khtXEC Q A kt$EC Q A  ltXEC Q A ,ltXEC Q A Ll8uXEC Q A llxuXEC Q A luXEC Q A luXEC Q A l8vWEC P A lxvXEC Q A  mvXEC Q A ,mvWEC P A Lm8wXEC Q A lmxwWEC P A mwWEC P A mwXEC Q A m8xXEC Q A mxxXEC Q A  nxXEC Q A ,nxXEC Q A Ln8yWEC P A lnxyWEC P A nyXEC Q A nyWEC P A n8zXEC Q A nxzXEC Q A  ozWEC P A ,ozXEC Q A Lo8{XEC Q A lox{XEC Q A o{XEC Q A o{XEC Q A o8|XEC Q A ox|WEC P A  p|XEC Q A ,p|XEC Q A Lp8}XEC Q A lpx}XEC Q A p}XEC Q A p}WEC P A p8~XEC Q A px~XEC Q A  q~XEC Q A ,q~XEC Q A Lq8WEC P A lqxWEC P A qWEC P A qWEC P A q8XEC Q A qxXEC Q A  rWEC P A ,rXEC Q A Lr8XEC Q A lrxWEC P A rXEC Q A rXEC Q A r8WEC P A rxXEC Q A  sXEC Q A ,sXEC Q A Ls8XEC Q A lsxXEC Q A sWEC P A sXEC Q A s8XEC Q A sxXEC Q A  tXEC Q A ,tXEC Q A Lt8XEC Q A ltxXEC Q A tWEC P A tXEC Q A t8XEC Q A txXEC Q A  uXEC Q A ,uXEC Q A Lu8XEC Q A luxXEC Q A u uu0uTF A[ J  IF v4v@+EC X A (4vPEC BM H `v)EI A H vAOK Z A (v0EC BOr A v0v-JC Gp BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E f BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E f BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E f BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E t BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E t BBBA E h A I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E { BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E a BEBA E a BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E f BBBA E t BBBA E t BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E t BBBA E I BEBA E I BEBA E I BEBA E I BEBA E t BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E  BBBA E I BEBA E } BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E  BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E t BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E f BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E u BEBA E I BEBA E I BEBA E I BEBA E I BEBA E f BBBA E I BEBA E I BEBA E I BEBA E f BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E T BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E } BBBA E  BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E @ BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E e BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E } BBBA E I BEBA E I BEBA E } BBBA E I BEBA E I BEBA E I BEBA E  BEBA E I BEBA E I BEBA E a BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E f BBBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E I BEBA E _ BEBA E I BEBA I M KF x BBBA E (LAC DGH ,DAC BIH] D ,tpAC BIH] D У0EC Af ďF$؏̣EC CN G $4EC C A $(EC CZ K Pd yW] #<eEM DKK H  F X H 4EC DH G C E N A t4pNC FDH BBBA F Q A l A i BBBA E E BBBA E E BBBA E z BBBA E < BBBA E E BBBA E E BBBA E z BBBA E E BBBA E E BBBA E E BBBA E E BBBA E  BBBA E  BBBA E   BBBA E  BBBA E E BBBA E E BBBA E E BBBA E E BBBA E E BBBA E  BBBA E E BBBA E E BBBA E J BBBA E E BBBA E  BBBA E t BBBA E y BBBA E E BBBA E E BBBA E  BBBA E ? BBBA E  0kEC HG\ M 4Fvk 0XPRkEC HDB A dl \X pT0EC A_ d (`bEC KL A ДEC A H 0AC BGDQ F  ,(lvFC BGF H I G0!jAC DEJ A %j ,AC DGHW B ,TAC DGHE D ,!AC DGHW B ,@AC BIHr G 0p:AC FD` J j F (AC DED\ C ,ЖJAC BIH] D ,AC BIH{ F (0FAC FDZ H (\AC FDZ H (AC FDZ H 0`5AC FDo K z F (l"AC FDb H ,pAC BIH^ K ,D4AC DGHM D ,t AC DGHM D ,<AC BIHG B (ԘAC FDZ H (AC FDj H ,,EC BNB F ,\HAC DGDI D ,gAC FF D ,8^AC BIHC F t , HEC DLEHd A $<cUJ i H C A DdNC BDs F _ EA K AGA M (hnEC Ct A m (ؚEC P A $pzEC EK H Y (,EC AJ E w I XlVBAC P] E d E d E d E d E b E d E d E d E z E d E d E d E d E d E d E d E d E d E d E  E d E d E d E  A d E d E d E  E d E B E d E d E d E  E  E  E g E d E - E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E h E t E d E d E   E d E d E  E d E d E d E d E d E d E d E d E d E d E  E d E d E  E d E  E d E d E d E d E z E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E c E e E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E  E d E d E d E d E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E  E d E d E d E d E d E  E i E ,O^EC K D Ȝ$^ 0lQ8EC M F A E DxfNC BGDB H [ GBBA I M K44fEC BF[ E | D q E ,lg^EC BDm E T E $ggYC BED ,Ģ@hEC FD\ B J <h^EC DHh L ^ J _ I ] E D4i<EC BEH N j F z F o I ] E (|kEC HD E (|pEC FDe I ,ԣqcEC FEH] H @r7U]  dr\EF K A Dr\EF K A hr\EF K A s\EF K A Ts\EF K A Ԥs\EF K A s\EF K A t\EF K A @Dt\EF K A dt\EF K A t\EF K A t\EF K A Х4u\EF K A pu\EF K A u\EF K A <u\EF K A (`$vEC C{ J ^ E v\EF K A v\EF K A Ԧw\EF K A Lw\EF K A w\EF K A @w\EF K A dx\EF K A EC hZ F ,BEC \q A (\DEC BEHj G (DEC W A (@EAC DF} E ,lFEG DSb A 4JmAC DGED  N m C ,0LAC hO E $ NAC V J ,,NAC \: F ,\XP]AC BHEDV C l (P/AG M B QQ.Q,Q4EG DIP D ,$RmEC BEEF; K ,TTREG P0 A $@UEG Cg J 0Uf%EC P2 F % Z9EC Ao ($ZAC Wx E ,P[UEH Ad F E K H [EC F ,[AG P A (D^EC YF I $`EG Cd E ($p`,EG M I ,ta {$EC Y D $Y$ $0cEC CH E 0c$EC DEF7 B 4X$$ 0x0j"$EC ID A 9+% |!(EP M B 0x$EC DIIG D DY$ ,H$EN DI_ A x$$ ,0$EN DI_ A $}$ -[F F ,EC BEH C 0X R$EC E L a (8LEC G A 4d%EC BLLx F ] C U K (EC I ,ܙU#EC G D ,j$4# x`,dĚ#EC M A &$" 0PS "EC BEFM I " 0X-"EG P B Da" $40rEC Cf \p t$p8l#A] T#A] ,pAC F E G d#A] x#A] ,AC I F 0\|7 EC HH F 4 AC Ih K N B tcEN CH  LEN BD $r3AC Bd E C 0EC FM D LJ( 0pZEC FN E ( $VEE C| A VEN C{  EN BD (EP M A (DPEC M G (pEC M G 'E]  'E]  'E] 43kC 0 X$EC Cv O  I F J 0TEG HD B Zv EL F +,H}EG FH! A D4WW @h;EC \V..T K  .0S. $ 8T!EC P .P J o. ,ft  :HJ Y E ,EC Ie J ,LEC FED] D $|8EC BGO H ,AC Eo H J $EF O F R F $^EC IC $"QJ F $DEC G} D (x EC BD A / 00EC P D B 0D-''EC PJ F xPD 0 U4)EH DIIG J 3 (YEC I B 0 h^EC HD A T^Y 0x dEC BJD} K `w @hk .EC DGKe A . D.\. [. p(J $bEC I| C ,,XjEC C D S A 0EC DFEKw A { B`] 0$4EC M= F $^EC IC 0ȧ`REC BEI* F +8 ,ЪEC PJ F lV , b:EC PG A <r 0`WEC BJ~ F bl 0@8PmEC P F v '# 4(CEC DJ G m A ,@ AC BEED A 4x "EC BEEEDr A h1" (EC BHA E ,FEC BFEJ A ,08 "EC K D `$! ,!EC K D $! , !EC K D $r! ,<"EC BEED A ,(#EC BEED A 0# EC I J @  0) EC IZ E   0<<.$ EC I I po! 0R!EC BEEEGw A (Z! 0LS!EC DL{ E *Xr! UNC FDH BBBA F Q A  A A BBBA E E BBBA E E BBBA E z BBBA E E BBBA E ( BBBA E E BBBA E E BBBA E  BBBA E E BBBA E E BBBA E E BBBA E E BBBA E  BBBA E   BBBA E  BBBA E E BBBA E E BBBA E E BBBA E E BBBA E E BBBA E w BBBA E E BBBA E E BBBA E z BBBA E E BBBA E E BBBA E E BBBA E  BBBA E d BBBA E  BBBA E E BBBA E ! BBBA E c BBBA E z 0`naEC HKy D J (UEC E{ E G (LtEC M tDv1NC FDH BBBA F Q A l A A BBBA E E BBBA E E BBBA E z BBBA E E BBBA E  BBBA E E BBBA E E BBBA E z BBBA E E BBBA E E BBBA E E BBBA E E BBBA E  BBBA E  BBBA E 4 BBBA E  BBBA E E BBBA E E BBBA E E BBBA E E BBBA E E BBBA E W BBBA E E BBBA E E BBBA E J BBBA E E BBBA E E BBBA E  BBBA E d BBBA E  BBBA E  BBBA E  BBBA E 2 Ȏ)NC FDH BBBA F Q A l A  BBBA E E BBBA E E BBBA E z BBBA E E BBBA E   BBBA E E BBBA E E BBBA E  BBBA E E BBBA E E BBBA E E BBBA E E BBBA E  BBBA E  BBBA E 4 BBBA E  BBBA E E BBBA E E BBBA E E BBBA E E BBBA E E BBBA E  BBBA E E BBBA E E BBBA E R BBBA E E BBBA E E BBBA E E BBBA E  BBBA E d BBBA E  BBBA E  BBBA E  BBBA E    DpAEC P] E d E d E d E d E f E d E d E d E z E d E d E d E d E d E d E d E d E d E d E  E d E d E d E  A d E d E d E  E d E B E d E d E d E  E f E  E g E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E h E ~ E d E d E  E d E d E  E d E d E d E d E d E d E d E d E d E d E  E d E d E d E  E d E  E d E d E d E d E z E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E e E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E  E d E d E d E d E d E  E i E T ,hEC DGHI D ,<EC BIH] H ,EC BIH] H 0"EC FD_ O J F (,EC FDS K ,X EC BIKl F ,EC BIKl F ,lEC BIH^ G , EC DGHQ D ,LEC BIHG F (HEC FDZ D (tEC FDj D ,EC DGDM D ,D^EC BIHC B   TBEC P] E d E d E d E d E ] A d E d E d E d E z E d E d E d E d E d E d E d E d E d E z E d E d E d E  E d E d E  E d E B E d E d E d E  E d E  E g E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E h E p E d E d E   E d E : E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E  E d E d E ^ E d E d E e E d E d E z E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E d E d E  E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E d E  E d E d E  E d E d E _ E ^ E ,$ `*EC DGHQ D ,T  +!EC DGHQ D 0  ,EC BGDU F  , ,EC BIHy D , -0EC BIHc B ,.EC BIHo F ,H|/EC BIHo F ,x,0EC BN@ H ,04EC DGHQ D ,2EC BIHn G 03EEC FDl J J F (<4"EC DEDU F (h5PEC FDZ D ,6EC FEH] H 0 74EG DEJ A ,  % ,9gEC FF D (L:EC DGH ,x;EC DGHS B ,L<EC DGHI D ,EC BIH] H ,l8?EC BIH] H 0?:EC FD` N b F (@EC DED\ G ,AREC BIH] H ,,BEC DGHQ D ,\CEC BIH{ J ,xD2EC BIHc B ,EEC BIHq D ,8FEC BIHq D 0F"EC FD_ O J F (PGEC FDS K ,|HEC BIKl F ,IEC BIH^ G ,(JEC DGHQ D , JLEC BIHG F (<KEC FDZ D ,hLEC BNB F ,MEC DGDM D ,ҜEC BEHHG] E h]$ 0 ?EC BEHGX J ]$j 4?xNEC BEEHH J n]$) ,@@ EC FDS K p>]V $`DCTEC A] J ^ 0܃|C EC BEH E ] 0M/țEC BEFED J HB]$ 0lNoEC DKD B ];s ,ĂRWEC DID A \$6 0SEC DGD F L\$ 0UYޚEC FM A ą\" 0ȃdEI HH G \$  gFEC Aw A 0D4g/EC BEFED J x|\$ 8 ixjEC DIFDc. A J. ؄@\FX 8,n!<EC I.. D 8&\ 0\EC DH D \$w 0[EC DFFH H \$6 0 \ EJ I H @n\ 8d EM I E ,.E. \ 0ĆڙEC FP A \ 0-ʙEC BID C P]ՙ 0ԦEC DEIDg K ȉl]r 0\EC DEIDg K ]r 0DoEC DEIDg K x]rf 0lJEC DEIDg K Њ]rA 0%EC DIEH G (]u 0LfEC DIID F ] 0ԼEC DEIDg K ؋"^rژ 0\EC DEIDg K 0<^r 0TEC HD I $V^# \Xp>_B_0<AF Mq K  E 8̏.EG BGDa F H H Y (EC M G (4EC M G (`DEC M G  >^TEC BDE ,p_EC I} A (>^3 (EC DHn F ,xqEC G\ A ^Ֆ ,̌ȖEC Mk A 2_ , wEC M\ A P_j ,tPdEC Kw A `8 ,ȍP,EC Kw A a , PEC Kw A Laȕ ,pPEC Kw A b ,ĎPEC Kw A bX ,PLEC Kw A Hc (8EP M A $ckEC BEJHB$EC A^ I \ (ȔcQEC Ew E G 0EC M K N A (EC AL K ,L(cQG Em FH J $|hEL Ej $CEC DDr $̕XEC DDG 0(0dEC DEED A \b,O 03EC BGED G nb{ 0ؑ`FEC DJIK G b4ƒ 00XEC FJ D dnb$ 0tEC DEED A :b,Y 0=EC BGED G b{ 08PFEC DJIK G l2b4Б 0HEC FJ D ēb$ 0~EC FED5 D a1a (@(EEI EM H la$# , EC YT K a$ (ʐEL E F  da$ (,EL E F X^$ (`$EI E A ^$} ,4% eEC DJy A d]MY 0&=EC DO F ]? (:~#EC BEIe 0ؠl:RC BFDE J s E,@:NjEC Gj G p]H ,`T<EI FFD H ($@kEC BHP A $h@FLC BEi A,@|EC G D HL]H 0lAEC DEEK H <]$Ċ 0ĝCEC FEK F ]< 0FsEC DH  B P\@Z 0DIa >EC Ps E Ƞ\p 4̞\T,TEC I E D.i. ]V8  0YCEC At A (l\YeEC E H 0ZԉEG DIGS E ̡\ 0Пb׉EC HK D \>ĉ (HgEEC E E 0thEC FEDV C \$^ 0kBEC BIDx A $~\$. ԥpp(pAC BD G f ,(\qAC BDk K H H XLs1EJ A\  x[|AC BDm  HsAF An J  \ $,s AC A H T[W 4tQEC M N  D T[1 ,tx?AC BGJ C 0yDEC M E  K ا[[,|@EC DEJy D (0}EC BGDg D \~4ĥHEC BGEHt F  0ܣXEC FJ J Z%3 ,4EC DO K dZ$ ,@ՅEC DO B dZ$ 0uEC BED E  H (ܩEC BEDN O (YEC E| E G HZZ(\bZ]EC EC E G (ZEC E| E G Z(Ȫ[]EC EC E G $8[rEC Ed $p7EC A D Z[f L`JEC IH G  H   L  I [ E T[3 ,$[ AC In E T8[\x 4$OF DD J a G b 4\oOF DD A a G b 0ȧ MAC DIEO D Z ,EH m N S E o A 0PMAC DIEO D Z ,tEH m N S E o A 0ب@EC P F Zq~ <NC E] E G AH 0px%"EC HK F [y 0ȩPa]EC HK F D] 0@h/AC IQ B t^x ,oEC IK D $ȬfׄA  " %į0 %دL %h t 8 8( 8< P d x 8H 8t 8 Ȱ 8ܰ  9 99(,HEC DJ C (XEC DJ C $p[EC ID A $[EC ID A Ա"e(&eAC E E G , AC DH I J ,DhewAC DE] E G $tPbEC Ij E $bEC Ij E ,EC Ip G (/e ,L|hEC Ip G |dQ ,lEC BX K ,EC Gf K L ̳xd ,(EC En E Z F :d,dqEC Ib E d9 ,pdEC Ib E c9l , PEC Ib E <c9_ (,cEC E E G ,XlEC DH I J ,\ EC Ib E d9 $0"'EC A E Xcf , #EC HD J PD&5(p&aEC A- J cf? ,(sEC BJH L J 00X(~EC I D dcA~ 0*~EC I D cA~ $,EEC BKe F 0->~EC BGF H bc%r~ <@.V~EF P D U K  G $cg~ $p=AC E\ K D̳|=/ #~EF BEIEK D j N  J  c~ $@JAC E\ K <`J}EF P D U K  G c} $XAC EX G DLY: }EF BEIEK D e K  J 4c} $$ fAC EX G (LfEC HHy G (xgEC HHy G ,gxEC HH K 0(j|EG DGO G \b| (,rEC I G , tP|EI FH  A ܸblr| 0wEC Mv E  H b 0TDx |EG HH; I b+| 0́i%|AC HR_ C dS| 0 {EG FF A 8d"| 0\\2 |EI BIO A el| 0Dl{EC FJ. J ȸe${ 0 \{EL BIO A @nel{ 0Dkz{EC BQ J xe[s{ 0 2W{EL BIO A $el:{ ľؾ,EC BJ G J 0phzEC BNz N J 8\zAH BJO D  D egz 0wzEC PV B evz 0<|ZzEC PV B preYz `M0P)zEC DEFa H ܻeDz (|EC I G 0,lyEC BID I `~e%y 0yEG DGH H ؾLeHy lh'E] |7EJ Af 0,w#yEC DP H `d-y 0$&xEC \6 F ؿd | (luEC MX C (EC M} F (4EC M A (,EC M X 0|EC DP C Ծto4{ 0{EC DP5 G ,Po4{ X 0T{EC DIFq D 4dEC BEHD_ F Q G i ,пh6{EC M G n{ ,RC BD{ J F J, EC CT A I E P] 4nzEC FK K t D mn$az 8EzEC FN8 L C E 81n0#z 0|! zEC DGNy F  nQ;z ,0ezEC FK H n$z 0 yEC BFEF F Tn$y ,D&EF HH F $t8EC A\ K G 0GyEC DJENj A 0n$ y 0(@RyEC FK% B \m0x 0HxEC FQ H m@x ,HEC Ae B H H G 0zxEC DS H <m;fx 0`(JxEC FQ G om@Bx ,YEC M C 0\mAC I E N 0<|%wEC FEE D $pnwA 8PwEC HHi G  A JoJw 8wEC HHg..| A 4o@dw 0L4wEG HH E oQw 4vEC Mm E } A 0vEC DFO H n1v  1JC AY 0x0f `vEC FFm A ~nv 0HwjvEG FED J ndv 0(p HvEG FED G \oIv 0`S-vEC DO D Eo^v ,vEC DD K PoZu (`EC M B 4T uEG BNEEH G &ou $\EG C D 0"uEC P H p^u 0$~uEC Pj F Dp^u (*guEC Ck A pTSu ,*OuEC DH[ A p!)u 0d+uES DMIH D 8p%t 0\,tEX DMIH D np%t 0.tER DMIH G EC BGD A (T?EC BGD A ,PH@yqEC BJi C m!Sq 0@;qEC DEKb B m"q 0@ByqEC DIJ J ,jmp (hEEC M G (HFEC M C 4G|pEC FEH-.F B EC I B 4 EC FEH' F ] A ,!EC FFN F ,(#EEG FEKi E ,X%UEC FFS I ,&UEC FFO E ((9EC FD E ,0)EC FF F ,*UEC FFO E ,D+EC FFN F (tp-?EC BGH G (.EC DG E ,h/EEC FFF F ,0EEC FFF F 0`1#^EC IN A <](j^ ,5EF BEO J $D'EC E D EVC ( ErEC DEE D $`H8pC @H$EC Q A `HgE] 4HW]NC HH A(PA#]EC BD D 0W]EC BEGD A H[\ ,8LXEC DKD D (h[EC BDK G o  0\QEC BDB 4l\FEC FFb J  E (`EC BDJ H o ,`EC BEEEH A ,aJ[EC M A XZI[ (bEC M (xdEC M (LguEC M_ $$laJC CF J$LlaJC CF J$t0mqJC BD\ A$maJC CF J$mNC BD F,xnNC BH A(oEC BDJ H o 0|loYEG BIEEDn A XY (oEC BEHd E (pEF BEDX B 0L,#YAK BO1 A X4Y 8XEC BLILH A } E WX )yH# {X {N {N ~d {N {S {S ~d ~dssgg-:}>>J;Qg}Co1) #]-6tCp)# 1 88.8        @O {S @O @O @O ~d ,(md6666 6 6666'6(6(6)7+7+706 B~@=         6$)|        JI.f?6)iaJ    !9   %    .YPv    FpHaf'$Haf'$/Z!nd\V Gq  ,;0   &2#6]N7  Rle <c!S5+5*{    P    *-c#`1 e  E i |   EOS< P   L1o Y*Sa A   +  p'/  .7 .7 .7_S " Klw"& 7Mu6  &(3Ab()8x-(3Ab}/)_e'         ,p-U0BH 2}\"" " " ! !"""!!!" " ! !!!!!6_ =3          } Sk}91       JE5 )z&    /:Lb ?0I  ' =W 1Ma@_'(' '''!m'''''''+=4S         |L 1$G0$G0&[$      ]4 X?>n          Nj^AABBABCZC B B C CCBBBCB^ACAAAACiB!C)B,A0B0A4B:B:C:9A;B;C;C; A<B<A=B=C=A=A>A>A>$C?C?C?B?B@B@B@A@$AgQI  3         : =H =H  Vla5*Q` !%f$      @ (-SR898988788 7876776!8"7"97"7#7#7$V7&6&8&A8'6(6(6(8)8/626263658dAwB 2A BBAAAABLABB!B#A$B'B'hA)h@+A+`@-@/1B0A1A2B3A5#A6A81B;A=@>B>B>@>@? @?A?B@A@ A@A  *%%I&&%%&% % % %R&%&%"$&"&#%#%#%$%$&$&$%%%LMLKLLM N M L M NLMXMTNMLLNNMN^NN N!N#N$N%N'M8N9NDLELEMEME$NFMFLGMGMG$LHNHNHLIMINI$NJNJNKNKNKMKNcS     )%     O&   mW\1"  q .q!f N .di              ! 1b5 F YސҐh4 H    ڔΔ”ڙ! ۜۜƐ ۜ @!"ۜ"9#9#$$$%%%%؛&̛&''(((()))**Ι*™+#,ۜ-/ۜ/@0011112ǝ22334ߝ4ӝ44W5Ԛ5Ț6|77888ܒ99В9::;;;ʓ;<<2====>>>>>4A>BBCۜC@DeEEEEFFGGIEIIJԞJȞKKLGۜM<M<N9OOOPP؟P̟PQQQRRUGۜV<W<WWXXXYڏYΏYZZZZ\\wۜ_aޕaҕbƕbbccdddddeerfʖgggghhhijGۜkkk֑lʑlmۜmbnϘnØoϘoooGϘpOqqqqۘssۜs9tێtώuێuÎu֓vۜvWwwxGۜyhzzz{{{{|}}ۜ~e~՗ɗG՗Oׁ֖ۜՃ9Ӆۜنۜ(o,   (U@u _    691 |  9    + X-FIIIHIIIHHHH H GFQFFFFH F!G"F%F%CG*F,F4H8BF:G;?F<G<G<G<G=G=G=F>,F>?F?F@F@I@H@HA,HAFAGBHBGDOFDGDFBQleQ(7   hhh hh3=[9Rq-e1(V7 p;0  ,_d DCDDCDCDDDB A A D B D B A DCADACCBDBDDDCDCDDDVDBDBDBDBDB@DAADBD A A!D!A"C"D"@#D#A#D#@#D$C$D= D=C=D=C>D>B>B>A?A?C?A?B@A@A@C.5 &`fR   $p&W+]  --,a  LN%%%'&&' % & \& &%Y&&&%''''%%!&"&"&"&"&#&#'#%$%$&$ &%&; 7 ZM':I ,     .       NHIJKHIINKI H KH H I NKKKKIJINHJJKJJINIJLKIKI NK!K"J"KJ#H%OJ&I'vI(PI)K*H+H,H-I;H;I;K<K<$K<H=$H=H=I>K>J>I>$H?I?$J@J@$JAJAJA$HBJBIBKBIBHCJCKC$ID$IDJDHEHEIEHE$JFKFHFKG KG IHL2If.$cO%'$ -FgTsEg=bbSS0  $2 6%j Cc ;cSv&e-)_v26I& 1bt    ei6&     % 2"!!#$### " V" " "P"#6"# ""#"### $ " "!#!"!"!"~ ZM 70  ZA8B0  Z:8F;       U ;  4   9'>x"'>x"'>x"'>x"(R".R~'>x"'>x"~F\ ?)8R-G|I,;U,;U#2LI#2LI#2LI#2LI#2LI#2LI'TOT%j"%KF+r*T,\T%f"%KF+r*T,\   'H2'{2'{H  ' D  & 2l 2l8\P" 2l 2l 2l 2l&/'x/'x/'x/'x/'x/'x h A$2'&'&&''%'mY$y@$D{2E}6b`  _ 6}   C>O` Z}    &Qn1 o  %Mz kDDt%\$  V?:$G0$G0n   bx%&%%$&$%)$$$ % % %%%$$$&$$zx'''(''(('( ( ' ( &&(4&('&%'%'V6]6^ ^ 6]6] 6\6]!^^#^#]$]$6]%6_&^(_*2_,,^,]2^42\65^7_89X]:\; =_>I^?X^@I]AX_A@]B@^C ]D ^E6]F6^F6]G6]H]I^JJ ^J ]K^L]L_L]M^M^MP_P^PD^Q]R>^S]T^U^V^V^W^W!]X^Y!^Y]Y^Y^Z_ZZ^Z]Z^[][^[\\^\]\^8a\ C N         % *>2Cd d ;*4x);*4x) W%\!-<!-< eM ?;  M ;  0r <A6"YcUy6 =  c I >,U}U#9*$V2 =  ^IB,Uz,UBU2"Yc`2"Yc)_*2"Yc!m )$SNb/h       ;x/h       ;x#I# M C"#U0B>KKKKKKKKAAAAAAA==LLLLKKK?@? @ ? @ > A ? @ > @ ? ? > A ? @ > @ ? @>@?@>@??>B=FFFFEEEEBBBBBBDDDCCCCCCCCCCCBBGGGFFFFFFFIIIIHHHHHHHHHHHGG G G G G!G!A!J!J"I"I"I#I#I#I#I$D$D$D%D%D%D%M&M&M&L&L'L'L'L'L(L(E(E(E)E)E)E)E*J*J*J+J+J+J+J,J,;=8B9D9>:><==>===> *j* tdtDgFO z}M&e\    F &C FWM&(6M1(61)L8r( 6E yG0g'U`   .*nW1      W i+)9E=   T) &+3l {   H   &3h y   @   &<w}  ;@O}   7 &["> V";14) #H& #H& #H& #H& #H& #H& #H& #H& #H& "QBo}jo~}###c%<X} 8^m} #]c$%=LQVe3O!FA"Gq  m<%;q  /9SG`ws wd DL0?d0DL OOwe@DMPQw@p0P !6!J#  ! % ! 4 ! I ! ] ! n          c! +              ,  ? P T P d P u P &P  P !                  1 6 1 E N S N ^ N !n s n  n   !               (  6  ; K P K c K m K  K  K  K  K  K  K  K  K  K  K ! K / K k"E J E ^ E u      " "               9   $373K3[3t3333!3!3#63262N2Y2p2j2t.2.B.[.s.."%"#0>">S">C>X>f>z>>g)+=J^c^q^^+:HRWRnRRRRRRRR3Pm~~0@0P``pVu+Ut+,7/ ,, s. y..... ..@.p0 ..w_``_2PPpwpwwwpwpwG   pwpwwwpwpw` wpwww`wpwPQQp@P`p0`=C0````>? 7@7P8Pp00`'``````````pp``e ````````pp0}/]qN^+5 @ `(R 8R ox  o H0ȩ] oxoooU;I0`@к0P@P?P00лppпp@нMp8i 0@@@P@`@p@@@@@@@@@AA A0A@APA`ApAAAAAAAAABB B0B@BPB`BpBBBBBBBBBCC C0C@CPC`CpCCCCCCCCCDD D0D@DPD`DpDDDDDDDDDEE E0E@EPE`EpEEEEEEEEEFF F0F@FPF`FpFFFFFFFFFGG G0G@GPG`GpGGGGGGGGGHH H0H@HPH`HpHHHHHHHHHII I0I@IPI`IpIIIIIIIIIJJ J0J@JPJ`JpJJJJJJJJJKK K0K@KPK`KpKKKKKKKKKLL L0L@LPL`LpLLLLLLLLLMM M0M@MPM`MpMMMMMMMMMNN N0N@NPN`NpNNNNNNNNNOO O0O@OPO`OpOOOOOOOOOPP P0P@PPP`PpPPPPPPPPPQQ Q0Q@QPQ`QpQQQQQQQQQRR R0R@RPR`RpRRRRRRRRRSS S0S@SPS`SpSSSSSSSSSTT T0T@TPT`TpTTTTTTTTTUU U0U@UPU`UpUUUUUUUUUVV V0V@VPV`VpVVVVVVVVVWW W0W@WPW`WpWWWWWWWWWXX X0X@XPX`XpXXXXXXXXXYY Y0Y@YPY`YpYYYYYYYYYZZ Z0Z@ZPZ`ZpZZZZZZZZZ[[ [0[@[P[`[p[[[[[[[[[\\ \0\@\P\`\p\\\\\\\\\]] ]0]@]P]`]p]]]]]]]]]^^ ^0^@^P^`^p^^^^^^^^^__ _0_@_P_`_p_________`` `0`@`P` U#(,3'/7?GOW_g....or...uor7?y7?y'/7?OW_gJ0N0R0V0Z0^0b0f0l00v0~000000000000000000000p000 11"1/191D1U1g1p1z111221111111111111112200q22020002`0'a\0(222.282M2X2c2}.%s#r23,,n3'7/&+(t22222/usr/lib/debug/.dwz/x86_64-linux-gnu/libbpfcc.debugO h`{y+2odcc31dedc922df5bfec6168ed762dd7dbe4e2e3.debugV.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.got.plt.sec.text.fini.rodata.eh_frame_hdr.eh_frame.gcc_except_table.init_array.fini_array.data.rel.ro.dynamic.got.plt.data.bss.gnu_debugaltlink.gnu_debuglink  $1o; |CxxKod XoxxPgȩȩ]qBH0{@@v @ @@ ````p`p`0 U`` pp#8 $$VX(R (R 8R 8R @R @R  8i 8i Pk k Ho o 0 @ ` `  ` H% 4܇ 4