From 5353443c9cd32307ab4ce5d2e263522955d5d5dd Mon Sep 17 00:00:00 2001 From: Apple Date: Mon, 14 Feb 2005 20:09:37 +0000 Subject: [PATCH] xnu-517.11.1.tar.gz --- bsd/conf/version.minor | 2 +- bsd/kern/kern_newsysctl.c | 2 +- bsd/miscfs/fifofs/fifo_vnops.c | 31 +- config/BSDKernel.exports.orig | 3798 ----------------- config/System.kext/Info.plist | 8 +- .../PlugIns/AppleNMI.kext/Info.plist | 6 +- .../ApplePlatformFamily.kext/Info.plist | 6 +- .../PlugIns/BSDKernel.kext/Info.plist | 6 +- .../System.kext/PlugIns/IOKit.kext/Info.plist | 6 +- .../PlugIns/IONVRAMFamily.kext/Info.plist | 6 +- .../IOSystemManagement.kext/Info.plist | 6 +- .../PlugIns/Libkern.kext/Info.plist | 6 +- .../System.kext/PlugIns/Mach.kext/Info.plist | 6 +- iokit/KernelConfigTables.cpp | 18 +- iokit/conf/version.minor | 2 +- libkern/conf/version.minor | 2 +- libsa/conf/version.minor | 2 +- osfmk/conf/kernelversion.minor | 2 +- osfmk/conf/version.minor | 2 +- osfmk/console/panic_image.c.orig | 1953 --------- osfmk/kern/counters.c | 4 +- osfmk/kern/counters.h | 4 +- osfmk/kern/machine.c | 4 + osfmk/ppc/chud/chud_spr.h.orig | 236 - osfmk/ppc/cpu.c | 41 + osfmk/ppc/exception.h | 1 + osfmk/ppc/lowmem_vectors.s.orig | 3403 --------------- osfmk/ppc/machine_cpu.h | 3 + osfmk/ppc/machine_routines.c | 95 +- osfmk/ppc/machine_routines_asm.s | 183 +- osfmk/ppc/start.s | 34 +- osfmk/vm/vm_map.c | 135 +- osfmk/vm/vm_map.h | 3 + pexpert/conf/version.minor | 2 +- 34 files changed, 414 insertions(+), 9604 deletions(-) delete mode 100644 config/BSDKernel.exports.orig delete mode 100644 osfmk/console/panic_image.c.orig delete mode 100644 osfmk/ppc/chud/chud_spr.h.orig delete mode 100644 osfmk/ppc/lowmem_vectors.s.orig diff --git a/bsd/conf/version.minor b/bsd/conf/version.minor index 7f8f011eb..45a4fb75d 100644 --- a/bsd/conf/version.minor +++ b/bsd/conf/version.minor @@ -1 +1 @@ -7 +8 diff --git a/bsd/kern/kern_newsysctl.c b/bsd/kern/kern_newsysctl.c index 7207a3cfb..064678311 100644 --- a/bsd/kern/kern_newsysctl.c +++ b/bsd/kern/kern_newsysctl.c @@ -521,7 +521,7 @@ sysctl_sysctl_name2oid SYSCTL_HANDLER_ARGS return (error); } -SYSCTL_PROC(_sysctl, 3, name2oid, CTLFLAG_RW|CTLFLAG_ANYBODY, 0, 0, +SYSCTL_PROC(_sysctl, 3, name2oid, CTLFLAG_RW|CTLFLAG_ANYBODY|CTLFLAG_KERN, 0, 0, sysctl_sysctl_name2oid, "I", ""); static int diff --git a/bsd/miscfs/fifofs/fifo_vnops.c b/bsd/miscfs/fifofs/fifo_vnops.c index 036aad5fe..c35fe724b 100644 --- a/bsd/miscfs/fifofs/fifo_vnops.c +++ b/bsd/miscfs/fifofs/fifo_vnops.c @@ -293,12 +293,31 @@ fifo_read(ap) if (ap->a_ioflag & IO_NDELAY) rso->so_state |= SS_NBIO; startresid = uio->uio_resid; - VOP_UNLOCK(ap->a_vp, 0, p); - thread_funnel_switch(KERNEL_FUNNEL, NETWORK_FUNNEL); - error = soreceive(rso, (struct sockaddr **)0, uio, (struct mbuf **)0, - (struct mbuf **)0, (int *)0); - thread_funnel_switch(NETWORK_FUNNEL, KERNEL_FUNNEL); - vn_lock(ap->a_vp, LK_EXCLUSIVE | LK_RETRY, p); + /* fifo conformance - if we have a reader open on the fifo but no + * writers then we need to make sure we do not block. We do that by + * checking the receive buffer and if empty set error to EWOULDBLOCK. + * If error is set to EWOULDBLOCK we skip the call into soreceive + */ + error = 0; + if (ap->a_vp->v_fifoinfo->fi_writers < 1) { + error = (rso->so_rcv.sb_cc == 0) ? EWOULDBLOCK : 0; + } + + /* skip soreceive to avoid blocking when we have no writers */ + if (error != EWOULDBLOCK) { + VOP_UNLOCK(ap->a_vp, 0, p); + thread_funnel_switch(KERNEL_FUNNEL, NETWORK_FUNNEL); + + error = soreceive(rso, (struct sockaddr **)0, uio, (struct mbuf **)0, + (struct mbuf **)0, (int *)0); + + thread_funnel_switch(NETWORK_FUNNEL, KERNEL_FUNNEL); + vn_lock(ap->a_vp, LK_EXCLUSIVE | LK_RETRY, p); + } + else { + /* clear EWOULDBLOCK and return EOF (zero) */ + error = 0; + } /* * Clear EOF indication after first such return. */ diff --git a/config/BSDKernel.exports.orig b/config/BSDKernel.exports.orig deleted file mode 100644 index ddb25da61..000000000 --- a/config/BSDKernel.exports.orig +++ /dev/null @@ -1,3798 +0,0 @@ -_BF_encrypt -_BF_set_key -_BestBlockSizeFit -_CURSIG -_ConvertUnicodeToUTF8Mangled -_DebugStr -_DisposePtr -_FastRelString -_FastUnicodeCompare -_GetEmbeddedFileID -_GetLogicalBlockSize -_GetTimeUTC -_LocalToUTC -_MAXNBUF -_MCFail -_MD5Final -_MD5Init -_MD5Pad -_MD5Transform -_MD5Update -_MDFail -_MPFail -_MacToVFSError -_NewPtr -_NewPtrSysClear -_PreliminarySetup -_RandomULong -_SHA1Final -_SHA1Init -_SHA1Transform -_SHA1Update -_SHA256_Data -_SHA256_End -_SHA256_Final -_SHA256_Init -_SHA256_Transform -_SHA256_Update -_SHA384_Data -_SHA384_End -_SHA384_Final -_SHA384_Init -_SHA384_Update -_SHA512_Data -_SHA512_End -_SHA512_Final -_SHA512_Init -_SHA512_Last -_SHA512_Transform -_SHA512_Update -_UTCToLocal -__FREE -__FREE_ZONE -__MALLOC -__MALLOC_ZONE -___sysctl -__dist_code -__length_code -__printf -__tr_align -__tr_flush_block -__tr_init -__tr_stored_block -__tr_tally -_accept -_access -_acct -_acct_process -_acctchkfreq -_acctp -_acctresume -_acctsuspend -_acctwatch -_acctwatch_funnel -_add_name -_add_pcbuffer -_add_profil -_add_to_time_wait -_addlog -_addupc_task -_adjtime -_adler32 -_advisory_read -_age_is_stale -_ah4_calccksum -_ah4_input -_ah4_output -_ah6_calccksum -_ah6_ctlinput -_ah6_input -_ah6_output -_ah_algorithm_lookup -_ah_hdrlen -_ah_hdrsiz -_alert -_alert_done -_allocbuf -_allproc -_app_profile -_apple_hwcksum_rx -_apple_hwcksum_tx -_around -_arp_ifinit -_arp_rtrequest -_arpintr -_arpintrq -_arpresolve -_arpwhohas -_at_ether_input -_attrcalcsize -_averunnable -_b_to_q -_badport_bandlim -_bawrite -_bcd2bin_data -_bdevsw -_bdevsw_add -_bdevsw_isfree -_bdevsw_remove -_bdevvp -_bdwrite -_bflushq -_bin2bcd_data -_bind -_biodone -_biowait -_blaundrycnt -_block_procsigmask -_boot -_boothowto -_bootp -_boottime -_both -_bpf_filter -_bpf_init -_bpf_mtap -_bpf_tap -_bpf_tap_callback -_bpf_validate -_bpfattach -_bpfclose -_bpfdetach -_bpfioctl -_bpfopen -_bpfpoll -_bpfread -_bpfwrite -_branch_tracing_enabled -_bread -_breada -_breadn -_brelse -_bremfree -_bs_port_table -_bsd_ast -_bsd_autoconf -_bsd_bufferinit -_bsd_close_page_cache_files -_bsd_hardclock -_bsd_hardclockinit -_bsd_init -_bsd_open_page_cache_files -_bsd_osrelease -_bsd_ostype -_bsd_pageable_map -_bsd_read_page_cache_file -_bsd_search_page_cache_data_base -_bsd_startupearly -_bsd_uprofil -_bsd_version -_bsd_version_major -_bsd_version_minor -_bsd_version_variant -_bsd_write_page_cache_file -_bsdinit_task -_buf -_bufferhdr_map -_bufhash -_bufhashlist_slock -_bufhashtbl -_bufqlim -_bufqscanwait -_bufqueues -_bufstats -_busyprt -_bwillwrite -_bwrite -_byte_swap_cgin -_byte_swap_cgout -_byte_swap_csum -_byte_swap_dir_block_in -_byte_swap_dir_block_out -_byte_swap_dir_out -_byte_swap_direct -_byte_swap_dirtemplate_in -_byte_swap_inode_in -_byte_swap_inode_out -_byte_swap_ints -_byte_swap_longlongs -_byte_swap_minidir_in -_byte_swap_sbin -_byte_swap_sbout -_byte_swap_shorts -_cache_enter -_cache_lookup -_cache_purge -_cache_purgevfs -_cached_sock_alloc -_cached_sock_count -_cached_sock_free -_calcru -_callout -_cansignal -_cast128_decrypt_round12 -_cast128_decrypt_round16 -_cast128_encrypt_round12 -_cast128_encrypt_round16 -_catq -_cd9660_access -_cd9660_blkatoff -_cd9660_blktooff -_cd9660_bmap -_cd9660_cdxaop_entries -_cd9660_cdxaop_opv_desc -_cd9660_cdxaop_p -_cd9660_close -_cd9660_cmap -_cd9660_defattr -_cd9660_deftstamp -_cd9660_enotsupp -_cd9660_fhtovp -_cd9660_fifoop_entries -_cd9660_fifoop_opv_desc -_cd9660_fifoop_p -_cd9660_getattr -_cd9660_getattrlist -_cd9660_ihashget -_cd9660_ihashins -_cd9660_ihashrem -_cd9660_inactive -_cd9660_init -_cd9660_ioctl -_cd9660_islocked -_cd9660_lock -_cd9660_lookup -_cd9660_mmap -_cd9660_mount -_cd9660_mountroot -_cd9660_offtoblk -_cd9660_open -_cd9660_pagein -_cd9660_pathconf -_cd9660_print -_cd9660_quotactl -_cd9660_read -_cd9660_readdir -_cd9660_readlink -_cd9660_reclaim -_cd9660_remove -_cd9660_rmdir -_cd9660_root -_cd9660_rrip_analyze -_cd9660_rrip_getname -_cd9660_rrip_getsymname -_cd9660_rrip_offset -_cd9660_seek -_cd9660_select -_cd9660_specop_entries -_cd9660_specop_opv_desc -_cd9660_specop_p -_cd9660_start -_cd9660_statfs -_cd9660_strategy -_cd9660_sync -_cd9660_sysctl -_cd9660_tstamp_conv17 -_cd9660_tstamp_conv7 -_cd9660_unlock -_cd9660_unmount -_cd9660_vfsops -_cd9660_vget -_cd9660_vget_internal -_cd9660_vnodeop_entries -_cd9660_vnodeop_opv_desc -_cd9660_vnodeop_p -_cd9660_vptofh -_cd9660_xa_read -_cdevsw -_cdevsw_add -_cdevsw_add_with_bdev -_cdevsw_isfree -_cdevsw_remove -_cfree -_cfreecount -_cfreelist -_chdir -_check_cpu_subtype -_check_exec_access -_check_routeselfref -_checkalias -_checkuseraccess -_chflags -_chgproccnt -_chkdq -_chkdqchg -_chkiq -_chkiqchg -_chkvnlock -_chmod -_chown -_chroot -_chrtoblk -_chrtoblk_set -_cinit -_cjk_encoding -_cjk_lastunique -_clalloc -_clear_procsiglist -_clfree -_clone_system_shared_regions -_close -_closef -_clrbits -_cluster_bp -_cluster_copy_ubc_data -_cluster_copy_upl_data -_cluster_pagein -_cluster_pageout -_cluster_push -_cluster_read -_cluster_release -_cluster_write -_cmask -_cnodehash -_cnodehashtbl -_collectth_state -_comp_add_data -_comp_end -_comp_get_ratio -_comp_init -_compute_averunnable -_concat_domain -_connect -_cons -_cons_cinput -_console_user -_constty -_copyfile -_copyright -_copystr -_copywithin -_coredump -_count_busy_buffers -_count_lock_queue -_crcmp -_crcopy -_crdup -_create_unix_stack -_cred0 -_crfree -_crget -_ctl_attach -_ctl_connect -_ctl_ctloutput -_ctl_deregister -_ctl_disconnect -_ctl_enqueuedata -_ctl_enqueuembuf -_ctl_find -_ctl_head -_ctl_ioctl -_ctl_post_msg -_ctl_register -_ctl_send -_ctl_usrreqs -_ctlsw -_cttyioctl -_cttyopen -_cttyread -_cttyselect -_cttywrite -_cur_tw_slot -_current_proc -_current_proc_EXTERNAL -_cvtstat -_dead_badop -_dead_blktooff -_dead_bmap -_dead_cmap -_dead_ebadf -_dead_ioctl -_dead_lock -_dead_lookup -_dead_nullop -_dead_offtoblk -_dead_open -_dead_print -_dead_read -_dead_select -_dead_strategy -_dead_vnodeop_entries -_dead_vnodeop_opv_desc -_dead_vnodeop_p -_dead_write -_def_tbuffer_size -_default_pager_init_flag -_deflate -_deflateCopy -_deflateEnd -_deflateInit2_ -_deflateInit_ -_deflateParams -_deflateReset -_deflateSetDictionary -_deflate_copyright -_defrouter_addreq -_defrouter_delreq -_defrouter_lookup -_defrouter_select -_defrtrlist_del -_delack_bitmask -_delete -_delete_each_prefix -_des_SPtrans -_des_check_key -_des_check_key_parity -_des_decrypt3 -_des_ecb3_encrypt -_des_ecb_encrypt -_des_encrypt1 -_des_encrypt2 -_des_encrypt3 -_des_fixup_key_parity -_des_is_weak_key -_des_key_sched -_des_options -_des_set_key -_des_set_key_checked -_des_set_key_unchecked -_des_set_odd_parity -_desireddquot -_desiredvnodes -_dest6_input -_dev_add_entry -_dev_add_name -_dev_add_node -_dev_dup_entry -_dev_dup_plane -_dev_finddir -_dev_findname -_dev_free_hier -_dev_free_name -_dev_root -_devcls -_devfs_checkpath -_devfs_dn_free -_devfs_dntovn -_devfs_free_plane -_devfs_kernel_mount -_devfs_lock -_devfs_make_link -_devfs_make_node -_devfs_mknod -_devfs_mount -_devfs_propogate -_devfs_remove -_devfs_sinit -_devfs_spec_vnodeop_opv_desc -_devfs_spec_vnodeop_p -_devfs_stats -_devfs_update -_devfs_vfsops -_devfs_vnodeop_opv_desc -_devfs_vnodeop_p -_devin -_devio -_devioc -_devnode_free -_devopn -_devout -_devwait -_dhcpol_add -_dhcpol_concat -_dhcpol_count -_dhcpol_element -_dhcpol_find -_dhcpol_free -_dhcpol_get -_dhcpol_init -_dhcpol_parse_buffer -_dhcpol_parse_packet -_dhcpol_parse_vendor -_dirchk -_disableConsoleOutput -_disable_branch_tracing -_disable_funnel -_div_init -_div_input -_div_usrreqs -_divert_packet -_dlil_attach_interface_filter -_dlil_attach_protocol -_dlil_attach_protocol_filter -_dlil_dereg_if_modules -_dlil_dereg_proto_module -_dlil_detach_filter -_dlil_detach_protocol -_dlil_event -_dlil_expand_mcl -_dlil_find_dltag -_dlil_if_acquire -_dlil_if_attach -_dlil_if_detach -_dlil_if_release -_dlil_init -_dlil_initialized -_dlil_inject_if_input -_dlil_inject_if_output -_dlil_inject_pr_input -_dlil_inject_pr_output -_dlil_input -_dlil_input_lock -_dlil_input_packet -_dlil_input_thread_continue -_dlil_input_thread_wakeup -_dlil_ioctl -_dlil_output -_dlil_plumb_protocol -_dlil_post_msg -_dlil_reg_if_modules -_dlil_reg_proto_module -_dlil_stats -_dlil_unplumb_protocol -_dlttoproto -_dmmax -_dmmin -_dmtext -_doasyncfree -_doclusterread -_doclusterwrite -_doingcache -_domaininit -_domainname -_domainnamelen -_domains -_donice -_doreallocblks -_dosetrlimit -_dounmount -_dp_pgins -_dp_pgouts -_dqdirtylist -_dqfileclose -_dqfileopen -_dqflush -_dqfreelist -_dqget -_dqhash -_dqhashtbl -_dqinit -_dqreclaim -_dqref -_dqrele -_dqsync -_dqsync_orphans -_dump_string_table -_dumpdev -_dumplo -_dup -_dup2 -_dup_sockaddr -_dupfdopen -_dylink_test -_embutl -_enable_branch_tracing -_enable_funnel -_encap4_input -_encap6_input -_encap_attach -_encap_attach_func -_encap_detach -_encap_getarg -_encap_init -_encaptab -_encode_comp_t -_enodev -_enodev_strat -_enoioctl -_enosys -_enterpgrp -_enxio -_eopnotsupp -_err_abortop -_err_access -_err_advlock -_err_allocate -_err_blkatoff -_err_blktooff -_err_bmap -_err_bwrite -_err_close -_err_cmap -_err_copyfile -_err_create -_err_devblocksize -_err_exchange -_err_fsync -_err_getattr -_err_getattrlist -_err_inactive -_err_ioctl -_err_islocked -_err_lease -_err_link -_err_lock -_err_mkcomplex -_err_mkdir -_err_mknod -_err_mmap -_err_offtoblk -_err_open -_err_pagein -_err_pageout -_err_pathconf -_err_pgrd -_err_pgwr -_err_print -_err_read -_err_readdir -_err_readdirattr -_err_readlink -_err_reallocblks -_err_reclaim -_err_remove -_err_rename -_err_revoke -_err_rmdir -_err_searchfs -_err_seek -_err_select -_err_setattr -_err_setattrlist -_err_strategy -_err_symlink -_err_truncate -_err_unlock -_err_update -_err_valloc -_err_vfree -_err_whiteout -_err_write -_errsys -_esp4_input -_esp4_output -_esp6_ctlinput -_esp6_input -_esp6_output -_esp_algorithm_lookup -_esp_auth -_esp_hdrsiz -_esp_max_ivlen -_esp_rijndael_blockdecrypt -_esp_rijndael_blockencrypt -_esp_rijndael_schedlen -_esp_rijndael_schedule -_esp_schedule -_esp_udp_encap_port -_ether_addmulti -_ether_attach_at -_ether_attach_inet -_ether_attach_inet6 -_ether_delmulti -_ether_demux -_ether_detach_at -_ether_detach_inet -_ether_detach_inet6 -_ether_family_init -_ether_frameout -_ether_ifattach -_ether_ifmod_ioctl -_ether_inet6_prmod_ioctl -_ether_inet_prmod_ioctl -_ether_input -_ether_ipmulticast_max -_ether_ipmulticast_min -_ether_pre_output -_ether_prmod_ioctl -_ether_resolvemulti -_ether_sprintf -_event_usrreqs -_eventsw -_evprocdeque -_evprocenque -_evsofree -_exchangedata -_exchangelock -_execsigs -_execv -_execve -_execve_semaphore -_exit -_exit1 -_falloc -_fatfile_getarch -_fatfile_getarch_affinity -_fchdir -_fchflags -_fchmod -_fchown -_fcntl -_fcount -_fdalloc -_fdavail -_fdesc_allocvp -_fdesc_badop -_fdesc_getattr -_fdesc_inactive -_fdesc_init -_fdesc_ioctl -_fdesc_lookup -_fdesc_mount -_fdesc_open -_fdesc_pathconf -_fdesc_print -_fdesc_read -_fdesc_readdir -_fdesc_readlink -_fdesc_reclaim -_fdesc_root -_fdesc_select -_fdesc_setattr -_fdesc_start -_fdesc_statfs -_fdesc_sync -_fdesc_unmount -_fdesc_vfree -_fdesc_vfsops -_fdesc_vnodeop_entries -_fdesc_vnodeop_opv_desc -_fdesc_vnodeop_p -_fdesc_write -_fdexpand -_fdgetf -_fdhash -_fdhashtbl -_fdopen -_fdrelse -_ffree -_ffs -_ffs_alloc -_ffs_balloc -_ffs_blkalloc -_ffs_blkatoff -_ffs_blkfree -_ffs_blkpref -_ffs_blktooff -_ffs_clrblock -_ffs_clusteracct -_ffs_fhtovp -_ffs_fifoop_entries -_ffs_fifoop_opv_desc -_ffs_fifoop_p -_ffs_flushfiles -_ffs_fragacct -_ffs_fsync -_ffs_init -_ffs_isblock -_ffs_mount -_ffs_mountfs -_ffs_mountroot -_ffs_offtoblk -_ffs_oldfscompat -_ffs_pagein -_ffs_pageout -_ffs_read -_ffs_reallocblks -_ffs_realloccg -_ffs_reclaim -_ffs_reload -_ffs_sbupdate -_ffs_setblock -_ffs_specop_entries -_ffs_specop_opv_desc -_ffs_specop_p -_ffs_statfs -_ffs_sync -_ffs_sysctl -_ffs_truncate -_ffs_unmount -_ffs_update -_ffs_valloc -_ffs_vfree -_ffs_vget -_ffs_vnodeop_entries -_ffs_vnodeop_opv_desc -_ffs_vnodeop_p -_ffs_vptofh -_ffs_write -_fhopen -_fifo_advlock -_fifo_bmap -_fifo_close -_fifo_ebadf -_fifo_inactive -_fifo_ioctl -_fifo_lookup -_fifo_nfsv2nodeop_opv_desc -_fifo_nfsv2nodeop_p -_fifo_open -_fifo_pathconf -_fifo_print -_fifo_printinfo -_fifo_read -_fifo_select -_fifo_vnodeop_entries -_fifo_vnodeop_opv_desc -_fifo_vnodeop_p -_fifo_write -_filedesc0 -_filehead -_find_nke -_finishdup -_firstc -_firstsect -_firstseg -_firstsegfromheader -_fixjobc -_flock -_fmod_watch -_fmod_watch_enable -_fork -_fpathconf -_fr_checkp -_frag6_doing_reass -_frag6_drain -_frag6_init -_frag6_input -_frag6_nfragpackets -_frag6_slowtimo -_fragtbl -_fragtbl124 -_fragtbl8 -_freevnodes -_fref -_frele -_fs_filtops -_fsctl -_fstat -_fstatfs -_fstatv -_fsync -_ftruncate -_fubyte -_fuibyte -_fuiword -_futimes -_fuword -_fw_enable -_gCompareTable -_gLatinCaseFold -_gLowerCaseTable -_gTimeZone -_getProcName -_get_aiotask -_get_bsduthreadarg -_get_bsduthreadrval -_get_inpcb_str_size -_get_kernel_symfile -_get_new_filter_id -_get_procrustime -_get_signalthread -_get_tcp_str_size -_getattrlist -_getblk -_getc -_getdirentries -_getdirentriesattr -_getdtablesize -_geteblk -_getegid -_geteuid -_getfakefvmseg -_getfh -_getfsstat -_getgid -_getgroups -_getinoquota -_getitimer -_getlastaddr -_getlogin -_getnewvnode -_getpeername -_getpgid -_getpgrp -_getpid -_getppid -_getpriority -_getquota -_getrlimit -_getrusage -_getsectbyname -_getsectbynamefromheader -_getsectdatafromheader -_getsegbyname -_getsegbynamefromheader -_getsegdatafromheader -_getsid -_getsock -_getsockaddr -_getsockname -_getsockopt -_gettimeofday -_getuid -_getvnode -_gif_attach_inet -_gif_attach_inet6 -_gif_attach_proto_family -_gif_delete_tunnel -_gif_demux -_gif_detach_inet -_gif_detach_inet6 -_gif_detach_proto_family -_gif_encapcheck4 -_gif_encapcheck6 -_gif_input -_gif_ioctl -_gif_pre_output -_gif_reg_if_mods -_gif_shutdown -_gifattach -_gifs -_global_state_pid -_global_user_profile_cache -_grade_cpu_subtype -_groupmember -_gsignal -_hard_throttle_on_root -_hashinit -_hex2ascii_data -_hfc_tag -_hfs_addconverter -_hfs_allocate -_hfs_blktooff -_hfs_bmap -_hfs_bwrite -_hfs_catname -_hfs_chash_slock -_hfs_chkdq -_hfs_chkdqchg -_hfs_chkiq -_hfs_chkiqchg -_hfs_clearlock -_hfs_cmap -_hfs_converterinit -_hfs_encoding_list -_hfs_encoding_list_slock -_hfs_encodingbias -_hfs_extname -_hfs_fifoop_entries -_hfs_fifoop_opv_desc -_hfs_fifoop_p -_hfs_findoverlap -_hfs_generate_volume_notifications -_hfs_getblock -_hfs_getconverter -_hfs_getinoquota -_hfs_getlock -_hfs_getquota -_hfs_ioctl -_hfs_islatinbias -_hfs_offtoblk -_hfs_owner_rights -_hfs_pagein -_hfs_pageout -_hfs_pickencoding -_hfs_privdirname -_hfs_qsync -_hfs_quotactl -_hfs_quotaoff -_hfs_quotaon -_hfs_quotastat -_hfs_read -_hfs_relconverter -_hfs_remconverter -_hfs_select -_hfs_setlock -_hfs_setquota -_hfs_setuse -_hfs_specop_entries -_hfs_specop_opv_desc -_hfs_specop_p -_hfs_split -_hfs_strategy -_hfs_swap_BTNode -_hfs_swap_HFSBTInternalNode -_hfs_swap_HFSPlusBTInternalNode -_hfs_swap_HFSPlusForkData -_hfs_to_utf8 -_hfs_truncate -_hfs_vbmname -_hfs_vfsops -_hfs_vnodeop_entries -_hfs_vnodeop_opv_desc -_hfs_vnodeop_p -_hfs_wakelock -_hfs_write -_hfsfifo_kqfilt_add -_hfsfifo_kqfilt_remove -_hfsmaxlockdepth -_holdrele -_hostid -_hostname -_hostnamelen -_hz -_hzto -_icmp6_ctloutput -_icmp6_error -_icmp6_fasttimo -_icmp6_ifstat -_icmp6_ifstatmax -_icmp6_init -_icmp6_input -_icmp6_mtudisc_update -_icmp6_nodeinfo -_icmp6_rediraccept -_icmp6_redirect_input -_icmp6_redirect_output -_icmp6_redirtimeout -_icmp6_reflect -_icmp6errppslim -_icmp6stat -_icmp_error -_icmp_input -_if_addmulti -_if_allmulti -_if_attach -_if_delmulti -_if_delmultiaddr -_if_down -_if_down_all -_if_index -_if_name -_if_route -_if_rtproto_del -_if_unroute -_if_up -_if_withname -_ifa_ifwithaddr -_ifa_ifwithdstaddr -_ifa_ifwithnet -_ifa_ifwithroute -_ifafree -_ifaof_ifpforaddr -_ifaref -_ifbyfamily -_ifindex2ifnet -_ifioctl -_ifma_lostlist -_ifmaof_ifpforaddr -_ifmedia_add -_ifmedia_init -_ifmedia_ioctl -_ifmedia_list_add -_ifmedia_removeall -_ifmedia_set -_ifnet -_ifnet_addrs -_ifpromisc -_ifptodlt -_ifqmaxlen -_iftovt_tab -_ifunit -_igmp_fasttimo -_igmp_init -_igmp_input -_igmp_joingroup -_igmp_leavegroup -_igmp_slowtimo -_ihash -_ihashtbl -_in6_addmulti -_in6_addr2scopeid -_in6_addrscope -_in6_are_prefix_equal -_in6_cksum -_in6_clearscope -_in6_control -_in6_delmulti -_in6_dinit -_in6_embedscope -_in6_get_tmpifid -_in6_gif_input -_in6_gif_output -_in6_gif_protosw -_in6_if_up -_in6_ifaddr -_in6_ifattach -_in6_ifawithifp -_in6_ifawithscope -_in6_ifdetach -_in6_ifindex2scopeid -_in6_ifstat -_in6_ifstatmax -_in6_init2done -_in6_init_prefix_ltimes -_in6_inithead -_in6_is_addr_deprecated -_in6_len2mask -_in6_localaddr -_in6_losing -_in6_mapped_peeraddr -_in6_mapped_sockaddr -_in6_mask2len -_in6_matchlen -_in6_maxmtu -_in6_multihead -_in6_nigroup -_in6_nigroup_attach -_in6_nigroup_detach -_in6_pcbbind -_in6_pcbconnect -_in6_pcbdetach -_in6_pcbdisconnect -_in6_pcbladdr -_in6_pcblookup_hash -_in6_pcblookup_local -_in6_pcbnotify -_in6_pcbpurgeif0 -_in6_pcbsetport -_in6_post_msg -_in6_prefix_add_ifid -_in6_prefix_ioctl -_in6_prefix_remove_ifid -_in6_prefixlen2mask -_in6_proto_count -_in6_purgeaddr -_in6_purgeif -_in6_purgeprefix -_in6_recoverscope -_in6_rr_timer -_in6_rr_timer_funneled -_in6_rtchange -_in6_selecthlim -_in6_selectsrc -_in6_setmaxmtu -_in6_setpeeraddr -_in6_setsockaddr -_in6_sin6_2_sin -_in6_sin6_2_sin_in_sock -_in6_sin_2_v4mapsin6 -_in6_sin_2_v4mapsin6_in_sock -_in6_sockaddr -_in6_tmpaddrtimer -_in6_tmpaddrtimer_funneled -_in6_tmpifadd -_in6_update_ifa -_in6_v4mapsin6_sockaddr -_in6addr_any -_in6addr_linklocal_allnodes -_in6addr_linklocal_allrouters -_in6addr_loopback -_in6addr_nodelocal_allnodes -_in6if_do_dad -_in6ifa_ifpforlinklocal -_in6ifa_ifpwithaddr -_in6mask0 -_in6mask128 -_in6mask32 -_in6mask64 -_in6mask96 -_in_addmulti -_in_addword -_in_broadcast -_in_canforward -_in_cksum -_in_cksum_skip -_in_control -_in_delayed_cksum -_in_delmulti -_in_dinit -_in_gif_input -_in_gif_output -_in_gif_protosw -_in_ifaddrhead -_in_ifadown -_in_ifscrub -_in_inithead -_in_localaddr -_in_losing -_in_multihead -_in_pcb_get_owner -_in_pcb_grab_port -_in_pcb_letgo_port -_in_pcb_nat_init -_in_pcb_new_share_client -_in_pcb_rem_share_client -_in_pcballoc -_in_pcbbind -_in_pcbconnect -_in_pcbdetach -_in_pcbdisconnect -_in_pcbinshash -_in_pcbladdr -_in_pcblookup_hash -_in_pcblookup_local -_in_pcbnotifyall -_in_pcbpurgeif0 -_in_pcbrehash -_in_pcbremlists -_in_proto_count -_in_pseudo -_in_rtchange -_in_rtqdrain -_in_setpeeraddr -_in_setsockaddr -_in_stf_input -_in_stf_protosw -_inactivevnodes -_incore -_inet6_ether_input -_inet6_ether_pre_output -_inet6ctlerrmap -_inet6domain -_inet6sw -_inet_aton -_inet_ether_input -_inet_ether_pre_output -_inet_ntoa -_inetctlerrmap -_inetdomain -_inetsw -_inferior -_inflate -_inflateEnd -_inflateInit2_ -_inflateInit_ -_inflateReset -_inflateSetDictionary -_inflateSync -_inflateSyncPoint -_inflate_blocks -_inflate_blocks_free -_inflate_blocks_new -_inflate_blocks_reset -_inflate_blocks_sync_point -_inflate_codes -_inflate_codes_free -_inflate_codes_new -_inflate_copyright -_inflate_fast -_inflate_flush -_inflate_mask -_inflate_set_dictionary -_inflate_trees_bits -_inflate_trees_dynamic -_inflate_trees_fixed -_init_args -_init_attempts -_init_domain -_init_ip6pktopts -_init_sin6 -_initialized -_initproc -_inittodr -_inside -_insmntque -_int6intrq_present -_invalhash -_iobufqueue -_ioctl -_ip4_ah_cleartos -_ip4_ah_net_deflev -_ip4_ah_offsetmask -_ip4_ah_trans_deflev -_ip4_def_policy -_ip4_esp_net_deflev -_ip4_esp_randpad -_ip4_esp_trans_deflev -_ip4_ipsec_dfbit -_ip4_ipsec_ecn -_ip6_accept_rtadv -_ip6_addaux -_ip6_ah_net_deflev -_ip6_ah_trans_deflev -_ip6_auto_flowlabel -_ip6_auto_linklocal -_ip6_clearpktopts -_ip6_copypktopts -_ip6_ctloutput -_ip6_dad_count -_ip6_def_policy -_ip6_defhlim -_ip6_defmcasthlim -_ip6_delaux -_ip6_desync_factor -_ip6_ecn_egress -_ip6_ecn_ingress -_ip6_esp_net_deflev -_ip6_esp_randpad -_ip6_esp_trans_deflev -_ip6_findaux -_ip6_flow_seq -_ip6_forward -_ip6_forward_rt -_ip6_forward_srcrt -_ip6_forwarding -_ip6_freemoptions -_ip6_freepcbopts -_ip6_fw_chk_ptr -_ip6_fw_ctl_ptr -_ip6_fw_enable -_ip6_get_prevhdr -_ip6_getdstifaddr -_ip6_gif_hlim -_ip6_hdrnestlimit -_ip6_id -_ip6_init -_ip6_input -_ip6_ipsec_ecn -_ip6_keepfaith -_ip6_lasthdr -_ip6_log_interval -_ip6_log_time -_ip6_maxfragpackets -_ip6_mforward -_ip6_mloopback -_ip6_mrouter -_ip6_mrouter_done -_ip6_mrouter_get -_ip6_mrouter_set -_ip6_mrouter_ver -_ip6_mrtproto -_ip6_nexthdr -_ip6_optlen -_ip6_ours_check_algorithm -_ip6_output -_ip6_process_hopopts -_ip6_protox -_ip6_rr_prune -_ip6_savecontrol -_ip6_sendredirects -_ip6_setpktoptions -_ip6_sourcecheck -_ip6_sourcecheck_interval -_ip6_sprintf -_ip6_temp_preferred_lifetime -_ip6_temp_regen_advance -_ip6_temp_valid_lifetime -_ip6_unknown_opt -_ip6_use_deprecated -_ip6_use_tempaddr -_ip6_v6only -_ip6intr -_ip6intrq -_ip6q -_ip6stat -_ip_ctloutput -_ip_defttl -_ip_divert_cookie -_ip_drain -_ip_ecn_egress -_ip_ecn_ingress -_ip_freemoptions -_ip_fw_chk_ptr -_ip_fw_ctl_ptr -_ip_fw_fwd_addr -_ip_gif_ttl -_ip_id -_ip_init -_ip_input -_ip_linklocal_in_allowbadttl -_ip_linklocal_stat -_ip_mcast_src -_ip_mforward -_ip_mrouter -_ip_mrouter_done -_ip_mrouter_get -_ip_mrouter_set -_ip_optcopy -_ip_output -_ip_pkt_to_mbuf -_ip_protox -_ip_rsvp_done -_ip_rsvp_force_done -_ip_rsvp_init -_ip_rsvp_vif_done -_ip_rsvp_vif_init -_ip_rsvpd -_ip_savecontrol -_ip_slowtimo -_ip_srcroute -_ip_stripoptions -_ipcomp4_input -_ipcomp4_output -_ipcomp6_input -_ipcomp6_output -_ipcomp_algorithm_lookup -_ipcperm -_ipflow_create -_ipflow_fastforward -_ipflow_slowtimo -_ipforwarding -_ipintr -_ipintrq -_ipintrq_present -_ipip_input -_ipport_firstauto -_ipport_hifirstauto -_ipport_hilastauto -_ipport_lastauto -_ipport_lowfirstauto -_ipport_lowlastauto -_ipsec4_delete_pcbpolicy -_ipsec4_get_policy -_ipsec4_getpolicybyaddr -_ipsec4_getpolicybysock -_ipsec4_hdrsiz -_ipsec4_in_reject -_ipsec4_in_reject_so -_ipsec4_logpacketstr -_ipsec4_output -_ipsec4_set_policy -_ipsec4_tunnel_validate -_ipsec6_delete_pcbpolicy -_ipsec6_get_policy -_ipsec6_getpolicybyaddr -_ipsec6_getpolicybysock -_ipsec6_hdrsiz -_ipsec6_in_reject -_ipsec6_in_reject_so -_ipsec6_logpacketstr -_ipsec6_output_trans -_ipsec6_output_tunnel -_ipsec6_set_policy -_ipsec6_tunnel_validate -_ipsec6stat -_ipsec_addhist -_ipsec_bypass -_ipsec_chkreplay -_ipsec_clearhist -_ipsec_copy_policy -_ipsec_copypkt -_ipsec_debug -_ipsec_delaux -_ipsec_dumpmbuf -_ipsec_get_reqlevel -_ipsec_gethist -_ipsec_getsocket -_ipsec_hdrsiz_tcp -_ipsec_init_policy -_ipsec_logsastr -_ipsec_setsocket -_ipsec_updatereplay -_ipsecstat -_ipstat -_iptime -_is_file_clean -_is_suser -_is_suser1 -_isdisk -_isinferior -_iskmemdev -_isn_ctx -_isn_last_reseed -_isn_secret -_iso_nchstats -_isodirino -_isofncmp -_isofntrans -_isohash -_isohashtbl -_isonullname -_issetugid -_issignal -_issingleuser -_itimerdecr -_itimerfix -_journal_active -_journal_close -_journal_create -_journal_end_transaction -_journal_flush -_journal_kill_block -_journal_modify_block_abort -_journal_modify_block_end -_journal_modify_block_start -_journal_open -_journal_start_transaction -_kd_buffer -_kd_buflast -_kd_bufptr -_kd_bufsize -_kd_buftomem -_kd_entropy_buffer -_kd_entropy_bufsize -_kd_entropy_buftomem -_kd_entropy_count -_kd_entropy_indx -_kd_mapcount -_kd_mapptr -_kd_mapsize -_kd_maptomem -_kd_prev_timebase -_kd_readlast -_kd_trace_lock -_kdbg_bootstrap -_kdbg_clear -_kdbg_control -_kdbg_control_chud -_kdbg_getentropy -_kdbg_getreg -_kdbg_mapinit -_kdbg_read -_kdbg_readmap -_kdbg_reinit -_kdbg_resolve_map -_kdbg_setpid -_kdbg_setpidex -_kdbg_setreg -_kdbg_setrtcdec -_kdbg_trace_data -_kdbg_trace_string -_kdebug_chudhook -_kdebug_enable -_kdebug_flags -_kdebug_nolog -_kdebug_ops -_kdebug_trace -_kdlog_beg -_kdlog_end -_kdlog_value1 -_kdlog_value2 -_kdlog_value3 -_kdlog_value4 -_kern_control_init -_kern_event_init -_kern_sysctl -_kernacc -_kernel_debug -_kernel_debug1 -_kernel_flock -_kernel_sysctl -_kernproc -_kev_attach -_kev_control -_kev_detach -_kev_post_msg -_kevent -_key_allocsa -_key_allocsp -_key_cb -_key_checkrequest -_key_checktunnelsanity -_key_debug_level -_key_dst -_key_freereg -_key_freesav -_key_freeso -_key_freesp -_key_gettunnel -_key_init -_key_ismyaddr -_key_msg2sp -_key_newsp -_key_output -_key_parse -_key_random -_key_randomfill -_key_sa_recordxfer -_key_sa_routechange -_key_sa_stir_iv -_key_sendup -_key_sendup_mbuf -_key_sp2msg -_key_spdacquire -_key_src -_key_timehandler -_key_timehandler_funnel -_key_usrreqs -_keydb_delsecashead -_keydb_delsecpolicy -_keydb_delsecreg -_keydb_delsecreplay -_keydb_freesecasvar -_keydb_newsecashead -_keydb_newsecasvar -_keydb_newsecpolicy -_keydb_newsecreg -_keydb_newsecreplay -_keydb_refsecasvar -_keydomain -_keystat -_keysw -_kill -_killpg1 -_kinfo_vdebug -_klist_init -_klogwakeup -_km_tty -_kmclose -_kmem_mb_alloc -_kmeminit -_kmemstats -_kmgetc -_kmgetc_silent -_kminit -_kmioctl -_kmopen -_kmputc -_kmread -_kmwrite -_kmzones -_knote -_knote_attach -_knote_detach -_krpc_call -_krpc_portmap -_ktrace -_ktrcsw -_ktrgenio -_ktrnamei -_ktrpsig -_ktrsyscall -_ktrsysret -_kvprintf -_lbolt -_ldisc_deregister -_ldisc_register -_lease_check -_lease_updatetime -_leavepgrp -_legal_vif_num -_lf_clearlock -_lf_findoverlap -_lf_getblock -_lf_getlock -_lf_setlock -_lf_split -_lf_wakelock -_lightning_bolt -_limcopy -_limit0 -_linesw -_link -_listen -_llinfo_nd6 -_lo_attach_inet -_lo_attach_inet6 -_lo_demux -_lo_framer -_lo_input -_lo_reg_if_mods -_lo_set_bpf_tap -_lo_shutdown -_load_ipfw -_load_machfile -_local_proto_count -_localdomain -_lockinit -_lockmgr -_lockmgr_printinfo -_lockstatus -_log_in_vain -_log_init -_log_lock -_log_open -_log_putc -_logclose -_logioctl -_logopen -_logpri -_logread -_logselect -_logsoftc -_logwakeup -_loif -_lookup -_loopattach -_lru_is_stale -_lseek -_lstat -_lstatv -_m_adj -_m_aux_add -_m_aux_delete -_m_aux_find -_m_cat -_m_clalloc -_m_cltom -_m_copy_pkthdr -_m_copyback -_m_copydata -_m_copym -_m_copym_with_hdrs -_m_devget -_m_dtom -_m_dup -_m_expand -_m_free -_m_freem -_m_freem_list -_m_get -_m_getclr -_m_gethdr -_m_getpacket -_m_getpackethdrs -_m_getpackets -_m_leadingspace -_m_mcheck -_m_mchtype -_m_mclalloc -_m_mclfree -_m_mclget -_m_mclhasreference -_m_mclref -_m_mclunref -_m_mtocl -_m_mtod -_m_prepend -_m_prepend_2 -_m_pulldown -_m_pullup -_m_reclaim -_m_retry -_m_retryhdr -_m_split -_m_trailingspace -_m_want -_mac_roman_to_unicode -_mac_roman_to_utf8 -_machdep_sysctl_list -_machine_exception -_macx_backing_store_recovery -_macx_backing_store_suspend -_macx_swapoff -_macx_swapon -_madvise -_map_fd -_map_fd_funneled -_max_datalen -_max_hdr -_max_linkhdr -_max_protohdr -_maxdmap -_maxfiles -_maxfilesperproc -_maxlockdepth -_maxproc -_maxprocperuid -_maxsmap -_maxsockets -_maxvfsconf -_maxvfsslots -_mb_map -_mbinit -_mbstat -_mbuf_slock -_mbutl -_mcl_paddr -_mcl_to_paddr -_mclfree -_mclrefcnt -_mdev -_mdevBMajor -_mdevCMajor -_mdevadd -_mdevinit -_mdevlookup -_memmove -_memname -_meta_bread -_meta_breadn -_meta_is_stale -_meta_zones -_mf6ctable -_mfree -_mfreelater -_microtime -_microuptime -_mincore -_minherit -_minphys -_mkcomplex -_mkdir -_mkfifo -_mknod -_mld6_fasttimeo -_mld6_init -_mld6_input -_mld6_start_listening -_mld6_stop_listening -_mlock -_mlockall -_mmFree -_mmGetPtr -_mmInit -_mmMalloc -_mmReturnPtr -_mmap -_mmread -_mmrw -_mmwrite -_mntid_slock -_mntvnode_slock -_modetodirtype -_modwatch -_mount -_mountlist -_mountlist_slock -_mountroot -_mountroot_post_hook -_mprotect -_mremap -_mrt6_ioctl -_mrt6stat -_mrt_ioctl -_msgbufp -_msgctl -_msgget -_msgrcv -_msgsnd -_msgsys -_msync -_multicast_register_if -_munlock -_munlockall -_munmap -_munmapfd -_mynum_flavors -_n6expire -_name_cmp -_namei -_nanotime -_nanouptime -_nbdwrite -_nblkdev -_nbuf -_nbufh -_nbufhigh -_nbuflow -_nbuftarget -_ncallout -_nchash -_nchashtbl -_nchinit -_nchrdev -_nchstats -_ncl -_nclruhead -_nd6_cache_lladdr -_nd6_dad_duplicated -_nd6_dad_start -_nd6_dad_stop -_nd6_dad_stoptimer -_nd6_debug -_nd6_defifindex -_nd6_delay -_nd6_free -_nd6_gctimer -_nd6_ifattach -_nd6_ifptomac -_nd6_init -_nd6_ioctl -_nd6_is_addr_neighbor -_nd6_lookup -_nd6_maxndopt -_nd6_maxnudhint -_nd6_mmaxtries -_nd6_na_input -_nd6_na_output -_nd6_need_cache -_nd6_ns_input -_nd6_ns_output -_nd6_nud_hint -_nd6_option -_nd6_option_init -_nd6_options -_nd6_output -_nd6_prefix_lookup -_nd6_prefix_offlink -_nd6_prefix_onlink -_nd6_prelist_add -_nd6_prune -_nd6_purge -_nd6_ra_input -_nd6_recalc_reachtm_interval -_nd6_rs_input -_nd6_rtrequest -_nd6_setdefaultiface -_nd6_setmtu -_nd6_storelladdr -_nd6_timer -_nd6_timer_funneled -_nd6_umaxtries -_nd6_useloopback -_nd_defrouter -_nd_ifinfo -_nd_prefix -_ndflush -_ndqb -_ndrv_abort -_ndrv_attach -_ndrv_bind -_ndrv_connect -_ndrv_control -_ndrv_ctlinput -_ndrv_ctloutput -_ndrv_delspec -_ndrv_detach -_ndrv_disconnect -_ndrv_do_detach -_ndrv_do_disconnect -_ndrv_dominit -_ndrv_drain -_ndrv_find_tag -_ndrv_flushq -_ndrv_get_ifp -_ndrv_handle_ifp_detach -_ndrv_init -_ndrv_input -_ndrv_output -_ndrv_peeraddr -_ndrv_read_event -_ndrv_recvspace -_ndrv_send -_ndrv_sendspace -_ndrv_sense -_ndrv_setspec -_ndrv_shutdown -_ndrv_sockaddr -_ndrv_sysctl -_ndrv_to_dlil_demux -_ndrv_usrreqs -_ndrvdomain -_ndrvl -_ndrvsw -_net_add_domain -_net_add_proto -_net_del_domain -_net_del_proto -_net_sysctl -_netaddr_match -_netboot_iaddr -_netboot_mountroot -_netboot_root -_netboot_rootpath -_netboot_setup -_netisr -_network_flock -_new_sysctl -_new_system_shared_regions -_newsysctl_list -_nextc -_nextgennumber -_nextsect -_nextseg -_nextsegfromheader -_nextvnodeid -_nf_list -_nfiles -_nfs_adv -_nfs_async -_nfs_asyncio -_nfs_bioread -_nfs_boot_getfh -_nfs_boot_init -_nfs_buf_get -_nfs_buf_incore -_nfs_buf_iodone -_nfs_buf_iowait -_nfs_buf_page_inval -_nfs_buf_release -_nfs_buf_remfree -_nfs_buf_upl_check -_nfs_buf_upl_setup -_nfs_buf_write -_nfs_buf_write_delayed -_nfs_bufq -_nfs_clearcommit -_nfs_cltpsock -_nfs_commit -_nfs_connect -_nfs_defect -_nfs_disconnect -_nfs_doio -_nfs_dolock -_nfs_false -_nfs_flushcommits -_nfs_fsinfo -_nfs_getattrcache -_nfs_getauth -_nfs_getcookie -_nfs_getnickauth -_nfs_getreq -_nfs_hash -_nfs_inactive -_nfs_init -_nfs_invaldir -_nfs_ioddelwri -_nfs_iodmount -_nfs_iodwant -_nfs_islocked -_nfs_ispublicfh -_nfs_loadattrcache -_nfs_lock -_nfs_mount_type -_nfs_mountroot -_nfs_namei -_nfs_nbdwrite -_nfs_nbinit -_nfs_nget -_nfs_nhinit -_nfs_node_hash_lock -_nfs_numasync -_nfs_prog -_nfs_readdirplusrpc -_nfs_readdirrpc -_nfs_readlinkrpc -_nfs_readrpc -_nfs_reclaim -_nfs_removeit -_nfs_rephead -_nfs_reply -_nfs_reqq -_nfs_request -_nfs_savenickauth -_nfs_send -_nfs_sigintr -_nfs_slplock -_nfs_slpunlock -_nfs_sndlock -_nfs_sndunlock -_nfs_ticks -_nfs_timer -_nfs_timer_funnel -_nfs_true -_nfs_udpsock -_nfs_unlock -_nfs_vfsops -_nfs_vinvalbuf -_nfs_write -_nfs_writerpc -_nfs_xdrneg1 -_nfs_xidwrap -_nfsadvlock_longest -_nfsadvlocks -_nfsadvlocks_time -_nfsbufcnt -_nfsbufdelwri -_nfsbufdelwricnt -_nfsbuffree -_nfsbuffreecnt -_nfsbufhash -_nfsbufhashlock -_nfsbufhashtbl -_nfsbufmax -_nfsbufmin -_nfsclnt -_nfsd_head -_nfsd_head_flag -_nfsd_waiting -_nfslockdans -_nfslockdfd -_nfslockdfp -_nfslockdwait -_nfslockdwaiting -_nfsm_adj -_nfsm_disct -_nfsm_mbuftouio -_nfsm_reqh -_nfsm_rpchead -_nfsm_srvfattr -_nfsm_srvpostopattr -_nfsm_srvwcc -_nfsm_strtmbuf -_nfsm_uiotombuf -_nfsneedbuffer -_nfsnodehash -_nfsnodehashtbl -_nfsrtt -_nfsrtton -_nfsrv3_access -_nfsrv3_procs -_nfsrv_cleancache -_nfsrv_commit -_nfsrv_create -_nfsrv_dorec -_nfsrv_errmap -_nfsrv_fhtovp -_nfsrv_fsinfo -_nfsrv_getattr -_nfsrv_getcache -_nfsrv_init -_nfsrv_initcache -_nfsrv_link -_nfsrv_lookup -_nfsrv_mkdir -_nfsrv_mknod -_nfsrv_noop -_nfsrv_null -_nfsrv_object_create -_nfsrv_pathconf -_nfsrv_rcv -_nfsrv_read -_nfsrv_readdir -_nfsrv_readdirplus -_nfsrv_readlink -_nfsrv_remove -_nfsrv_rename -_nfsrv_rmdir -_nfsrv_setattr -_nfsrv_setcred -_nfsrv_slpderef -_nfsrv_statfs -_nfsrv_symlink -_nfsrv_updatecache -_nfsrv_wakenfsd -_nfsrv_write -_nfsrv_writegather -_nfsrvhash -_nfsrvhashtbl -_nfsrvlruhead -_nfsrvw_procrastinate -_nfsrvw_procrastinate_v3 -_nfsrvw_sort -_nfsstats -_nfssvc -_nfssvc_sockhead -_nfssvc_sockhead_flag -_nfsv2_procid -_nfsv2_type -_nfsv2_vnodeop_opv_desc -_nfsv2_vnodeop_p -_nfsv3_procid -_nfsv3_type -_ngif -_niobuf -_nkdbufs -_nke_insert -_nlinesw -_nmbclusters -_nobdev -_nocdev -_nop_abortop -_nop_access -_nop_advlock -_nop_allocate -_nop_blkatoff -_nop_blktooff -_nop_bmap -_nop_bwrite -_nop_close -_nop_cmap -_nop_copyfile -_nop_create -_nop_devblocksize -_nop_exchange -_nop_fsync -_nop_getattr -_nop_getattrlist -_nop_inactive -_nop_ioctl -_nop_islocked -_nop_lease -_nop_link -_nop_lock -_nop_mkcomplex -_nop_mkdir -_nop_mknod -_nop_mmap -_nop_offtoblk -_nop_open -_nop_pagein -_nop_pageout -_nop_pathconf -_nop_pgrd -_nop_pgwr -_nop_print -_nop_read -_nop_readdir -_nop_readdirattr -_nop_readlink -_nop_reallocblks -_nop_reclaim -_nop_remove -_nop_rename -_nop_revoke -_nop_rmdir -_nop_searchfs -_nop_seek -_nop_select -_nop_setattr -_nop_setattrlist -_nop_strategy -_nop_symlink -_nop_truncate -_nop_unlock -_nop_update -_nop_valloc -_nop_vfree -_nop_whiteout -_nop_write -_nosys -_notify_filemod_watchers -_npcbufs -_nport -_nprocs -_nqfhhash -_nqfhhashtbl -_nqnfs_callback -_nqnfs_clientd -_nqnfs_clientlease -_nqnfs_getlease -_nqnfs_lease_check -_nqnfs_piggy -_nqnfs_prog -_nqnfs_serverd -_nqnfsrv_getlease -_nqnfsrv_vacated -_nqnfsstarttime -_nqsrv_clockskew -_nqsrv_getlease -_nqsrv_maxlease -_nqsrv_writeslack -_nqtimerhead -_nselcoll -_nswap -_nswapmap -_nswdev -_nsysent -_nulldev -_nullop -_nullsys -_numcache -_numdquot -_numnfsrvcache -_numused_vfsslots -_numvnodes -_nv3tov_type -_oaccept -_obreak -_ocreat -_ofstat -_oftruncate -_ogetdirentries -_ogetdomainname -_ogetdtablesize -_ogethostid -_ogethostname -_ogetpagesize -_ogetpeername -_ogetrlimit -_ogetsockname -_okillpg -_old_if_attach -_olseek -_olstat -_open -_orecv -_orecvfrom -_orecvmsg -_osend -_osendmsg -_osetdomainname -_osethostid -_osethostname -_osetregid -_osetreuid -_osetrlimit -_osigblock -_osigsetmask -_osigstack -_osigvec -_osmmap -_ostat -_otruncate -_ovadvise -_ovbcopy -_owait -_owait3 -_packattrblk -_packcommonattr -_packdirattr -_packfileattr -_packvolattr -_parse_bsd_args -_pathconf -_pc_buffer -_pc_buflast -_pc_bufptr -_pc_bufsize -_pc_buftomem -_pc_sample_pid -_pc_trace_frameworks -_pcb_synch -_pcsample_beg -_pcsample_comm -_pcsample_enable -_pcsample_end -_pcsample_flags -_pcsamples_bootstrap -_pcsamples_clear -_pcsamples_control -_pcsamples_ops -_pcsamples_read -_pcsamples_reinit -_pfctlinput -_pfctlinput2 -_pffasttimo -_pffinddomain -_pffindproto -_pffindtype -_pfind -_pfkeystat -_pfslowtimo -_pfxlist_onlink_check -_pgdelete -_pgfind -_pgrp0 -_pgrphash -_pgrphashtbl -_pgsignal -_physio -_pid_for_task -_pidhash -_pidhashtbl -_pim6_input -_pipe -_pmtu_expire -_pmtu_probe -_postevent -_postsig -_pread -_prelist_remove -_prelist_update -_prepare_profile_database -_prf -_print_vmpage_stat -_priority_IO_timestamp_for_root -_prngAllowReseed -_prngDestroy -_prngForceReseed -_prngInitialize -_prngInput -_prngOutput -_prngProcessSeedBuffer -_prngStretch -_proc0 -_proc_exit -_proc_is_classic -_proc_name -_proc_prepareexit -_proc_reparent -_procdup -_process_terminate_self -_procinit -_profil -_prtactive -_pru_abort_notsupp -_pru_accept_notsupp -_pru_attach_notsupp -_pru_bind_notsupp -_pru_connect2_notsupp -_pru_connect_notsupp -_pru_control_notsupp -_pru_detach_notsupp -_pru_disconnect_notsupp -_pru_listen_notsupp -_pru_peeraddr_notsupp -_pru_rcvd_notsupp -_pru_rcvoob_notsupp -_pru_send_notsupp -_pru_sense_null -_pru_shutdown_notsupp -_pru_sockaddr_notsupp -_pru_sopoll_notsupp -_pru_soreceive -_pru_soreceive_notsupp -_pru_sosend -_pru_sosend_notsupp -_pseudo_inits -_psignal -_psignal_lock -_psignal_sigprof -_psignal_uthread -_psignal_vfork -_psignal_vtalarm -_psignal_xcpu -_pstats0 -_pt_setrunnable -_pthread_sigmask -_ptrace -_pty_init -_putc -_pwrite -_q_to_b -_qsync -_quotactl -_quotaoff -_quotaon -_quotastat -_random -_random_close -_random_init -_random_ioctl -_random_open -_random_read -_random_write -_raw_attach -_raw_ctlinput -_raw_detach -_raw_disconnect -_raw_init -_raw_input -_raw_usrreqs -_rawcb_list -_rawread -_rawwrite -_rc4_crypt -_rc4_init -_read -_read_random -_readlink -_readv -_realitexpire -_reassignbuf -_reboot -_receive_packet -_recvfrom -_recvmsg -_register_sockfilter -_relookup -_remove_name -_rename -_resetpriority -_resize_namecache -_revoke -_rijndaelDecrypt -_rijndaelEncrypt -_rijndaelKeyEncToDec -_rijndaelKeySched -_rijndael_blockDecrypt -_rijndael_blockEncrypt -_rijndael_cipherInit -_rijndael_makeKey -_rijndael_padDecrypt -_rijndael_padEncrypt -_rip6_ctlinput -_rip6_ctloutput -_rip6_input -_rip6_output -_rip6_recvspace -_rip6_sendspace -_rip6_usrreqs -_rip6stat -_rip_ctlinput -_rip_ctloutput -_rip_init -_rip_input -_rip_output -_rip_recvspace -_rip_sendspace -_rip_usrreqs -_ripcb -_ripcbinfo -_rl_add -_rl_init -_rl_remove -_rl_scan -_rmdir -_rn_addmask -_rn_addroute -_rn_delete -_rn_init -_rn_inithead -_rn_lookup -_rn_match -_rn_refines -_rootdev -_rootdevice -_rootfs -_rootvnode -_rootvp -_route6_input -_route_cb -_route_init -_routedomain -_rpc_auth_kerb -_rpc_auth_unix -_rpc_autherr -_rpc_call -_rpc_mismatch -_rpc_msgaccepted -_rpc_msgdenied -_rpc_reply -_rpc_vers -_rr_prefix -_rsvp_input -_rsvp_on -_rt6_flush -_rt_ifmsg -_rt_missmsg -_rt_newaddrmsg -_rt_newmaddrmsg -_rt_setgate -_rt_tables -_rtalloc -_rtalloc1 -_rtalloc_ign -_rtfree -_rtinit -_rtioctl -_rtredirect -_rtref -_rtrequest -_rtsetifa -_rtunref -_ruadd -_run_netisr -_rwuio -_sa6_any -_safedounmount -_savacctp -_sb_lock -_sb_max -_sb_notify -_sballoc -_sbappend -_sbappendaddr -_sbappendcontrol -_sbappendrecord -_sbcompress -_sbcreatecontrol -_sbdrop -_sbdroprecord -_sbflush -_sbfree -_sbinsertoob -_sblock -_sbrelease -_sbreserve -_sbrk -_sbspace -_sbtoxsockbuf -_sbunlock -_sbwait -_scanc -_scope6_addr2default -_scope6_get -_scope6_get_default -_scope6_ids -_scope6_ifattach -_scope6_set -_scope6_setdefault -_searchfs -_securelevel -_selcontinue -_select -_selprocess -_selrecord -_selthreadclear -_seltrue -_selwait -_selwakeup -_sem -_sem_close -_sem_destroy -_sem_getvalue -_sem_init -_sem_open -_sem_post -_sem_trywait -_sem_unlink -_sem_wait -_sema -_semconfig -_semctl -_semexit -_semget -_seminfo -_seminit -_semop -_semsys -_semu -_sendmsg -_sendsig -_sendto -_session0 -_sessrele -_set_blocksize -_set_bsduthreadargs -_set_cast128_subkey -_set_fsblocksize -_set_procsigmask -_set_security_token -_setattrlist -_setconf -_setegid -_seteuid -_setgid -_setgroups -_setitimer -_setlogin -_setpgid -_setpriority -_setprivexec -_setquota -_setrlimit -_setsid -_setsigvec -_setsockopt -_setthetime -_settimeofday -_setuid -_setuse -_sfilter_init -_sfilter_term -_sha1_init -_sha1_loop -_sha1_pad -_sha1_result -_shadow_map_create -_shadow_map_free -_shadow_map_read -_shadow_map_shadow_size -_shadow_map_write -_shm_open -_shm_unlink -_shmat -_shmctl -_shmdt -_shmexit -_shmfork -_shmget -_shminfo -_shminit -_shmsegs -_shmsys -_shutdown -_sig_filtops -_sig_lock_to_exit -_sig_try_locked -_sigaction -_sigacts0 -_sigaltstack -_sigcontinue -_sigexit_locked -_siginit -_signal_lock -_signal_setast -_signal_unlock -_sigpending -_sigprocmask -_sigprop -_sigreturn -_sigsuspend -_sigwait -_skpc -_sleep -_snprintf -_so_cache_hw -_so_cache_init_done -_so_cache_max_freed -_so_cache_time -_so_cache_timeouts -_so_cache_timer -_so_cache_zone -_so_gencnt -_soabort -_soaccept -_soalloc -_sobind -_socantrcvmore -_socantsendmore -_sockargs -_socket -_socket_cache_head -_socket_cache_tail -_socket_debug -_socket_zone -_socketinit -_socketops -_socketpair -_soclose -_soconnect -_soconnect2 -_socreate -_sodealloc -_sodelayed_copy -_sodisconnect -_sodropablereq -_sofree -_sogetopt -_sohasoutofband -_soisconnected -_soisconnecting -_soisdisconnected -_soisdisconnecting -_solisten -_sonewconn -_soo_close -_soo_ioctl -_soo_kqfilter -_soo_read -_soo_select -_soo_stat -_soo_write -_soopt_getm -_soopt_mcopyin -_soopt_mcopyout -_sooptcopyin -_sooptcopyout -_sopoll -_soreadable -_soreceive -_soreserve -_sorflush -_sorwakeup -_sosend -_sosendallatonce -_sosetopt -_soshutdown -_sotoxsocket -_sowakeup -_sowriteable -_sowwakeup -_spec_advlock -_spec_badop -_spec_blktooff -_spec_bmap -_spec_close -_spec_cmap -_spec_devblocksize -_spec_ebadf -_spec_fsync -_spec_ioctl -_spec_lookup -_spec_nfsv2nodeop_opv_desc -_spec_nfsv2nodeop_p -_spec_offtoblk -_spec_open -_spec_pathconf -_spec_print -_spec_read -_spec_select -_spec_strategy -_spec_vnodeop_entries -_spec_vnodeop_opv_desc -_spec_vnodeop_p -_spec_write -_spechash_slock -_speclisth -_spl0 -_splbio -_splclock -_splhigh -_splimp -_spllo -_spln -_splnet -_sploff -_splon -_splpower -_splsched -_splsoftclock -_spltty -_splvm -_splx -_srv -_ss_fltsz -_ss_fltsz_local -_sstk -_startprofclock -_stat -_statfs -_statv -_stf_attach_inet6 -_stf_detach_inet6 -_stf_ioctl -_stf_pre_output -_stf_reg_if_mods -_stf_shutdown -_stfattach -_stop -_stopprofclock -_subyte -_suibyte -_suiword -_suser -_suword -_swapmap -_swapon -_swdevt -_symlink -_sync -_synthfs_access -_synthfs_adddirentry -_synthfs_cached_lookup -_synthfs_chflags -_synthfs_chmod -_synthfs_chown -_synthfs_create -_synthfs_derive_vnode_path -_synthfs_directlink -_synthfs_fhtovp -_synthfs_getattr -_synthfs_inactive -_synthfs_init -_synthfs_islocked -_synthfs_lock -_synthfs_lookup -_synthfs_mkdir -_synthfs_mmap -_synthfs_mount -_synthfs_mount_fs -_synthfs_mount_int -_synthfs_move_rename_entry -_synthfs_new_directlink -_synthfs_new_directory -_synthfs_new_symlink -_synthfs_open -_synthfs_pathconf -_synthfs_quotactl -_synthfs_readdir -_synthfs_readlink -_synthfs_reclaim -_synthfs_remove -_synthfs_remove_directlink -_synthfs_remove_directory -_synthfs_remove_entry -_synthfs_remove_symlink -_synthfs_rename -_synthfs_rmdir -_synthfs_root -_synthfs_select -_synthfs_setattr -_synthfs_setupuio -_synthfs_start -_synthfs_statfs -_synthfs_switchroot -_synthfs_symlink -_synthfs_sync -_synthfs_sysctl -_synthfs_unlock -_synthfs_unmount -_synthfs_update -_synthfs_vfsops -_synthfs_vget -_synthfs_vnodeop_entries -_synthfs_vnodeop_opv_desc -_synthfs_vnodeop_p -_synthfs_vptofh -_syscallnames -_sysctl__children -_sysctl__debug -_sysctl__debug_bpf_bufsize -_sysctl__debug_bpf_maxbufsize -_sysctl__debug_children -_sysctl__hw -_sysctl__hw_activecpu -_sysctl__hw_busfrequency -_sysctl__hw_busfrequency_compat -_sysctl__hw_busfrequency_max -_sysctl__hw_busfrequency_min -_sysctl__hw_byteorder -_sysctl__hw_cachelinesize -_sysctl__hw_cachelinesize_compat -_sysctl__hw_children -_sysctl__hw_cpufrequency -_sysctl__hw_cpufrequency_compat -_sysctl__hw_cpufrequency_max -_sysctl__hw_cpufrequency_min -_sysctl__hw_cpusubtype -_sysctl__hw_cputype -_sysctl__hw_epoch -_sysctl__hw_l1dcachesize -_sysctl__hw_l1dcachesize_compat -_sysctl__hw_l1icachesize -_sysctl__hw_l1icachesize_compat -_sysctl__hw_l2cachesize -_sysctl__hw_l2cachesize_compat -_sysctl__hw_l2settings -_sysctl__hw_l3cachesize -_sysctl__hw_l3cachesize_compat -_sysctl__hw_l3settings -_sysctl__hw_machine -_sysctl__hw_memsize -_sysctl__hw_model -_sysctl__hw_ncpu -_sysctl__hw_optional -_sysctl__hw_optional_children -_sysctl__hw_optional_floatingpoint -_sysctl__hw_pagesize -_sysctl__hw_pagesize_compat -_sysctl__hw_physmem -_sysctl__hw_tbfrequency -_sysctl__hw_tbfrequency_compat -_sysctl__hw_usermem -_sysctl__hw_vectorunit -_sysctl__kern -_sysctl__kern_children -_sysctl__kern_dummy -_sysctl__kern_ipc -_sysctl__kern_ipc_children -_sysctl__kern_ipc_maxsockbuf -_sysctl__kern_ipc_maxsockets -_sysctl__kern_ipc_nmbclusters -_sysctl__kern_ipc_sockbuf_waste_factor -_sysctl__kern_ipc_somaxconn -_sysctl__kern_ipc_sorecvmincopy -_sysctl__kern_ipc_sosendminchain -_sysctl__kern_maxfilesperproc -_sysctl__kern_maxprocperuid -_sysctl__kern_sysv -_sysctl__kern_sysv_children -_sysctl__kern_sysv_shmall -_sysctl__kern_sysv_shmmax -_sysctl__kern_sysv_shmmin -_sysctl__kern_sysv_shmmni -_sysctl__kern_sysv_shmseg -_sysctl__machdep -_sysctl__machdep_children -_sysctl__net -_sysctl__net_children -_sysctl__net_inet -_sysctl__net_inet6 -_sysctl__net_inet6_children -_sysctl__net_inet6_icmp6 -_sysctl__net_inet6_icmp6_children -_sysctl__net_inet6_icmp6_errppslimit -_sysctl__net_inet6_icmp6_nd6_debug -_sysctl__net_inet6_icmp6_nd6_delay -_sysctl__net_inet6_icmp6_nd6_maxnudhint -_sysctl__net_inet6_icmp6_nd6_mmaxtries -_sysctl__net_inet6_icmp6_nd6_prune -_sysctl__net_inet6_icmp6_nd6_umaxtries -_sysctl__net_inet6_icmp6_nd6_useloopback -_sysctl__net_inet6_icmp6_nodeinfo -_sysctl__net_inet6_icmp6_rediraccept -_sysctl__net_inet6_icmp6_redirtimeout -_sysctl__net_inet6_icmp6_stats -_sysctl__net_inet6_ip6 -_sysctl__net_inet6_ip6_accept_rtadv -_sysctl__net_inet6_ip6_auto_flowlabel -_sysctl__net_inet6_ip6_auto_linklocal -_sysctl__net_inet6_ip6_children -_sysctl__net_inet6_ip6_dad_count -_sysctl__net_inet6_ip6_defmcasthlim -_sysctl__net_inet6_ip6_forwarding -_sysctl__net_inet6_ip6_gifhlim -_sysctl__net_inet6_ip6_hdrnestlimit -_sysctl__net_inet6_ip6_hlim -_sysctl__net_inet6_ip6_kame_version -_sysctl__net_inet6_ip6_keepfaith -_sysctl__net_inet6_ip6_log_interval -_sysctl__net_inet6_ip6_maxfragpackets -_sysctl__net_inet6_ip6_redirect -_sysctl__net_inet6_ip6_rip6stats -_sysctl__net_inet6_ip6_rr_prune -_sysctl__net_inet6_ip6_rtexpire -_sysctl__net_inet6_ip6_rtmaxcache -_sysctl__net_inet6_ip6_rtminexpire -_sysctl__net_inet6_ip6_stats -_sysctl__net_inet6_ip6_temppltime -_sysctl__net_inet6_ip6_tempvltime -_sysctl__net_inet6_ip6_use_deprecated -_sysctl__net_inet6_ip6_use_tempaddr -_sysctl__net_inet6_ip6_v6only -_sysctl__net_inet6_ipsec6 -_sysctl__net_inet6_ipsec6_ah_net_deflev -_sysctl__net_inet6_ipsec6_ah_trans_deflev -_sysctl__net_inet6_ipsec6_children -_sysctl__net_inet6_ipsec6_debug -_sysctl__net_inet6_ipsec6_def_policy -_sysctl__net_inet6_ipsec6_ecn -_sysctl__net_inet6_ipsec6_esp_net_deflev -_sysctl__net_inet6_ipsec6_esp_randpad -_sysctl__net_inet6_ipsec6_esp_trans_deflev -_sysctl__net_inet6_ipsec6_stats -_sysctl__net_inet6_tcp6 -_sysctl__net_inet6_tcp6_children -_sysctl__net_inet6_udp6 -_sysctl__net_inet6_udp6_children -_sysctl__net_inet_children -_sysctl__net_inet_div -_sysctl__net_inet_div_children -_sysctl__net_inet_icmp -_sysctl__net_inet_icmp_bmcastecho -_sysctl__net_inet_icmp_children -_sysctl__net_inet_icmp_drop_redirect -_sysctl__net_inet_icmp_icmplim -_sysctl__net_inet_icmp_log_redirect -_sysctl__net_inet_icmp_maskrepl -_sysctl__net_inet_icmp_stats -_sysctl__net_inet_igmp -_sysctl__net_inet_igmp_children -_sysctl__net_inet_igmp_stats -_sysctl__net_inet_ip -_sysctl__net_inet_ip_accept_sourceroute -_sysctl__net_inet_ip_check_interface -_sysctl__net_inet_ip_check_route_selfref -_sysctl__net_inet_ip_children -_sysctl__net_inet_ip_fastforwarding -_sysctl__net_inet_ip_forwarding -_sysctl__net_inet_ip_gifttl -_sysctl__net_inet_ip_intr_queue_drops -_sysctl__net_inet_ip_intr_queue_maxlen -_sysctl__net_inet_ip_keepfaith -_sysctl__net_inet_ip_linklocal -_sysctl__net_inet_ip_linklocal_children -_sysctl__net_inet_ip_linklocal_in -_sysctl__net_inet_ip_linklocal_in_allowbadttl -_sysctl__net_inet_ip_linklocal_in_children -_sysctl__net_inet_ip_linklocal_stat -_sysctl__net_inet_ip_maxfragpackets -_sysctl__net_inet_ip_portrange -_sysctl__net_inet_ip_portrange_children -_sysctl__net_inet_ip_portrange_first -_sysctl__net_inet_ip_portrange_hifirst -_sysctl__net_inet_ip_portrange_hilast -_sysctl__net_inet_ip_portrange_last -_sysctl__net_inet_ip_portrange_lowfirst -_sysctl__net_inet_ip_portrange_lowlast -_sysctl__net_inet_ip_redirect -_sysctl__net_inet_ip_rtexpire -_sysctl__net_inet_ip_rtmaxcache -_sysctl__net_inet_ip_rtminexpire -_sysctl__net_inet_ip_sourceroute -_sysctl__net_inet_ip_stats -_sysctl__net_inet_ip_subnets_are_local -_sysctl__net_inet_ip_ttl -_sysctl__net_inet_ip_use_route_genid -_sysctl__net_inet_ipsec -_sysctl__net_inet_ipsec_ah_cleartos -_sysctl__net_inet_ipsec_ah_net_deflev -_sysctl__net_inet_ipsec_ah_offsetmask -_sysctl__net_inet_ipsec_ah_trans_deflev -_sysctl__net_inet_ipsec_bypass -_sysctl__net_inet_ipsec_children -_sysctl__net_inet_ipsec_debug -_sysctl__net_inet_ipsec_def_policy -_sysctl__net_inet_ipsec_dfbit -_sysctl__net_inet_ipsec_ecn -_sysctl__net_inet_ipsec_esp_net_deflev -_sysctl__net_inet_ipsec_esp_port -_sysctl__net_inet_ipsec_esp_randpad -_sysctl__net_inet_ipsec_esp_trans_deflev -_sysctl__net_inet_ipsec_stats -_sysctl__net_inet_raw -_sysctl__net_inet_raw_children -_sysctl__net_inet_raw_maxdgram -_sysctl__net_inet_raw_pcblist -_sysctl__net_inet_raw_recvspace -_sysctl__net_inet_tcp -_sysctl__net_inet_tcp_always_keepalive -_sysctl__net_inet_tcp_blackhole -_sysctl__net_inet_tcp_children -_sysctl__net_inet_tcp_delacktime -_sysctl__net_inet_tcp_delayed_ack -_sysctl__net_inet_tcp_do_tcpdrain -_sysctl__net_inet_tcp_drop_synfin -_sysctl__net_inet_tcp_icmp_may_rst -_sysctl__net_inet_tcp_isn_reseed_interval -_sysctl__net_inet_tcp_keepidle -_sysctl__net_inet_tcp_keepinit -_sysctl__net_inet_tcp_keepintvl -_sysctl__net_inet_tcp_local_slowstart_flightsize -_sysctl__net_inet_tcp_log_in_vain -_sysctl__net_inet_tcp_msl -_sysctl__net_inet_tcp_mssdflt -_sysctl__net_inet_tcp_newreno -_sysctl__net_inet_tcp_path_mtu_discovery -_sysctl__net_inet_tcp_pcbcount -_sysctl__net_inet_tcp_pcblist -_sysctl__net_inet_tcp_recvspace -_sysctl__net_inet_tcp_rfc1323 -_sysctl__net_inet_tcp_rfc1644 -_sysctl__net_inet_tcp_sendspace -_sysctl__net_inet_tcp_slowlink_wsize -_sysctl__net_inet_tcp_slowstart_flightsize -_sysctl__net_inet_tcp_sockthreshold -_sysctl__net_inet_tcp_stats -_sysctl__net_inet_tcp_strict_rfc1948 -_sysctl__net_inet_tcp_tcbhashsize -_sysctl__net_inet_tcp_tcp_lq_overflow -_sysctl__net_inet_tcp_v6mssdflt -_sysctl__net_inet_udp -_sysctl__net_inet_udp_blackhole -_sysctl__net_inet_udp_checksum -_sysctl__net_inet_udp_children -_sysctl__net_inet_udp_log_in_vain -_sysctl__net_inet_udp_maxdgram -_sysctl__net_inet_udp_pcblist -_sysctl__net_inet_udp_recvspace -_sysctl__net_inet_udp_stats -_sysctl__net_key -_sysctl__net_key_ah_keymin -_sysctl__net_key_blockacq_count -_sysctl__net_key_blockacq_lifetime -_sysctl__net_key_children -_sysctl__net_key_debug -_sysctl__net_key_esp_auth -_sysctl__net_key_esp_keymin -_sysctl__net_key_int_random -_sysctl__net_key_larval_lifetime -_sysctl__net_key_natt_keepalive_interval -_sysctl__net_key_prefered_oldsa -_sysctl__net_key_spi_maxval -_sysctl__net_key_spi_minval -_sysctl__net_key_spi_trycnt -_sysctl__net_link -_sysctl__net_link_children -_sysctl__net_link_ether -_sysctl__net_link_ether_children -_sysctl__net_link_ether_inet -_sysctl__net_link_ether_inet_apple_hwcksum_rx -_sysctl__net_link_ether_inet_apple_hwcksum_tx -_sysctl__net_link_ether_inet_children -_sysctl__net_link_ether_inet_host_down_time -_sysctl__net_link_ether_inet_log_arp_wrong_iface -_sysctl__net_link_ether_inet_max_age -_sysctl__net_link_ether_inet_maxtries -_sysctl__net_link_ether_inet_proxyall -_sysctl__net_link_ether_inet_prune_intvl -_sysctl__net_link_ether_inet_useloopback -_sysctl__net_link_generic -_sysctl__net_link_generic_children -_sysctl__net_local -_sysctl__net_local_children -_sysctl__net_local_dgram -_sysctl__net_local_dgram_children -_sysctl__net_local_dgram_maxdgram -_sysctl__net_local_dgram_pcblist -_sysctl__net_local_dgram_recvspace -_sysctl__net_local_inflight -_sysctl__net_local_stream -_sysctl__net_local_stream_children -_sysctl__net_local_stream_pcblist -_sysctl__net_local_stream_recvspace -_sysctl__net_local_stream_sendspace -_sysctl__net_routetable -_sysctl__net_routetable_children -_sysctl__sysctl -_sysctl__sysctl_children -_sysctl__sysctl_debug -_sysctl__sysctl_name -_sysctl__sysctl_name2oid -_sysctl__sysctl_name_children -_sysctl__sysctl_next -_sysctl__sysctl_next_children -_sysctl__sysctl_oidfmt -_sysctl__sysctl_oidfmt_children -_sysctl__user -_sysctl__user_children -_sysctl__vfs -_sysctl__vfs_children -_sysctl__vfs_generic -_sysctl__vfs_generic_children -_sysctl__vfs_generic_ctlbyfsid -_sysctl__vfs_generic_ctlbyfsid_children -_sysctl__vfs_generic_nfs -_sysctl__vfs_generic_nfs_children -_sysctl__vfs_generic_nfs_client -_sysctl__vfs_generic_nfs_client_children -_sysctl__vfs_generic_nfs_client_initialdowndelay -_sysctl__vfs_generic_nfs_client_nextdowndelay -_sysctl__vfs_generic_vfsidlist -_sysctl__vm -_sysctl__vm_children -_sysctl_clockrate -_sysctl_doproc -_sysctl_file -_sysctl_handle_int -_sysctl_handle_int2quad -_sysctl_handle_long -_sysctl_handle_opaque -_sysctl_handle_quad -_sysctl_handle_string -_sysctl_int -_sysctl_mib_init -_sysctl_procargs -_sysctl_quad -_sysctl_rdint -_sysctl_rdquad -_sysctl_rdstring -_sysctl_rdstruct -_sysctl_register_all -_sysctl_register_fixed -_sysctl_register_oid -_sysctl_register_set -_sysctl_set -_sysctl_string -_sysctl_struct -_sysctl_unregister_oid -_sysctl_unregister_set -_sysctl_vnode -_sysctlbyname -_sysent -_systemdomain -_systemdomain_init -_tablefull -_task_for_pid -_tbeproc -_tcb -_tcbinfo -_tcp6_ctlinput -_tcp6_input -_tcp6_usrreqs -_tcp_backoff -_tcp_canceltimers -_tcp_ccgen -_tcp_close -_tcp_ctlinput -_tcp_ctloutput -_tcp_delack_enabled -_tcp_delacktime -_tcp_do_newreno -_tcp_drain -_tcp_drop -_tcp_drop_syn_sent -_tcp_fasttimo -_tcp_fillheaders -_tcp_freeq -_tcp_gettaocache -_tcp_init -_tcp_input -_tcp_keepidle -_tcp_keepinit -_tcp_keepintvl -_tcp_lq_overflow -_tcp_maketemplate -_tcp_maxidle -_tcp_maxpersistidle -_tcp_msl -_tcp_mss -_tcp_mssdflt -_tcp_mssopt -_tcp_mtudisc -_tcp_new_isn -_tcp_newtcpcb -_tcp_now -_tcp_output -_tcp_quench -_tcp_recvspace -_tcp_respond -_tcp_rtlookup -_tcp_rtlookup6 -_tcp_sendspace -_tcp_setpersist -_tcp_slowtimo -_tcp_syn_backoff -_tcp_timers -_tcp_usrreqs -_tcp_v6mssdflt -_tcpstat -_temp_msgbuf -_termioschars -_thread_flavor_array -_thread_funnel_get -_thread_funnel_merge -_thread_funnel_set -_thread_funnel_switch -_threadsignal -_tick -_time -_time_wait_slots -_time_zone_slock_init -_timeout -_timevaladd -_timevalfix -_timevalsub -_tk_cancc -_tk_nin -_tk_nout -_tk_rawcc -_to_bsd_time -_to_hfs_time -_tprintf -_tprintf_close -_tprintf_open -_tputchar -_trashMemory -_truncate -_tsleep -_tsleep0 -_tsleep1 -_ttioctl -_ttread -_ttrstrt -_ttselect -_ttsetwater -_ttspeedtab -_ttstart -_ttwakeup -_ttwrite -_ttwwakeup -_tty_pgsignal -_ttyblock -_ttychars -_ttycheckoutq -_ttyclose -_ttyflush -_ttyfree -_ttyinfo -_ttyinput -_ttylclose -_ttymalloc -_ttymodem -_ttyopen -_ttyprintf -_ttyselect -_ttysleep -_ttywait -_tvtoabstime -_tvtohz -_tz -_tz_slock -_uap -_ubc_blktooff -_ubc_clean -_ubc_clearflags -_ubc_create_upl -_ubc_getcred -_ubc_getobject -_ubc_getsize -_ubc_hold -_ubc_info_deallocate -_ubc_info_init -_ubc_info_zone -_ubc_invalidate -_ubc_isinuse -_ubc_issetflags -_ubc_offtoblk -_ubc_page_op -_ubc_pushdirty -_ubc_pushdirty_range -_ubc_range_op -_ubc_rele -_ubc_release -_ubc_release_named -_ubc_setcred -_ubc_setflags -_ubc_setpager -_ubc_setsize -_ubc_uncache -_ubc_upl_abort -_ubc_upl_abort_range -_ubc_upl_commit -_ubc_upl_commit_range -_ubc_upl_map -_ubc_upl_pageinfo -_ubc_upl_unmap -_ucsfncmp -_ucsfntrans -_udb -_udbinfo -_udp6_ctlinput -_udp6_input -_udp6_output -_udp6_recvspace -_udp6_sendspace -_udp6_usrreqs -_udp_ctlinput -_udp_in6 -_udp_init -_udp_input -_udp_ip6 -_udp_notify -_udp_recvspace -_udp_sendspace -_udp_shutdown -_udp_usrreqs -_udpstat -_ufs_access -_ufs_advlock -_ufs_bmap -_ufs_bmaparray -_ufs_check_export -_ufs_checkpath -_ufs_close -_ufs_cmap -_ufs_create -_ufs_dirbad -_ufs_dirbadentry -_ufs_dirempty -_ufs_direnter -_ufs_direnter2 -_ufs_dirremove -_ufs_dirrewrite -_ufs_getattr -_ufs_getlbns -_ufs_ihash_slock -_ufs_ihashget -_ufs_ihashinit -_ufs_ihashins -_ufs_ihashlookup -_ufs_ihashrem -_ufs_inactive -_ufs_init -_ufs_ioctl -_ufs_islocked -_ufs_kqfilt_add -_ufs_link -_ufs_lock -_ufs_lookup -_ufs_makeinode -_ufs_mkdir -_ufs_mknod -_ufs_mmap -_ufs_open -_ufs_pathconf -_ufs_print -_ufs_quotactl -_ufs_readdir -_ufs_readlink -_ufs_reclaim -_ufs_remove -_ufs_rename -_ufs_rmdir -_ufs_root -_ufs_seek -_ufs_select -_ufs_setattr -_ufs_start -_ufs_strategy -_ufs_symlink -_ufs_unlock -_ufs_vfsops -_ufs_vinit -_ufs_whiteout -_ufsfifo_close -_ufsfifo_kqfilt_add -_ufsfifo_read -_ufsfifo_write -_ufsspec_close -_ufsspec_read -_ufsspec_write -_uihash -_uihashtbl -_uiomove -_uiomove64 -_uipc_usrreqs -_umask -_unblock_procsigmask -_undelete -_unicode_to_hfs -_union_abortop -_union_access -_union_advlock -_union_allocvp -_union_blktooff -_union_bmap -_union_close -_union_cmap -_union_copyfile -_union_copyup -_union_create -_union_dircache -_union_dowhiteout -_union_freevp -_union_fsync -_union_getattr -_union_inactive -_union_init -_union_ioctl -_union_islocked -_union_lease -_union_link -_union_lock -_union_lookup -_union_mkdir -_union_mknod -_union_mkshadow -_union_mkwhiteout -_union_mmap -_union_mount -_union_newlower -_union_newsize -_union_newupper -_union_offtoblk -_union_open -_union_pagein -_union_pageout -_union_pathconf -_union_print -_union_read -_union_readdir -_union_readlink -_union_reclaim -_union_remove -_union_removed_upper -_union_rename -_union_revoke -_union_rmdir -_union_root -_union_seek -_union_select -_union_setattr -_union_start -_union_statfs -_union_strategy -_union_symlink -_union_unlock -_union_unmount -_union_updatevp -_union_vfsops -_union_vn_close -_union_vn_create -_union_vnodeop_entries -_union_vnodeop_opv_desc -_union_vnodeop_p -_union_whiteout -_union_write -_unix_syscall -_unix_syscall_return -_unlink -_unmount -_unp_connect2 -_unp_dispose -_unp_externalize -_unp_init -_unp_zone -_unputc -_unregister_sockfilter -_untimeout -_upl_get_internal_page_list -_uprintf -_ureadc -_useracc -_userland_sysctl -_utf8_decodestr -_utf8_encodelen -_utf8_encodestr -_utf8_to_hfs -_utf8_to_mac_roman -_utf_extrabytes -_utimes -_utrace -_v_putc -_va_null -_vagevp -_vattr_null -_vcount -_vfinddev -_vflush -_vfork -_vfork_exit -_vfork_return -_vfs_busy -_vfs_event_init -_vfs_event_signal -_vfs_export -_vfs_export_lookup -_vfs_getnewfsid -_vfs_getvfs -_vfs_init_io_attributes -_vfs_io_attributes -_vfs_mountedon -_vfs_mountroot -_vfs_nummntops -_vfs_op_descs -_vfs_op_init -_vfs_opv_descs -_vfs_opv_init -_vfs_opv_numops -_vfs_rootmountalloc -_vfs_sysctl -_vfs_unbusy -_vfsconf -_vfsconf_add -_vfsconf_del -_vfsinit -_vget -_vgone -_vgonel -_vhold -_vinvalbuf -_vm_initial_limit_core -_vm_initial_limit_data -_vm_initial_limit_stack -_vm_sysctl -_vn_bwrite -_vn_close -_vn_default_error -_vn_directlink -_vn_lock -_vn_mkdir -_vn_open -_vn_rdwr -_vn_stat -_vn_symlink -_vn_table -_vn_writechk -_vndevice_init -_vndevice_root_image -_vnode_free_list -_vnode_free_list_slock -_vnode_inactive_list -_vnode_objects_reclaimed -_vnode_pagein -_vnode_pageout -_vnode_pager_get_filesize -_vnode_reclaim_tried -_vnodetarget -_vnops -_volfs_access -_volfs_fhtovp -_volfs_getattr -_volfs_init -_volfs_islocked -_volfs_load -_volfs_lock -_volfs_lookup -_volfs_mount -_volfs_pathconf -_volfs_quotactl -_volfs_readdir -_volfs_reclaim -_volfs_rmdir -_volfs_root -_volfs_select -_volfs_start -_volfs_statfs -_volfs_sync -_volfs_sysctl -_volfs_unlock -_volfs_unmount -_volfs_vfsops -_volfs_vget -_volfs_vnodeop_entries -_volfs_vnodeop_opv_desc -_volfs_vnodeop_p -_volfs_vptofh -_vop_abortop_desc -_vop_abortop_vp_offsets -_vop_access_desc -_vop_access_vp_offsets -_vop_advlock_desc -_vop_advlock_vp_offsets -_vop_allocate_desc -_vop_allocate_vp_offsets -_vop_blkatoff_desc -_vop_blkatoff_vp_offsets -_vop_blktooff_desc -_vop_blktooff_vp_offsets -_vop_bmap_desc -_vop_bmap_vp_offsets -_vop_bwrite_desc -_vop_bwrite_vp_offsets -_vop_cachedlookup_desc -_vop_cachedlookup_vp_offsets -_vop_close_desc -_vop_close_vp_offsets -_vop_cmap_desc -_vop_cmap_vp_offsets -_vop_copyfile_desc -_vop_copyfile_vp_offsets -_vop_create_desc -_vop_create_vp_offsets -_vop_default_desc -_vop_devblocksize_desc -_vop_devblocksize_vp_offsets -_vop_exchange_desc -_vop_exchange_vp_offsets -_vop_fsync_desc -_vop_fsync_vp_offsets -_vop_getattr_desc -_vop_getattr_vp_offsets -_vop_getattrlist_desc -_vop_getattrlist_vp_offsets -_vop_inactive_desc -_vop_inactive_vp_offsets -_vop_ioctl_desc -_vop_ioctl_vp_offsets -_vop_islocked_desc -_vop_islocked_vp_offsets -_vop_kqfilt_add_desc -_vop_kqfilt_add_vp_offsets -_vop_kqfilt_remove_desc -_vop_kqfilt_remove_vp_offsets -_vop_lease_desc -_vop_lease_vp_offsets -_vop_link_desc -_vop_link_vp_offsets -_vop_lock_desc -_vop_lock_vp_offsets -_vop_lookup_desc -_vop_lookup_vp_offsets -_vop_mkcomplex_desc -_vop_mkcomplex_vp_offsets -_vop_mkdir_desc -_vop_mkdir_vp_offsets -_vop_mknod_desc -_vop_mknod_vp_offsets -_vop_mmap_desc -_vop_mmap_vp_offsets -_vop_noislocked -_vop_nolock -_vop_nounlock -_vop_offtoblk_desc -_vop_offtoblk_vp_offsets -_vop_open_desc -_vop_open_vp_offsets -_vop_pagein_desc -_vop_pagein_vp_offsets -_vop_pageout_desc -_vop_pageout_vp_offsets -_vop_pathconf_desc -_vop_pathconf_vp_offsets -_vop_pgrd_desc -_vop_pgrd_vp_offsets -_vop_pgwr_desc -_vop_pgwr_vp_offsets -_vop_print_desc -_vop_print_vp_offsets -_vop_read_desc -_vop_read_vp_offsets -_vop_readdir_desc -_vop_readdir_vp_offsets -_vop_readdirattr_desc -_vop_readdirattr_vp_offsets -_vop_readlink_desc -_vop_readlink_vp_offsets -_vop_reallocblks_desc -_vop_reallocblks_vp_offsets -_vop_reclaim_desc -_vop_reclaim_vp_offsets -_vop_remove_desc -_vop_remove_vp_offsets -_vop_rename_desc -_vop_rename_vp_offsets -_vop_revoke -_vop_revoke_desc -_vop_revoke_vp_offsets -_vop_rmdir_desc -_vop_rmdir_vp_offsets -_vop_searchfs_desc -_vop_searchfs_vp_offsets -_vop_seek_desc -_vop_seek_vp_offsets -_vop_select_desc -_vop_select_vp_offsets -_vop_setattr_desc -_vop_setattr_vp_offsets -_vop_setattrlist_desc -_vop_setattrlist_vp_offsets -_vop_strategy_desc -_vop_strategy_vp_offsets -_vop_symlink_desc -_vop_symlink_vp_offsets -_vop_truncate_desc -_vop_truncate_vp_offsets -_vop_unlock_desc -_vop_unlock_vp_offsets -_vop_update_desc -_vop_update_vp_offsets -_vop_valloc_desc -_vop_valloc_vp_offsets -_vop_vfree_desc -_vop_vfree_vp_offsets -_vop_whiteout_desc -_vop_whiteout_vp_offsets -_vop_write_desc -_vop_write_vp_offsets -_vp_pagein -_vp_pgoclean -_vp_pgodirty -_vprint -_vput -_vpwakeup -_vrecycle -_vref -_vrele -_vslock -_vsnprintf -_vsprintf -_vsunlock -_vttoif_tab -_vwakeup -_wait1 -_wait1continue -_wait4 -_waitevent -_waittime -_wakeup -_wakeup_one -_walk_allvnodes -_walk_vnodes_debug -_watchevent -_write -_writev -_ws_disabled -_zError -_z_errmsg -_zeroin6_addr -_zeroin_addr -_zlibVersion -_zombproc - diff --git a/config/System.kext/Info.plist b/config/System.kext/Info.plist index 3ba6f7944..b3b969ec5 100644 --- a/config/System.kext/Info.plist +++ b/config/System.kext/Info.plist @@ -5,7 +5,7 @@ CFBundleDevelopmentRegion English CFBundleGetInfoString - System Resource Pseudoextension, Apple Computer Inc, 7.7.0 + System Resource Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.kernel CFBundleInfoDictionaryVersion @@ -15,13 +15,13 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleCompatibleVersion - 7.7.0 + 7.8.0 OSBundleRequired Root OSKernelResource diff --git a/config/System.kext/PlugIns/AppleNMI.kext/Info.plist b/config/System.kext/PlugIns/AppleNMI.kext/Info.plist index 32db5a2f8..6d06d1f8b 100644 --- a/config/System.kext/PlugIns/AppleNMI.kext/Info.plist +++ b/config/System.kext/PlugIns/AppleNMI.kext/Info.plist @@ -5,7 +5,7 @@ CFBundleDevelopmentRegion English CFBundleGetInfoString - AppleNMI Pseudoextension, Apple Computer Inc, 7.7.0 + AppleNMI Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.driver.AppleNMI CFBundleInfoDictionaryVersion @@ -15,11 +15,11 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleRequired Root OSKernelResource diff --git a/config/System.kext/PlugIns/ApplePlatformFamily.kext/Info.plist b/config/System.kext/PlugIns/ApplePlatformFamily.kext/Info.plist index 456376dae..d99105ff9 100644 --- a/config/System.kext/PlugIns/ApplePlatformFamily.kext/Info.plist +++ b/config/System.kext/PlugIns/ApplePlatformFamily.kext/Info.plist @@ -5,7 +5,7 @@ CFBundleDevelopmentRegion English CFBundleGetInfoString - Apple Platform Family Pseudoextension, Apple Computer Inc, 7.7.0 + Apple Platform Family Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.iokit.ApplePlatformFamily CFBundleInfoDictionaryVersion @@ -15,11 +15,11 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleCompatibleVersion 1.0 OSBundleRequired diff --git a/config/System.kext/PlugIns/BSDKernel.kext/Info.plist b/config/System.kext/PlugIns/BSDKernel.kext/Info.plist index 46ba9476b..874a51be4 100644 --- a/config/System.kext/PlugIns/BSDKernel.kext/Info.plist +++ b/config/System.kext/PlugIns/BSDKernel.kext/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable BSDKernel CFBundleGetInfoString - BSD Kernel Pseudoextension, Apple Computer Inc, 7.7.0 + BSD Kernel Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.kpi.bsd CFBundleInfoDictionaryVersion @@ -17,11 +17,11 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleCompatibleVersion 7.0 OSBundleRequired diff --git a/config/System.kext/PlugIns/IOKit.kext/Info.plist b/config/System.kext/PlugIns/IOKit.kext/Info.plist index 578593042..117fdf01a 100644 --- a/config/System.kext/PlugIns/IOKit.kext/Info.plist +++ b/config/System.kext/PlugIns/IOKit.kext/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable IOKit CFBundleGetInfoString - I/O Kit Pseudoextension, Apple Computer Inc, 7.7.0 + I/O Kit Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.kpi.iokit CFBundleInfoDictionaryVersion @@ -17,11 +17,11 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleCompatibleVersion 7.0 OSBundleRequired diff --git a/config/System.kext/PlugIns/IONVRAMFamily.kext/Info.plist b/config/System.kext/PlugIns/IONVRAMFamily.kext/Info.plist index 06ef6d9b0..dfffe7049 100644 --- a/config/System.kext/PlugIns/IONVRAMFamily.kext/Info.plist +++ b/config/System.kext/PlugIns/IONVRAMFamily.kext/Info.plist @@ -5,7 +5,7 @@ CFBundleDevelopmentRegion English CFBundleGetInfoString - AppleNMI Pseudoextension, Apple Computer Inc, 7.7.0 + AppleNMI Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.iokit.IONVRAMFamily CFBundleInfoDictionaryVersion @@ -15,11 +15,11 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleCompatibleVersion 1.1 OSBundleRequired diff --git a/config/System.kext/PlugIns/IOSystemManagement.kext/Info.plist b/config/System.kext/PlugIns/IOSystemManagement.kext/Info.plist index 3cb75f85f..47ba05ba5 100644 --- a/config/System.kext/PlugIns/IOSystemManagement.kext/Info.plist +++ b/config/System.kext/PlugIns/IOSystemManagement.kext/Info.plist @@ -5,7 +5,7 @@ CFBundleDevelopmentRegion English CFBundleGetInfoString - System Management Pseudoextension, Apple Computer Inc, 7.7.0 + System Management Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.iokit.IOSystemManagementFamily CFBundleInfoDictionaryVersion @@ -15,11 +15,11 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleCompatibleVersion 1.0.0b1 OSBundleRequired diff --git a/config/System.kext/PlugIns/Libkern.kext/Info.plist b/config/System.kext/PlugIns/Libkern.kext/Info.plist index a48a5fcb1..2ab5de1d8 100644 --- a/config/System.kext/PlugIns/Libkern.kext/Info.plist +++ b/config/System.kext/PlugIns/Libkern.kext/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable Libkern CFBundleGetInfoString - Libkern Pseudoextension, Apple Computer Inc, 7.7.0 + Libkern Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.kpi.libkern CFBundleInfoDictionaryVersion @@ -17,11 +17,11 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleCompatibleVersion 7.0 OSBundleRequired diff --git a/config/System.kext/PlugIns/Mach.kext/Info.plist b/config/System.kext/PlugIns/Mach.kext/Info.plist index fab20c925..53517ce81 100644 --- a/config/System.kext/PlugIns/Mach.kext/Info.plist +++ b/config/System.kext/PlugIns/Mach.kext/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable Mach CFBundleGetInfoString - Mach Kernel Pseudoextension, Apple Computer Inc, 7.7.0 + Mach Kernel Pseudoextension, Apple Computer Inc, 7.8.0 CFBundleIdentifier com.apple.kpi.mach CFBundleInfoDictionaryVersion @@ -17,11 +17,11 @@ CFBundlePackageType KEXT CFBundleShortVersionString - 7.7.0 + 7.8.0 CFBundleSignature ???? CFBundleVersion - 7.7.0 + 7.8.0 OSBundleCompatibleVersion 7.0 OSBundleRequired diff --git a/iokit/KernelConfigTables.cpp b/iokit/KernelConfigTables.cpp index 014ec6af6..4ef77efee 100644 --- a/iokit/KernelConfigTables.cpp +++ b/iokit/KernelConfigTables.cpp @@ -26,15 +26,15 @@ */ const char * gIOKernelKmods = "{" -" 'com.apple.kernel' = '7.7.0';" -" 'com.apple.kpi.bsd' = '7.7.0';" -" 'com.apple.kpi.iokit' = '7.7.0';" -" 'com.apple.kpi.libkern' = '7.7.0';" -" 'com.apple.kpi.mach' = '7.7.0';" -" 'com.apple.iokit.IONVRAMFamily' = '7.7.0';" -" 'com.apple.driver.AppleNMI' = '7.7.0';" -" 'com.apple.iokit.IOSystemManagementFamily' = '7.7.0';" -" 'com.apple.iokit.ApplePlatformFamily' = '7.7.0';" +" 'com.apple.kernel' = '7.8.0';" +" 'com.apple.kpi.bsd' = '7.8.0';" +" 'com.apple.kpi.iokit' = '7.8.0';" +" 'com.apple.kpi.libkern' = '7.8.0';" +" 'com.apple.kpi.mach' = '7.8.0';" +" 'com.apple.iokit.IONVRAMFamily' = '7.8.0';" +" 'com.apple.driver.AppleNMI' = '7.8.0';" +" 'com.apple.iokit.IOSystemManagementFamily' = '7.8.0';" +" 'com.apple.iokit.ApplePlatformFamily' = '7.8.0';" " 'com.apple.kernel.6.0' = '6.9.9';" " 'com.apple.kernel.bsd' = '6.9.9';" " 'com.apple.kernel.iokit' = '6.9.9';" diff --git a/iokit/conf/version.minor b/iokit/conf/version.minor index 7f8f011eb..45a4fb75d 100644 --- a/iokit/conf/version.minor +++ b/iokit/conf/version.minor @@ -1 +1 @@ -7 +8 diff --git a/libkern/conf/version.minor b/libkern/conf/version.minor index 7f8f011eb..45a4fb75d 100644 --- a/libkern/conf/version.minor +++ b/libkern/conf/version.minor @@ -1 +1 @@ -7 +8 diff --git a/libsa/conf/version.minor b/libsa/conf/version.minor index 7f8f011eb..45a4fb75d 100644 --- a/libsa/conf/version.minor +++ b/libsa/conf/version.minor @@ -1 +1 @@ -7 +8 diff --git a/osfmk/conf/kernelversion.minor b/osfmk/conf/kernelversion.minor index 7f8f011eb..45a4fb75d 100644 --- a/osfmk/conf/kernelversion.minor +++ b/osfmk/conf/kernelversion.minor @@ -1 +1 @@ -7 +8 diff --git a/osfmk/conf/version.minor b/osfmk/conf/version.minor index 7f8f011eb..45a4fb75d 100644 --- a/osfmk/conf/version.minor +++ b/osfmk/conf/version.minor @@ -1 +1 @@ -7 +8 diff --git a/osfmk/console/panic_image.c.orig b/osfmk/console/panic_image.c.orig deleted file mode 100644 index 8933773fe..000000000 --- a/osfmk/console/panic_image.c.orig +++ /dev/null @@ -1,1953 +0,0 @@ -/* generated c file */ - -static const struct { - unsigned int pd_width; - unsigned int pd_height; - unsigned int bytes_per_pixel; /* 1: CLUT, 3:RGB, 4:RGBA */ - unsigned char image_pixel_data[0x880a]; -} panic_dialog = { - 472, 255, 1, -0xae,0x87,0xfd, 0x01,0x6c, 0x01,0x55, 0x80,0xbb,0xfd, 0x01,0x55, 0x01,0x6c, 0x06,0xfd, -0x01,0x6c, 0x01,0x55, 0x0b,0xfd, 0x01,0x41, 0x01,0x83, 0x24,0xfd, 0x01,0x83, 0x01,0x41, 0x80,0xa6,0xfd, -0x02,0x2b, 0x04,0xfd, 0x01,0x2b, 0x01,0x19, 0x30,0xfd, 0x01,0x2b, 0x01,0x00, 0x80,0xa9,0xfd, -0x01,0x55, 0x01,0x00, 0x04,0xfd, 0x01,0x19, 0x01,0x2b, 0x0a,0xfd, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, -0x01,0x2b, 0x01,0x00, 0x0b,0xfd, 0x01,0x00, 0x01,0x41, 0x24,0xfd, 0x01,0x41, 0x01,0x00, 0x12,0xfd, -0x04,0x00, 0x01,0x07, 0x80,0x8f,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x83, 0x30,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x55, 0x01,0x6c, 0x22,0xfd, -0x01,0x6c, 0x01,0x55, 0x10,0xfd, 0x01,0x41, 0x01,0x83, 0x52,0xfd, 0x01,0x55, 0x01,0x6c, 0x17,0xfd, -0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x2b, 0x01,0x00, 0x0a,0xfd, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, -0x01,0x2b, 0x01,0x00, 0x0b,0xfd, 0x01,0x00, 0x01,0x41, 0x1f,0xfd, 0x01,0x83, 0x01,0x41, 0x03,0xfd, -0x01,0x41, 0x01,0x00, 0x12,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0x41, 0x01,0x07, 0x01,0x00, 0x01,0x2b, -0x80,0x8f,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x19, 0x31,0xfd, 0x01,0x2b, -0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x22,0xfd, 0x01,0x2b, 0x01,0x00, 0x10,0xfd, 0x01,0x00, -0x01,0x41, 0x52,0xfd, 0x01,0x00, 0x01,0x2b, 0x17,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x2b, -0x01,0x00, 0x0a,0xfd, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x0b,0xfd, 0x01,0x00, -0x01,0x41, 0x1f,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x12,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x80,0x8f,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x07, -0x01,0x19, 0x01,0x00, 0x03,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x02,0x00, 0x01,0x19, -0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x55, 0x05,0x00, 0x05,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x04,0x00, -0x01,0x83, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x02,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0xfd, 0x01,0x41, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2e, -0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x04,0x00, -0x04,0xfd, 0x01,0x19, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x19, 0x03,0x00, -0x01,0x19, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x01,0x19, 0x01,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x02,0xfd, -0x01,0x19, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2e, 0x02,0x00, 0x01,0x2b, -0x01,0x83, 0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x03,0x00, 0x01,0x55, 0x02,0xfd, -0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x09,0xfd, -0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x55, 0x05,0x00, 0x07,0xfd, 0x01,0x2b, 0x02,0x00, -0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x01,0xfd, 0x02,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0x19, 0x02,0x00, 0x01,0x19, 0x06,0xfd, 0x04,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x55, 0x02,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x83, 0x06,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x01,0xfd, -0x01,0x00, 0x01,0x19, 0x02,0xfd, 0x02,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x71,0xfd, -0x01,0x19, 0x02,0x00, 0x01,0x55, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x2b, 0x01,0x83, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x83, 0x01,0x00, -0x01,0x19, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x02,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x02,0x55, -0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x07, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x06,0xfd, 0x01,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x01,0x83, -0x06,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x6c, 0x01,0x55, -0x02,0x00, 0x01,0x41, 0x01,0x83, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x02,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, 0x01,0x00, -0x02,0xfd, 0x02,0x00, 0x01,0x41, 0x0a,0xfd, 0x01,0x41, 0x07,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, -0x01,0x07, 0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0x83, -0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, -0x01,0x00, 0x01,0x83, 0x01,0x19, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, -0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x07, 0x01,0x00, 0x06,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x6c, 0x01,0x55, 0x01,0x00, 0x01,0x55, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x83, -0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x02,0x2b, 0x01,0xfd, 0x01,0x6c, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, -0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x07, 0x74,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0x41, 0x01,0x07, 0x01,0x00, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, -0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, -0x01,0x07, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x01,0x6c, 0x03,0xfd, 0x01,0x2b, -0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x00, -0x01,0x41, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x02,0x2b, -0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x06,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x04,0xfd, -0x02,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x00, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x03,0x41, 0x01,0x00, 0x01,0x55, -0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x0b,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0x41, 0x01,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, -0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, -0x01,0x00, 0x01,0x07, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x01,0x55, 0x01,0x00, 0x02,0x2b, 0x01,0xfd, -0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x06,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, 0x01,0x07, 0x01,0x00, 0x06,0xfd, 0x04,0x00, 0x01,0x2e, -0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x01,0x19, -0x01,0x00, 0x01,0xfd, 0x01,0x07, 0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x00, 0x01,0x83, -0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x41, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x75,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x05,0x00, 0x01,0x2b, 0x01,0xfd, 0x06,0x00, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, -0x06,0x00, 0x02,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, -0x01,0x6c, 0x04,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x41, -0x06,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x01,0x55, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x07,0xfd, 0x01,0x41, 0x01,0x00, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x0b,0xfd, 0x01,0x41, -0x01,0x00, 0x04,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, -0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x00, -0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0x19, 0x02,0x2b, 0x01,0x19, -0x01,0x00, 0x01,0x83, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x06,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x2b, 0x01,0x2e, -0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x75,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x05,0xfd, 0x01,0x2b, -0x01,0x00, 0x05,0xfd, 0x01,0x07, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, -0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x08,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x07, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x41, 0x07,0xfd, 0x01,0x00, -0x02,0x2b, 0x01,0x07, 0x02,0xfd, 0x02,0x2b, 0x03,0xfd, 0x02,0x2b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x07,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x6c, 0x04,0xfd, 0x02,0x2b, 0x01,0x87, 0x01,0x82, 0x01,0x7d, 0x02,0x2b, 0x01,0x74, -0x01,0x26, 0x01,0x00, 0x01,0x6e, 0x01,0x6d, 0x01,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, -0x01,0x2b, 0x01,0x6f, 0x01,0x71, 0x01,0x00, 0x01,0x2c, 0x01,0x7a, 0x01,0x7d, 0x01,0x58, 0x01,0x00, -0x01,0x5f, 0x01,0x8b, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x0b,0xfd, 0x01,0x41, -0x01,0x00, 0x04,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x07, 0x01,0x00, -0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2e, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x02,0x2b, 0x01,0x00, -0x01,0x55, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x0a,0xfd, 0x01,0x00, 0x01,0x41, 0x04,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, -0x01,0x07, 0x01,0x00, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x2b, 0x01,0x07, 0x01,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x75,0xfd, 0x01,0x00, 0x01,0x2b, 0x04,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0xfd, 0x01,0x07, -0x02,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x07, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, -0x02,0xfd, 0x01,0x2e, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x19, 0x02,0x00, -0x06,0xfd, 0x02,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, 0x01,0xfd, -0x01,0x6c, 0x01,0x41, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, 0x01,0x00, -0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x2e, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x07, 0x07,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0x6c, 0x02,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x08,0xfd, 0x02,0x00, 0x01,0x56, 0x01,0x7a, 0x01,0x15, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x22, -0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, -0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x02,0x00, 0x01,0x47, 0x01,0x59, 0x02,0x00, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0x64, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x02,0x00, -0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0xfd, 0x01,0x55, 0x01,0x6c, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x41, 0x01,0x2b, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x19, 0x02,0x00, -0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x19, -0x02,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x06,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, 0x06,0xfd, -0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x6c, 0x02,0x00, 0x01,0x6c, 0x02,0xfd, 0x02,0x00, -0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x01,0x55, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x75,0xfd, 0x01,0x00, -0x01,0x2b, 0x04,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x55, 0x02,0x00, 0x02,0x2b, -0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x07, -0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x41, 0x04,0x00, 0x02,0xfd, 0x01,0x19, 0x02,0x00, 0x02,0x2b, -0x01,0x00, 0x06,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, -0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x04,0xfd, 0x01,0x41, 0x04,0x00, 0x01,0xfd, 0x01,0x6c, 0x03,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x02,0x00, 0x02,0x2b, -0x01,0x00, 0x01,0x55, 0x01,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x19, 0x02,0x00, 0x06,0xfd, 0x01,0x83, -0x01,0x00, 0x01,0x2b, 0x04,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, -0x01,0x55, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x8b, 0x01,0x82, -0x01,0x79, 0x01,0x70, 0x01,0x59, 0x04,0x00, 0x02,0xfb, 0x01,0x03, 0x03,0x00, 0x01,0x03, 0x02,0xfb, -0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x03,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x03, 0x02,0x00, 0x01,0x03, 0x01,0x00, -0x01,0x2b, 0x01,0x70, 0x01,0x79, 0x01,0x44, 0x02,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x6c, 0x04,0x00, -0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x41, -0x01,0x00, 0x04,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x02,0x00, 0x02,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x2e, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x07,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x41, 0x04,0x00, 0x06,0xfd, 0x01,0x00, -0x01,0x41, 0x05,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x2e, -0x02,0xfd, 0x02,0x00, 0x03,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x2b, -0x01,0x00, 0x80,0xf2,0xfd, 0x01,0x00, 0x01,0x41, 0x15,0xfd, 0x01,0x8b, 0x01,0x84, 0x01,0x7a, -0x01,0x6f, 0x1f,0xfb, 0x01,0x00, 0x01,0x22, 0x10,0xfb, 0x01,0x6f, 0x01,0x7a, 0x01,0x84, 0x01,0x8b, -0x81,0x87,0xfd, 0x01,0x19, 0x01,0x00, 0x13,0xfd, 0x01,0x8b, 0x01,0x80, 0x01,0x75, 0x23,0xfb, -0x01,0x00, 0x01,0x22, 0x14,0xfb, 0x01,0x75, 0x01,0x80, 0x01,0x8b, 0x81,0x84,0xfd, 0x01,0x2e, -0x01,0x41, 0x10,0xfd, 0x01,0x8b, 0x01,0x81, 0x01,0x75, 0x26,0xfb, 0x01,0x2b, 0x01,0x47, 0x17,0xfb, -0x01,0x75, 0x01,0x81, 0x01,0x8b, 0x81,0x91,0xfd, 0x01,0x86, 0x01,0x79, 0x45,0xfb, 0x01,0x79, -0x01,0x86, 0x81,0x8c,0xfd, 0x01,0x8b, 0x01,0x80, 0x01,0x72, 0x49,0xfb, 0x01,0x72, 0x01,0x80, -0x01,0x8b, 0x80,0xfe,0xfd, 0x01,0x55, 0x01,0x6c, 0x2e,0xfd, 0x01,0x55, 0x01,0x41, 0x3b,0xfd, -0x01,0x41, 0x01,0x83, 0x1a,0xfd, 0x01,0x8b, 0x01,0xfc, 0x01,0x6d, 0x12,0xfb, 0x01,0x22, 0x01,0x59, -0x39,0xfb, 0x01,0x6d, 0x01,0xfc, 0x01,0x8b, 0x0c,0xfd, 0x01,0x83, 0x01,0x41, 0x42,0xfd, 0x01,0x6c, -0x01,0x55, 0x80,0xaa,0xfd, 0x01,0x00, 0x01,0x2b, 0x2d,0xfd, 0x03,0x00, 0x01,0x2b, 0x3a,0xfd, -0x01,0x00, 0x01,0x41, 0x18,0xfd, 0x01,0x8b, 0x01,0x7b, 0x15,0xfb, 0x01,0x00, 0x01,0x22, 0x3c,0xfb, -0x01,0x7b, 0x01,0x8b, 0x0a,0xfd, 0x01,0x41, 0x01,0x00, 0x12,0xfd, 0x04,0x00, 0x01,0x2e, 0x2b,0xfd, -0x01,0x2b, 0x01,0x00, 0x80,0xaa,0xfd, 0x01,0x00, 0x01,0x2b, 0x0e,0xfd, 0x01,0x6c, 0x01,0x55, -0x03,0xfd, 0x01,0x55, 0x01,0x6c, 0x17,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x83, 0x3c,0xfd, 0x01,0x00, -0x01,0x41, 0x16,0xfd, 0x01,0x8b, 0x01,0x7c, 0x17,0xfb, 0x01,0x00, 0x01,0x22, 0x3e,0xfb, 0x01,0x7c, -0x01,0x8b, 0x03,0xfd, 0x01,0x83, 0x01,0x41, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x12,0xfd, 0x01,0x00, -0x01,0x07, 0x01,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x10,0xfd, 0x01,0x55, 0x01,0x6c, 0x0f,0xfd, -0x01,0x6c, 0x01,0x55, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x0e,0xfd, 0x01,0x83, 0x01,0x41, 0x03,0xfd, -0x01,0x83, 0x01,0x41, 0x80,0x95,0xfd, 0x01,0x00, 0x01,0x2b, 0x0e,0xfd, 0x01,0x2b, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x17,0xfd, 0x01,0x41, 0x01,0x00, 0x3d,0xfd, 0x01,0x00, 0x01,0x41, -0x14,0xfd, 0x01,0x8b, 0x01,0x7d, 0x19,0xfb, 0x01,0x00, 0x01,0x22, 0x40,0xfb, 0x01,0x7d, 0x01,0x8b, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x12,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x10,0xfd, 0x01,0x00, 0x01,0x2b, 0x0f,0xfd, 0x01,0x2b, 0x01,0x00, -0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x0e,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, -0x80,0x95,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x03,0x00, 0x02,0x2b, 0x03,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x55, -0x05,0xfd, 0x01,0x41, 0x04,0x00, 0x01,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0x00, 0x05,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x83, 0x03,0x00, -0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2e, 0x01,0x00, 0x01,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0x6c, -0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x83, 0x01,0x2b, 0x02,0x00, -0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x8b, 0x01,0x81, 0x01,0x14, -0x03,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x59, 0x04,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x00, 0x02,0x2b, -0x02,0x00, 0x01,0x36, 0x03,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x22, 0x01,0xfb, -0x01,0x36, 0x03,0x00, 0x01,0x03, 0x06,0xfb, 0x01,0x59, 0x04,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x00, -0x01,0x2b, 0x02,0x00, 0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x12, 0x03,0x00, 0x01,0x59, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0xfb, 0x01,0x59, 0x03,0x00, 0x01,0x03, 0x02,0xfb, 0x01,0x36, -0x03,0x00, 0x01,0x03, 0x02,0xfb, 0x01,0x2b, 0x03,0x00, 0x04,0xfb, 0x01,0x70, 0x01,0x81, 0x04,0x00, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x02,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x19, 0x03,0x00, -0x01,0x83, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x03,0x00, -0x01,0x41, 0x01,0xfd, 0x04,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0x41, -0x03,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x04,0x00, 0x01,0xfd, 0x04,0x00, -0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x02,0x00, -0x01,0x19, 0x80,0x84,0xfd, 0x02,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x2e, 0x01,0x00, 0x01,0x6c, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x02,0x00, 0x01,0x07, 0x01,0xfd, 0x02,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x41, 0x06,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x6c, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x00, 0x01,0x19, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x07, 0x02,0xfd, 0x01,0x6c, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x07, 0x02,0xfd, -0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x6c, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0x83, 0x01,0x00, 0x01,0x0e, 0x01,0x75, 0x01,0x22, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x47, 0x01,0xfb, 0x02,0x00, 0x02,0x59, 0x02,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x2b, -0x01,0xfb, 0x02,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x47, 0x01,0x59, 0x01,0x2b, 0x01,0x00, -0x01,0x22, 0x01,0xfb, 0x02,0x00, 0x02,0xfb, 0x01,0x47, 0x06,0xfb, 0x02,0x00, 0x02,0x59, 0x02,0x00, -0x02,0xfb, 0x02,0x00, 0x01,0x22, 0x06,0xfb, 0x01,0x22, 0x02,0x00, 0x01,0x47, 0x01,0x59, 0x02,0x00, -0x02,0xfb, 0x02,0x00, 0x01,0x47, 0x02,0xfb, 0x02,0x00, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x47, -0x01,0xfb, 0x02,0x00, 0x02,0xfb, 0x01,0x47, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x47, 0x01,0xfb, -0x01,0x47, 0x06,0xfb, 0x01,0x28, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x6c, 0x01,0x55, -0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x06,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0x2e, 0x02,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2e, 0x01,0x83, 0x01,0xfd, 0x02,0x00, 0x02,0xfd, 0x02,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x83, -0x01,0x6c, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, -0x01,0x83, 0x01,0x07, 0x01,0x00, 0x80,0x84,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, -0x01,0x07, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2e, -0x03,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x41, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x41, -0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x19, 0x01,0x83, 0x03,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0x41, 0x01,0x3a, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x02,0x00, 0x04,0xfb, 0x01,0x47, -0x01,0x00, 0x01,0x47, 0x02,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x03, 0x03,0xfb, 0x01,0x00, 0x01,0x22, -0x01,0xfb, 0x02,0x00, 0x01,0x12, 0x07,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x47, 0x02,0xfb, 0x01,0x47, -0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, -0x01,0x12, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x12, 0x02,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x12, -0x02,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x02,0x00, 0x01,0x12, 0x03,0xfb, 0x01,0x47, 0x01,0x00, -0x01,0x2b, 0x01,0x47, 0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0xfc, 0x01,0x8b, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, -0x01,0x07, 0x01,0x00, 0x06,0xfd, 0x04,0x00, 0x03,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x41, -0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2e, 0x04,0xfd, 0x01,0x00, 0x01,0x2b, -0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, -0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x80,0x84,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x00, -0x01,0x2b, 0x07,0xfd, 0x01,0x83, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x05,0x00, -0x01,0x19, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0xfd, 0x02,0x2b, 0x01,0xfd, 0x01,0x41, 0x05,0x00, -0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x06,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x19, 0x02,0xfd, 0x05,0x00, -0x01,0x2b, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x04,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x01,0x00, -0x01,0x22, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, -0x01,0x22, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x2b, 0x02,0x00, 0x01,0x36, -0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, -0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x02,0xfb, 0x01,0x22, 0x05,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x59, 0x01,0x2b, 0x02,0x00, 0x01,0x36, -0x02,0xfb, 0x01,0x22, 0x02,0x00, 0x01,0x2b, 0x06,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0xfb, 0x01,0x72, -0x01,0x85, 0x01,0x3f, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x06,0x00, 0x06,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0x83, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x19, -0x01,0xfd, 0x01,0x83, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, -0x01,0x07, 0x04,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, -0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x80,0x84,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x19, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2e, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x09,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2e, 0x01,0x00, 0x01,0x6c, -0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x08,0xfd, 0x01,0x07, -0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x01, 0x05,0xfb, 0x02,0x00, 0x04,0xfb, 0x01,0x47, -0x01,0x00, 0x01,0x47, 0x02,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x12, 0x03,0xfb, 0x01,0x00, 0x01,0x22, -0x03,0xfb, 0x01,0x59, 0x02,0x00, 0x05,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x47, 0x02,0xfb, 0x01,0x47, -0x01,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, -0x01,0x03, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x36, -0x07,0xfb, 0x01,0x59, 0x02,0x00, 0x04,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x2b, 0x05,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x2f, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, -0x01,0x00, 0x0a,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x07,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, -0x02,0x2b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, -0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x80,0x84,0xfd, -0x02,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x07, 0x01,0x00, -0x01,0x83, 0x01,0x41, 0x02,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x02,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x41, 0x01,0x6c, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x01,0x55, -0x02,0xfd, 0x03,0x00, 0x03,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x01,0x55, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x02,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x02,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x6c, 0x01,0x88, -0x01,0x2b, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, -0x01,0x2b, 0x01,0xfb, 0x01,0x47, 0x01,0x36, 0x01,0xfb, 0x02,0x00, 0x02,0x59, 0x02,0x00, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x59, 0x01,0x47, -0x02,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x47, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x06,0xfb, -0x02,0x00, 0x02,0x59, 0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, 0x01,0x00, -0x01,0x2b, 0x01,0x59, 0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x03,0xfb, -0x02,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x47, 0x01,0x36, 0x01,0xfb, 0x01,0x22, 0x01,0x47, 0x01,0xfb, -0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x47, 0x01,0x22, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x03, -0x05,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x88, 0x02,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, 0x06,0xfd, -0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, -0x01,0x6c, 0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x02,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0x6c, 0x02,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x03,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x19, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0x6c, -0x02,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x55, 0x01,0x00, -0x01,0x55, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x2b, -0x80,0x80,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x83, 0x03,0x00, -0x01,0x2e, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x02,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x83, -0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x02,0xfd, 0x01,0x2e, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x83, -0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x55, 0x02,0x00, -0x01,0x2b, 0x01,0x19, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x2e, -0x03,0x00, 0x01,0x15, 0x01,0x81, 0x02,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x12, -0x03,0x00, 0x01,0x12, 0x01,0xfb, 0x01,0x59, 0x04,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x59, 0x03,0x00, 0x01,0x12, 0x01,0x00, 0x01,0x22, -0x01,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x36, 0x06,0xfb, 0x01,0x59, 0x04,0x00, 0x01,0x59, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x03,0xfb, -0x01,0x00, 0x01,0x22, 0x03,0xfb, 0x01,0x59, 0x01,0x2b, 0x03,0x00, 0x01,0x12, 0x01,0xfb, 0x01,0x2b, -0x03,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x47, 0x03,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x2b, 0x02,0x00, -0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0xfb, 0x01,0x81, 0x01,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, -0x01,0x41, 0x04,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x07, -0x01,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, -0x02,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x41, 0x01,0x83, 0x03,0x00, 0x01,0x2e, 0x02,0x00, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x2b, 0x02,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, -0x01,0x55, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x80,0xf7,0xfd, 0x01,0x8b, 0x01,0x7b, 0x44,0xfb, 0x01,0x22, 0x01,0x00, 0x2d,0xfb, -0x01,0x7b, 0x01,0x8b, 0x81,0x60,0xfd, 0x01,0x8b, 0x01,0x75, 0x45,0xfb, 0x01,0x22, 0x01,0x00, -0x2e,0xfb, 0x01,0x75, 0x01,0x8b, 0x81,0x5e,0xfd, 0x01,0x86, 0x01,0x70, 0x46,0xfb, 0x01,0x47, -0x01,0x2b, 0x2f,0xfb, 0x01,0x70, 0x01,0x86, 0x81,0x5c,0xfd, 0x01,0x82, 0x7b,0xfb, 0x01,0x82, -0x81,0x5a,0xfd, 0x01,0x7f, 0x7d,0xfb, 0x01,0x7f, 0x81,0x58,0xfd, 0x01,0x7d, 0x3d,0xfb, -0x01,0x82, 0x04,0xfd, 0x01,0x82, 0x3c,0xfb, 0x01,0x7d, 0x81,0x55,0xfd, 0x01,0x8b, 0x01,0x7c, -0x3d,0xfb, 0x08,0xfd, 0x3c,0xfb, 0x01,0x7c, 0x01,0x8b, 0x81,0x52,0xfd, 0x01,0x8b, 0x01,0x7b, -0x3d,0xfb, 0x0a,0xfd, 0x3c,0xfb, 0x01,0x7b, 0x01,0x8b, 0x81,0x50,0xfd, 0x01,0x8b, 0x01,0x7b, -0x3d,0xfb, 0x01,0x7e, 0x0a,0xfd, 0x01,0x7e, 0x3c,0xfb, 0x01,0x7b, 0x01,0x8b, 0x81,0x4f,0xfd, -0x01,0x7c, 0x3e,0xfb, 0x0c,0xfd, 0x3d,0xfb, 0x01,0x7c, 0x81,0x4e,0xfd, 0x01,0x7d, 0x3f,0xfb, -0x0c,0xfd, 0x3e,0xfb, 0x01,0x7d, 0x81,0x4c,0xfd, 0x01,0x7f, 0x40,0xfb, 0x0c,0xfd, 0x3f,0xfb, -0x01,0x7f, 0x81,0x4a,0xfd, 0x01,0x82, 0x41,0xfb, 0x0c,0xfd, 0x40,0xfb, 0x01,0x82, 0x81,0x48,0xfd, -0x01,0x86, 0x42,0xfb, 0x0c,0xfd, 0x41,0xfb, 0x01,0x86, 0x81,0x46,0xfd, 0x01,0x8b, 0x01,0x70, -0x42,0xfb, 0x0c,0xfd, 0x41,0xfb, 0x01,0x70, 0x01,0x8b, 0x81,0x44,0xfd, 0x01,0x8b, 0x01,0x75, -0x43,0xfb, 0x0c,0xfd, 0x42,0xfb, 0x01,0x75, 0x01,0x8b, 0x81,0x43,0xfd, 0x01,0x7b, 0x44,0xfb, -0x0c,0xfd, 0x43,0xfb, 0x01,0x7b, 0x81,0x42,0xfd, 0x01,0x81, 0x45,0xfb, 0x0c,0xfd, 0x44,0xfb, -0x01,0x81, 0x81,0x40,0xfd, 0x01,0x88, 0x46,0xfb, 0x0c,0xfd, 0x45,0xfb, 0x01,0x88, 0x81,0x3e,0xfd, -0x01,0x8b, 0x01,0x74, 0x46,0xfb, 0x0c,0xfd, 0x45,0xfb, 0x01,0x74, 0x01,0x8b, 0x80,0xf2,0xfd, -0x01,0x83, 0x01,0x41, 0x02,0xfd, 0x01,0x6c, 0x01,0x55, 0x26,0xfd, 0x01,0x55, 0x01,0x6c, 0x05,0xfd, -0x01,0x41, 0x01,0x83, 0x16,0xfd, 0x01,0xfc, 0x47,0xfb, 0x08,0xfd, 0x01,0x83, 0x01,0x41, 0x02,0xfd, -0x46,0xfb, 0x01,0xfc, 0x33,0xfd, 0x01,0x6c, 0x01,0x55, 0x29,0xfd, 0x01,0x41, 0x01,0x83, 0x76,0xfd, -0x01,0x07, 0x01,0x2b, 0x05,0xfd, 0x01,0x00, 0x01,0x83, 0x10,0xfd, 0x01,0x00, 0x01,0x55, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x26,0xfd, 0x01,0x00, 0x01,0x2b, 0x04,0xfd, -0x02,0x2b, 0x16,0xfd, 0x01,0x85, 0x48,0xfb, 0x08,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x03, -0x01,0x2b, 0x33,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x04,0xfb, 0x01,0x2b, 0x01,0x00, 0x09,0xfb, -0x01,0x0d, 0x01,0x2b, 0x31,0xfd, 0x01,0x2b, 0x01,0x00, 0x29,0xfd, 0x01,0x00, 0x01,0x41, 0x76,0xfd, -0x01,0x2e, 0x01,0x00, 0x01,0x83, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x11,0xfd, 0x01,0x2b, 0x01,0x6c, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x26,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x55, 0x01,0x2b, 0x16,0xfd, 0x01,0x8b, 0x01,0x72, 0x29,0xfb, 0x01,0x47, 0x01,0x36, -0x1d,0xfb, 0x08,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x22, 0x01,0x03, 0x11,0xfb, 0x01,0x47, -0x01,0x36, 0x20,0xfb, 0x02,0x00, 0x01,0x03, 0x03,0xfb, 0x01,0x47, 0x02,0x00, 0x09,0xfb, 0x01,0x27, -0x01,0x12, 0x0a,0xfd, 0x01,0x6c, 0x01,0x55, 0x25,0xfd, 0x01,0x2b, 0x01,0x00, 0x0d,0xfd, 0x01,0x6c, -0x01,0x55, 0x1a,0xfd, 0x01,0x00, 0x01,0x41, 0x77,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x2b, -0x01,0x07, 0x14,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x26,0xfd, 0x01,0x00, -0x01,0x2b, 0x1b,0xfd, 0x01,0xfc, 0x2a,0xfb, 0x01,0x2b, 0x01,0x00, 0x1d,0xfb, 0x08,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x13,0xfb, 0x01,0x2b, 0x01,0x00, 0x20,0xfb, 0x03,0x00, 0x03,0xfb, 0x01,0x2b, -0x02,0x00, 0x0a,0xfb, 0x01,0xfc, 0x0a,0xfd, 0x01,0x2b, 0x01,0x00, 0x25,0xfd, 0x01,0x2b, 0x01,0x00, -0x0d,0xfd, 0x01,0x2b, 0x01,0x00, 0x1a,0xfd, 0x01,0x00, 0x01,0x41, 0x77,0xfd, 0x01,0x2b, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x19, 0x02,0xfd, -0x06,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x55, 0x03,0x00, -0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0x19, 0x02,0x00, 0x01,0x19, -0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x19, 0x01,0x88, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, -0x01,0x00, 0x02,0x22, 0x01,0x00, 0x01,0x03, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x36, 0x03,0x00, -0x01,0x36, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x04,0xfb, 0x01,0x12, 0x01,0x00, 0x01,0x59, -0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x36, 0x01,0xfb, -0x01,0x22, 0x03,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x02,0x8b, 0x01,0x13, -0x03,0x00, 0x01,0x59, 0x06,0xfb, 0x01,0x36, 0x03,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0xf7, -0x02,0x00, 0x01,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfb, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x13, -0x01,0x8b, 0x01,0x3c, 0x03,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x59, 0x03,0x00, 0x01,0x03, 0x02,0xfb, -0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x03, -0x01,0x00, 0x01,0x2b, 0x09,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x47, 0x02,0xfb, 0x01,0x00, -0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x12, 0x03,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0x88, 0x01,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x03,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x19, -0x02,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x05,0x00, -0x01,0x41, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x19, 0x05,0xfd, -0x01,0x41, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x02,0xfd, -0x01,0x00, 0x01,0x2e, 0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x55, 0x6c,0xfd, -0x01,0x2e, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2e, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x04,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, 0x02,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x19, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, 0x01,0x00, -0x02,0xfd, 0x02,0x00, 0x01,0x07, 0x01,0xfd, 0x02,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x07, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x75, 0x01,0xfb, 0x01,0x2b, -0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0x59, 0x01,0xfb, 0x01,0x59, -0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x22, 0x06,0xfb, -0x01,0x00, 0x01,0x03, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x47, -0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x02,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x05,0xfb, -0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x02,0x00, -0x01,0x6c, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x2b, 0x01,0xfb, 0x02,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x63, -0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x85, 0x02,0x00, -0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, -0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0x59, 0x0a,0xfb, 0x01,0x00, 0x01,0x22, -0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x02,0x36, -0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x75, 0x01,0x8b, -0x02,0x00, 0x01,0x07, 0x01,0xfd, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, -0x01,0x83, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x83, 0x01,0x00, 0x01,0x19, -0x05,0xfd, 0x02,0x00, 0x01,0x83, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x6c, -0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x02,0xfd, 0x02,0x00, 0x01,0x41, 0x01,0x83, -0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, 0x01,0x00, -0x6d,0xfd, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0x41, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x41, 0x01,0x00, 0x01,0x07, 0x03,0xfd, 0x01,0x83, -0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x41, -0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x02,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, -0x01,0x00, 0x03,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, -0x01,0x00, 0x03,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x03, 0x01,0x00, 0x03,0x22, -0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x03, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x7a, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0x41, 0x01,0x07, 0x01,0x00, 0x05,0xfb, 0x01,0x03, 0x01,0x00, 0x03,0xfb, 0x01,0x03, -0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, -0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x19, 0x02,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x59, 0x0b,0xfb, -0x01,0x00, 0x01,0x22, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x02,0x2b, 0x01,0x22, 0x01,0x00, 0x06,0xfb, -0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x81, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x2e, 0x02,0x41, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x41, 0x01,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0x83, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x06,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x6c, 0x05,0xfd, 0x01,0x00, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x19, 0x01,0x00, 0x03,0x41, 0x01,0x00, 0x01,0x55, 0x6c,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x83, -0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x06,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x19, 0x03,0xfd, 0x02,0x00, 0x08,0xfd, 0x01,0x00, -0x01,0x2b, 0x03,0xfd, 0x05,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x04,0x00, 0x02,0xfb, -0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x05,0x00, 0x01,0x36, -0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x47, 0x01,0x12, 0x01,0x00, -0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0x82, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x06,0x00, 0x01,0x87, 0x04,0xfb, 0x01,0x2b, -0x01,0x00, 0x03,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x3e, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, -0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x35, 0x04,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x0c,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0x47, -0x01,0x00, 0x01,0x36, 0x01,0x00, 0x01,0x47, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x47, 0x04,0x00, -0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x70, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x19, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x05,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x04,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, -0x05,0x00, 0x01,0x55, 0x6c,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, -0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x55, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x08,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x00, 0x01,0x07, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x30, -0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x03, -0x01,0x00, 0x06,0xfb, 0x01,0x00, 0x01,0x2b, 0x08,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x03, -0x02,0xfb, 0x01,0x00, 0x01,0x03, 0x03,0xfb, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x70, 0x03,0xfb, -0x01,0x03, 0x01,0x00, 0x03,0xfb, 0x01,0x03, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x3e, 0x02,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x4a, 0x01,0x00, -0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x8b, 0x01,0x7e, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x01,0x12, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x0c,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, -0x03,0x00, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, -0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x05,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x06,0xfd, -0x01,0x19, 0x01,0x00, 0x01,0x55, 0x08,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x05,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x72,0xfd, 0x02,0x00, -0x01,0x19, 0x03,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, -0x01,0x07, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, -0x01,0x6c, 0x01,0x55, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x09,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0xfd, 0x01,0x19, -0x01,0x00, 0x01,0x6c, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, -0x01,0x2b, 0x01,0x83, 0x01,0xfd, 0x01,0x55, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, -0x01,0x74, 0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x59, 0x02,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x36, 0x01,0x47, 0x01,0xfb, -0x01,0x00, 0x01,0x2b, 0x08,0xfb, 0x01,0x2b, 0x02,0x00, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x47, -0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x01,0x87, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, 0x01,0xfd, -0x01,0x7e, 0x03,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x00, 0x01,0x3e, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x02,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0xfb, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0xfd, -0x01,0x07, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x01,0x48, -0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x01,0x22, 0x02,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, -0x04,0xfb, 0x01,0x2b, 0x01,0x22, 0x06,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x03, 0x01,0x00, -0x01,0x03, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x03, -0x01,0x00, 0x01,0x12, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, -0x01,0xfd, 0x01,0x6c, 0x01,0x55, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0xfd, 0x01,0x19, -0x01,0x00, 0x01,0x2e, 0x09,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, -0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x05,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0xfd, 0x01,0x07, -0x02,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0xfd, -0x01,0x55, 0x01,0x6c, 0x6d,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x04,0xfd, 0x01,0x41, 0x04,0x00, -0x02,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x19, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, -0x03,0x00, 0x01,0x2e, 0x01,0xfd, 0x06,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x04,0xfd, 0x01,0x07, -0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x6c, 0x04,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x12, 0x02,0x00, 0x01,0xfb, -0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x01,0x47, 0x04,0x00, 0x01,0x47, -0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x08,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x04,0xfb, 0x01,0x2b, -0x03,0x00, 0x01,0x36, 0x01,0x8b, 0x01,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, -0x01,0x2b, 0x04,0xfd, 0x01,0x41, 0x04,0x00, 0x01,0xfd, 0x01,0x7e, 0x04,0xfb, 0x01,0x36, 0x03,0x00, -0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x3e, 0x03,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x07, 0x01,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0xfb, 0x01,0x7e, 0x01,0x2b, 0x02,0x00, 0x01,0x2e, 0x02,0x00, 0x01,0xfd, 0x01,0x83, 0x02,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x01,0x8b, 0x01,0x59, 0x03,0x00, -0x01,0x12, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x06,0xfb, -0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0x59, 0x01,0xfb, 0x01,0x22, 0x01,0x00, -0x02,0xfb, 0x01,0x03, 0x02,0x00, 0x02,0x2b, 0x01,0x00, 0x01,0x36, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x07, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, 0x06,0x00, 0x01,0x41, -0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2e, 0x02,0x00, 0x05,0xfd, -0x01,0x83, 0x02,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x55, -0x02,0x00, 0x02,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x6c, 0x80,0xca,0xfd, -0x01,0x8b, 0x2c,0xfb, 0x01,0x8b, 0x13,0xfd, 0x01,0x7e, 0x0d,0xfb, 0x0c,0xfd, 0x0b,0xfb, 0x01,0x7e, -0x13,0xfd, 0x01,0x8b, 0x2d,0xfb, 0x01,0x8b, 0x81,0x2f,0xfd, 0x01,0x7b, 0x2b,0xfb, 0x01,0x8b, -0x14,0xfd, 0x01,0x78, 0x0d,0xfb, 0x0c,0xfd, 0x0b,0xfb, 0x01,0x78, 0x14,0xfd, 0x01,0x8b, 0x2c,0xfb, -0x01,0x7b, 0x81,0x2e,0xfd, 0x01,0x8b, 0x2b,0xfb, 0x01,0x8b, 0x15,0xfd, 0x0e,0xfb, 0x0c,0xfd, -0x0c,0xfb, 0x15,0xfd, 0x01,0x8b, 0x2c,0xfb, 0x01,0x8b, 0x81,0x2d,0xfd, 0x01,0xfc, 0x29,0xfb, -0x01,0x6e, 0x01,0x8b, 0x15,0xfd, 0x01,0x8b, 0x0e,0xfb, 0x0c,0xfd, 0x0c,0xfb, 0x01,0x8b, 0x15,0xfd, -0x01,0x8b, 0x01,0x6e, 0x2a,0xfb, 0x01,0xfc, 0x81,0x2c,0xfd, 0x01,0x8b, 0x01,0x6d, 0x29,0xfb, -0x01,0x8b, 0x16,0xfd, 0x0f,0xfb, 0x0c,0xfd, 0x0d,0xfb, 0x16,0xfd, 0x01,0x8b, 0x2a,0xfb, 0x01,0x6d, -0x01,0x8b, 0x80,0xd2,0xfd, 0x01,0x83, 0x01,0x41, 0x12,0xfd, 0x01,0x55, 0x01,0x6c, 0x05,0xfd, -0x01,0x41, 0x01,0x83, 0x3c,0xfd, 0x01,0x80, 0x0e,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0x47, 0x18,0xfb, -0x01,0x8b, 0x01,0xfd, 0x01,0x6c, 0x01,0x55, 0x13,0xfd, 0x10,0xfb, 0x07,0xfd, 0x01,0x55, 0x01,0x6c, -0x03,0xfd, 0x0e,0xfb, 0x11,0xfd, 0x01,0x55, 0x01,0x6c, 0x03,0xfd, 0x01,0x8b, 0x2a,0xfb, 0x01,0x80, -0x2e,0xfd, 0x01,0x41, 0x01,0x83, 0x27,0xfd, 0x01,0x83, 0x01,0x41, 0x79,0xfd, 0x01,0x41, 0x01,0x00, -0x12,0xfd, 0x01,0x00, 0x01,0x2b, 0x04,0xfd, 0x02,0x2b, 0x3d,0xfd, 0x01,0x72, 0x0d,0xfb, 0x01,0x22, -0x03,0x00, 0x17,0xfb, 0x01,0x8b, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x11,0xfd, 0x01,0x8b, -0x11,0xfb, 0x07,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x0f,0xfb, 0x01,0x8b, 0x0f,0xfd, 0x01,0x00, -0x01,0x2b, 0x04,0xfd, 0x01,0x8b, 0x0b,0xfb, 0x01,0x36, 0x01,0x00, 0x1c,0xfb, 0x01,0x72, 0x2e,0xfd, -0x01,0x00, 0x01,0x41, 0x27,0xfd, 0x01,0x41, 0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0x55, 0x70,0xfd, -0x01,0x41, 0x01,0x00, 0x12,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x55, 0x01,0x2b, 0x3d,0xfd, -0x01,0x86, 0x0e,0xfb, 0x01,0x00, 0x01,0x2b, 0x18,0xfb, 0x01,0x8b, 0x02,0xfd, 0x01,0x2b, 0x01,0x55, -0x11,0xfd, 0x01,0x85, 0x12,0xfb, 0x07,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x0e,0xfb, 0x01,0x36, -0x01,0x47, 0x01,0x85, 0x0e,0xfd, 0x01,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x8b, 0x0a,0xfb, 0x01,0x47, -0x01,0x2b, 0x1d,0xfb, 0x01,0x86, 0x2d,0xfd, 0x01,0x00, 0x01,0x41, 0x27,0xfd, 0x01,0x41, 0x01,0x00, -0x07,0xfd, 0x01,0x2b, 0x01,0x6c, 0x70,0xfd, 0x01,0x41, 0x01,0x00, 0x12,0xfd, 0x01,0x00, 0x01,0x2b, -0x42,0xfd, 0x01,0x79, 0x0e,0xfb, 0x01,0x00, 0x01,0x2b, 0x17,0xfb, 0x01,0x87, 0x14,0xfd, 0x01,0x8b, -0x01,0x82, 0x13,0xfb, 0x07,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x0e,0xfb, 0x01,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x82, 0x01,0x8b, 0x0c,0xfd, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x87, 0x28,0xfb, -0x01,0x79, 0x2d,0xfd, 0x01,0x00, 0x01,0x41, 0x27,0xfd, 0x01,0x41, 0x01,0x00, 0x75,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x19, -0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x55, 0x02,0xfd, -0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0x19, 0x02,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, -0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x02,0x41, 0x01,0x00, -0x01,0x19, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x83, -0x05,0x00, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x8b, 0x01,0x03, 0x03,0x00, -0x01,0x59, 0x02,0xfb, 0x01,0x00, 0x01,0x12, 0x03,0x00, 0x01,0x59, 0x01,0xfb, 0x04,0x00, 0x01,0x22, -0x01,0xfb, 0x01,0x36, 0x03,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x12, 0x03,0x00, 0x01,0x59, -0x02,0xfb, 0x01,0x36, 0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x03,0xfd, -0x01,0x19, 0x03,0x00, 0x01,0x83, 0x05,0xfd, 0x01,0x8b, 0x01,0x00, 0x01,0x2b, 0x03,0x00, 0x01,0x03, -0x03,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x36, 0x02,0x00, -0x01,0x2b, 0x03,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x04,0x00, -0x01,0x36, 0x02,0xfb, 0x01,0x00, 0x01,0x12, 0x03,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x03,0x00, -0x01,0x22, 0x01,0xfb, 0x01,0x8b, 0x03,0xfd, 0x01,0x00, 0x01,0x07, 0x03,0x00, 0x01,0x55, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, -0x01,0x2b, 0x03,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, -0x01,0x03, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x12, 0x03,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x8b, -0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x2e, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x02,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, -0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, -0x07,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2e, 0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x03,0x00, -0x01,0x83, 0x5d,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0x83, 0x01,0x00, 0x01,0x19, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x19, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, -0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x07, 0x01,0xfd, 0x02,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x07, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x02,0xfd, 0x01,0x41, -0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, -0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x83, 0x01,0x00, 0x01,0x19, 0x05,0xfd, 0x01,0x32, -0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x02,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x22, 0x01,0x59, 0x01,0x00, -0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x02,0x00, 0x01,0x22, 0x01,0x59, 0x01,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x59, 0x02,0x00, 0x01,0x59, 0x01,0x8b, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, -0x01,0x2b, 0x04,0xfd, 0x01,0x8b, 0x01,0xfb, 0x02,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x12, 0x01,0x00, -0x01,0x47, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0x59, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x22, -0x02,0x00, 0x01,0x47, 0x01,0x36, 0x01,0x00, 0x01,0x52, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2c, 0x01,0x59, 0x01,0xfb, 0x02,0x00, -0x02,0xfb, 0x02,0x00, 0x01,0x22, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x04,0xfb, 0x01,0x8b, 0x02,0xfd, 0x02,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x36, 0x01,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x47, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, -0x01,0x2b, 0x01,0x00, 0x02,0x59, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, -0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0x59, 0x02,0xfb, 0x01,0x00, -0x01,0x03, 0x01,0xfb, 0x02,0x59, 0x02,0xfb, 0x01,0x81, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, -0x01,0xfd, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, -0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x83, -0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0x83, 0x01,0x2b, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, -0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x01,0x6c, 0x01,0x83, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x02,0x00, 0x01,0x41, 0x01,0x83, 0x01,0x00, 0x01,0x07, 0x5c,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x41, -0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x02,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, -0x01,0x00, 0x03,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0x41, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x02,0x00, 0x02,0x22, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x01,0x00, 0x01,0x12, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, -0x01,0x03, 0x01,0x00, 0x03,0xfb, 0x01,0x03, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x12, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x82, 0x03,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, 0x01,0x07, -0x01,0x00, 0x03,0xfd, 0x01,0x87, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0x22, 0x02,0x00, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x59, -0x02,0xfb, 0x01,0x00, 0x01,0x3e, 0x01,0xfd, 0x02,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, -0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x12, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x05,0xfb, 0x01,0x87, 0x01,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x82, 0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x01,0x47, 0x03,0xfb, -0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0x22, 0x02,0x00, 0x01,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x59, 0x03,0xfb, -0x02,0x00, 0x01,0x36, 0x04,0xfb, 0x01,0x75, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x19, 0x01,0x83, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x05,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, 0x01,0x07, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x2b, 0x01,0x6c, 0x07,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x2e, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, -0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x5c,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x05,0x00, 0x01,0x2b, 0x05,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x55, -0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x04,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, -0x04,0xfd, 0x01,0x41, 0x04,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x05,0x00, 0x01,0x2b, 0x04,0xfd, 0x01,0x8b, 0x06,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, -0x03,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x7c, 0x04,0xfd, 0x05,0x00, 0x01,0x2b, 0x01,0xfd, 0x06,0x00, -0x02,0xfd, 0x01,0x7e, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x05,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x3e, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0xf7, 0x04,0x00, 0x02,0xfb, -0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x06,0xfb, -0x01,0x7e, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x7c, 0x01,0x22, -0x02,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x05,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, -0x01,0x47, 0x03,0x00, 0x01,0x59, 0x03,0xfb, 0x01,0x8b, 0x02,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x19, -0x02,0xfd, 0x05,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x00, 0x01,0x41, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x06,0x00, 0x02,0xfd, -0x01,0x41, 0x02,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, -0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x06,0x00, 0x02,0xfd, -0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x5c,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x09,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x07, -0x08,0xfd, 0x01,0x80, 0x02,0x00, 0x06,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x03, 0x01,0x00, 0x03,0xfb, 0x01,0x03, 0x01,0x00, -0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x03, 0x01,0x00, -0x05,0xfd, 0x01,0x00, 0x01,0x07, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x84, 0x04,0xfb, -0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x05,0xfb, -0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x3e, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, -0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x07,0xfb, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x02,0xfb, -0x01,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, -0x01,0x00, 0x06,0xfb, 0x01,0x47, 0x02,0x00, 0x03,0xfb, 0x01,0x80, 0x04,0xfd, 0x01,0x07, 0x01,0x00, -0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x07, 0x05,0xfd, 0x02,0x2b, 0x05,0xfd, 0x01,0x00, 0x01,0x19, -0x03,0xfd, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x08,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x07, 0x05,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, -0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2e, 0x01,0x00, 0x06,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x19, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, -0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x5d,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x83, 0x01,0x41, 0x05,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x6c, 0x01,0x83, 0x01,0x2b, 0x01,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0xfd, 0x01,0x55, 0x01,0x6c, -0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, -0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x02,0x00, 0x01,0x41, 0x01,0x2b, 0x02,0x00, -0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x41, 0x04,0xfd, 0x01,0x75, -0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x12, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, -0x01,0x2b, 0x01,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x41, 0x01,0xfd, 0x01,0x07, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, -0x02,0xfd, 0x01,0x2c, 0x01,0x85, 0x05,0xfb, 0x02,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0xfb, -0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x3e, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x6c, -0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x59, 0x01,0x47, -0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x02,0x00, -0x07,0xfb, 0x02,0x00, 0x01,0x69, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x6c, -0x01,0x36, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, -0x01,0x2b, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0xfb, 0x01,0x36, 0x01,0x00, -0x01,0x36, 0x01,0x47, 0x02,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x01,0x12, -0x02,0x59, 0x02,0x00, 0x03,0xfb, 0x01,0x75, 0x01,0xfd, 0x02,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x6c, 0x01,0x55, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, 0x01,0xfd, 0x01,0x6c, -0x01,0x41, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x19, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, -0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0x41, -0x02,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x5d,0xfd, 0x01,0x55, 0x03,0x00, -0x01,0x07, 0x01,0x00, 0x03,0xfd, 0x01,0x07, 0x03,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x2b, 0x02,0x00, -0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x02,0x00, 0x01,0x2e, 0x02,0x00, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, -0x04,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2e, 0x02,0x00, 0x01,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, -0x02,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x07, 0x03,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x8b, 0x02,0xfb, -0x01,0x22, 0x04,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x36, 0x03,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x22, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x70, 0x01,0x53, 0x03,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x07, 0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x41, 0x04,0x00, 0x06,0xfb, 0x05,0x00, 0x01,0x36, -0x03,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, -0x01,0x3e, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x12, 0x02,0x00, 0x01,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x36, 0x02,0x00, 0x01,0x22, 0x05,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x19, 0x01,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x6c, 0x03,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, -0x03,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x36, 0x01,0x00, 0x01,0x22, 0x01,0xfb, -0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x04,0x00, 0x01,0x59, 0x04,0xfb, 0x01,0x8b, 0x01,0x2e, 0x03,0x00, -0x01,0x19, 0x03,0xfd, 0x01,0x07, 0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2e, 0x03,0x00, 0x01,0x2e, -0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x2e, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x41, -0x04,0x00, 0x01,0xfd, 0x01,0x6c, 0x03,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, -0x02,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x2e, 0x01,0x00, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, -0x02,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x41, 0x04,0x00, 0x02,0xfd, -0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x80,0xa9,0xfd, 0x01,0x00, 0x01,0x2b, -0x0b,0xfd, 0x01,0x84, 0x25,0xfb, 0x01,0x8b, 0x11,0xfd, 0x01,0x87, 0x07,0xfb, 0x01,0x00, 0x01,0x2b, -0x13,0xfb, 0x0c,0xfd, 0x17,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x87, 0x11,0xfd, 0x01,0x8b, -0x26,0xfb, 0x01,0x84, 0x81,0x12,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x6c, 0x0b,0xfd, -0x01,0x7a, 0x25,0xfb, 0x11,0xfd, 0x01,0x8b, 0x08,0xfb, 0x01,0x00, 0x01,0x2b, 0x13,0xfb, 0x0c,0xfd, -0x17,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x8b, 0x11,0xfd, 0x26,0xfb, 0x01,0x7a, 0x81,0x12,0xfd, -0x01,0x6c, 0x01,0x07, 0x01,0x2b, 0x01,0x07, 0x01,0x83, 0x0c,0xfd, 0x01,0x6f, 0x24,0xfb, 0x01,0x8b, -0x10,0xfd, 0x01,0x8b, 0x09,0xfb, 0x01,0x03, 0x01,0x22, 0x13,0xfb, 0x0c,0xfd, 0x17,0xfb, 0x01,0x2b, -0x01,0x47, 0x03,0xfb, 0x01,0x8b, 0x10,0xfd, 0x01,0x8b, 0x25,0xfb, 0x01,0x6f, 0x81,0x22,0xfd, -0x01,0x8b, 0x24,0xfb, 0x01,0x78, 0x10,0xfd, 0x01,0x8b, 0x1f,0xfb, 0x0c,0xfd, 0x1d,0xfb, 0x01,0x8b, -0x10,0xfd, 0x01,0x78, 0x25,0xfb, 0x01,0x8b, 0x81,0x21,0xfd, 0x01,0x82, 0x24,0xfb, 0x01,0x8b, -0x10,0xfd, 0x01,0x80, 0x1f,0xfb, 0x0c,0xfd, 0x1d,0xfb, 0x01,0x80, 0x10,0xfd, 0x01,0x8b, 0x25,0xfb, -0x01,0x82, 0x81,0x1a,0xfd, 0x01,0x6c, 0x01,0x55, 0x05,0xfd, 0x01,0x79, 0x07,0xfb, 0x01,0x59, -0x01,0x22, 0x1b,0xfb, 0x10,0xfd, 0x01,0x8b, 0x08,0xfb, 0x01,0x47, 0x01,0x36, 0x15,0xfb, 0x01,0x59, -0x01,0x3e, 0x0b,0xfd, 0x17,0xfb, 0x01,0x47, 0x01,0x36, 0x05,0xfb, 0x01,0x8b, 0x10,0xfd, 0x25,0xfb, -0x01,0x79, 0x81,0x1a,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x70, 0x07,0xfb, 0x01,0x22, -0x01,0x00, 0x1a,0xfb, 0x01,0x7d, 0x10,0xfd, 0x09,0xfb, 0x01,0x2b, 0x01,0x00, 0x15,0xfb, 0x01,0x00, -0x01,0x16, 0x03,0xfd, 0x01,0x00, 0x01,0x55, 0x06,0xfd, 0x04,0xfb, 0x01,0x00, 0x01,0x36, 0x06,0xfb, -0x01,0x03, 0x01,0x2b, 0x09,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x03, 0x02,0xfb, -0x10,0xfd, 0x01,0x7d, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x21,0xfb, 0x01,0x70, 0x81,0x1a,0xfd, -0x01,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x8b, 0x08,0xfb, 0x01,0x22, 0x01,0x00, 0x17,0xfb, 0x01,0x22, -0x01,0x59, 0x01,0xfb, 0x01,0x8b, 0x0f,0xfd, 0x01,0x8b, 0x09,0xfb, 0x01,0x2b, 0x01,0x00, 0x14,0xfb, -0x02,0x03, 0x04,0xfd, 0x01,0x2b, 0x01,0x6c, 0x06,0xfd, 0x04,0xfb, 0x01,0x2b, 0x01,0x47, 0x01,0xfb, -0x01,0x59, 0x01,0x22, 0x03,0xfb, 0x01,0x22, 0x01,0x03, 0x09,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x01,0x03, 0x01,0x22, 0x02,0xfb, 0x01,0x8b, 0x0c,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0xfd, 0x01,0x8b, -0x01,0xfb, 0x01,0x47, 0x01,0x2b, 0x22,0xfb, 0x01,0x8b, 0x81,0x19,0xfd, 0x01,0x2b, 0x01,0x00, -0x04,0xfd, 0x01,0x88, 0x08,0xfb, 0x01,0x22, 0x01,0x00, 0x17,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0x7e, -0x10,0xfd, 0x0a,0xfb, 0x01,0x2b, 0x01,0x00, 0x16,0xfb, 0x0c,0xfd, 0x07,0xfb, 0x01,0x22, 0x01,0x00, -0x0e,0xfb, 0x01,0x2b, 0x01,0x00, 0x07,0xfb, 0x0c,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x7e, -0x24,0xfb, 0x01,0x88, 0x80,0xc8,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0x19, 0x01,0x00, -0x04,0xfd, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x41, -0x05,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x05,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x03, 0x06,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x12, -0x03,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x36, 0x03,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x01,0x00, -0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x04,0x00, 0x02,0xfd, 0x01,0x19, 0x03,0x00, 0x01,0x19, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x02,0x00, 0x01,0x2b, 0x01,0x80, 0x06,0xfb, 0x01,0x36, -0x05,0x00, 0x02,0xfb, 0x01,0x59, 0x03,0x00, 0x01,0x03, 0x06,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, -0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x03, 0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x02,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x22, -0x01,0xfb, 0x04,0x00, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x03, -0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x03,0x00, -0x02,0xfd, 0x01,0x2e, 0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x04,0x00, 0x01,0x8b, 0x01,0x22, 0x01,0x00, -0x03,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x03, 0x02,0x00, -0x01,0x03, 0x12,0xfb, 0x01,0x80, 0x80,0xc8,0xfd, 0x01,0x41, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, -0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x01,0x00, 0x01,0x19, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x01,0x00, 0x01,0x19, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x19, 0x02,0xfd, -0x01,0x19, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x02,0x00, 0x01,0x41, -0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x7a, 0x01,0x36, 0x01,0x00, -0x01,0x47, 0x05,0xfb, 0x01,0x22, 0x02,0x00, 0x01,0x47, 0x01,0x59, 0x02,0x00, 0x01,0xfb, 0x01,0x59, -0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, -0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x6c, -0x01,0x55, 0x01,0x00, 0x01,0x36, 0x05,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, -0x02,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x47, 0x05,0xfb, 0x01,0x2b, -0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x6c, 0x01,0x52, 0x01,0x00, -0x01,0x36, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x47, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x47, 0x01,0xfd, -0x01,0x6c, 0x02,0xfd, 0x02,0x55, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x47, 0x01,0xfb, -0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x59, 0x01,0x2b, 0x01,0x00, -0x12,0xfb, 0x01,0x7a, 0x80,0xcb,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, 0x01,0x07, 0x01,0x00, -0x04,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x55, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2e, 0x04,0xfd, -0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x01,0x28, 0x01,0x22, 0x01,0x00, -0x01,0x2b, 0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x12, 0x01,0x00, 0x01,0xfb, 0x01,0x03, -0x01,0x00, 0x03,0xfb, 0x01,0x03, 0x01,0x00, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, -0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfd, 0x02,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x22, 0x05,0xfb, 0x01,0x03, -0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x12, 0x02,0x22, -0x01,0x00, 0x01,0x2b, 0x05,0xfb, 0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x02,0x00, 0x02,0x22, 0x01,0xf7, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, -0x01,0x2b, 0x01,0x00, 0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x01,0x5d, 0x07,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x00, -0x01,0x03, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, -0x01,0x00, 0x12,0xfb, 0x01,0x73, 0x80,0xc8,0xfd, 0x01,0x41, 0x04,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x6c, 0x01,0x55, 0x01,0x00, 0x02,0xfd, 0x06,0x00, 0x03,0xfd, 0x01,0x2e, 0x01,0x00, -0x01,0x2e, 0x07,0xfd, 0x01,0x83, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x03, 0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x22, -0x01,0x00, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x39, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, -0x01,0x22, 0x05,0xfb, 0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x22, -0x05,0x00, 0x01,0x03, 0x05,0xfb, 0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x06,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, -0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, -0x04,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, -0x02,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x03,0xfd, 0x01,0x39, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x13,0xfb, 0x80,0xc7,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x03,0xfd, 0x02,0x2b, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x02,0x2b, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, 0x01,0x07, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x19, 0x0a,0xfd, 0x01,0x83, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x4d, -0x09,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x03, 0x01,0x00, 0x01,0xfb, 0x01,0x03, 0x01,0x00, -0x03,0xfb, 0x01,0x03, 0x01,0x00, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x59, 0x01,0x00, -0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x40, 0x02,0xfd, 0x02,0x2b, 0x03,0xfd, 0x02,0x2b, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x87, 0x01,0x00, 0x01,0x22, 0x05,0xfb, 0x01,0x2b, 0x01,0x00, -0x03,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x36, 0x09,0xfb, 0x01,0x2b, -0x01,0x00, 0x03,0xfb, 0x02,0x00, 0x02,0xfb, 0x04,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x36, 0x01,0xfb, -0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x04,0xfb, -0x01,0x22, 0x01,0x00, 0x01,0x06, 0x01,0xfd, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x40, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x03, -0x03,0xfb, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, -0x13,0xfb, 0x01,0x8b, 0x80,0xc6,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0x83, 0x01,0x2b, -0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0x6c, 0x02,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x19, -0x02,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, 0x01,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x2b, 0x09,0xfd, 0x01,0x41, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x47, -0x01,0x36, 0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0x59, 0x01,0x47, 0x01,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x36, 0x01,0x00, 0x01,0x36, 0x01,0x47, 0x02,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x07, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0xfb, 0x01,0x00, 0x01,0x22, 0x05,0xfb, 0x01,0x47, 0x01,0x00, -0x01,0x12, 0x01,0xfb, 0x01,0x03, 0x02,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x47, -0x01,0x36, 0x05,0xfb, 0x01,0x2b, 0x01,0x00, 0x03,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0xfd, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x36, -0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x36, 0x01,0x59, 0x01,0x2b, -0x01,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x47, 0x01,0x22, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x16, 0x01,0xfd, 0x01,0x00, 0x01,0x07, -0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x22, -0x01,0x2b, 0x0f,0xfb, 0x01,0x8b, 0x80,0xc7,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2e, 0x02,0x00, -0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x2b, 0x02,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x04,0xfd, 0x01,0x41, 0x04,0x00, 0x01,0xfd, 0x01,0x2b, -0x05,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x19, 0x02,0x00, -0x01,0x19, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x12, 0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x2b, -0x02,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x36, 0x03,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x2b, 0x02,0x00, -0x01,0x36, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x09, 0x02,0x00, 0x02,0xfd, 0x01,0x19, 0x03,0x00, -0x01,0x19, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0xfb, 0x01,0x00, 0x01,0x22, 0x06,0xfb, -0x01,0x03, 0x03,0x00, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x59, 0x01,0x2b, 0x03,0x00, 0x01,0x12, -0x05,0xfb, 0x01,0x2b, 0x01,0x00, 0x04,0xfb, 0x01,0x22, 0x04,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x02,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x02,0x00, -0x01,0x12, 0x02,0x00, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x47, 0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x02,0x00, 0x02,0x2b, 0x01,0x00, 0x01,0x55, -0x01,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x03,0x00, -0x01,0x36, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, -0x01,0x00, 0x0f,0xfb, 0x01,0x87, 0x80,0xce,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, -0x01,0x00, 0x10,0xfd, 0x01,0x00, 0x01,0x41, 0x33,0xfd, 0x01,0x82, 0x22,0xfb, 0x01,0x82, 0x0e,0xfd, -0x01,0x8b, 0x25,0xfb, 0x0c,0xfd, 0x23,0xfb, 0x01,0x8b, 0x0e,0xfd, 0x01,0x82, 0x23,0xfb, 0x01,0x82, -0x80,0xce,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x0f,0xfd, 0x01,0x19, -0x01,0x00, 0x34,0xfd, 0x01,0x7d, 0x22,0xfb, 0x01,0x8b, 0x0e,0xfd, 0x26,0xfb, 0x0c,0xfd, 0x24,0xfb, -0x0e,0xfd, 0x01,0x8b, 0x23,0xfb, 0x01,0x7d, 0x80,0xce,0xfd, 0x01,0x41, 0x01,0x19, 0x06,0xfd, -0x01,0x41, 0x01,0x19, 0x0f,0xfd, 0x01,0x2e, 0x01,0x41, 0x34,0xfd, 0x01,0x7a, 0x22,0xfb, 0x01,0x8b, -0x0e,0xfd, 0x26,0xfb, 0x0c,0xfd, 0x24,0xfb, 0x0e,0xfd, 0x01,0x8b, 0x23,0xfb, 0x01,0x7a, 0x81,0x1d,0xfd, -0x01,0x77, 0x22,0xfb, 0x0e,0xfd, 0x01,0x89, 0x26,0xfb, 0x0c,0xfd, 0x24,0xfb, 0x01,0x89, 0x0e,0xfd, -0x23,0xfb, 0x01,0x77, 0x81,0x1d,0xfd, 0x01,0x74, 0x21,0xfb, 0x01,0x71, 0x0e,0xfd, 0x01,0x7d, -0x26,0xfb, 0x0c,0xfd, 0x24,0xfb, 0x01,0x7d, 0x0e,0xfd, 0x01,0x71, 0x22,0xfb, 0x01,0x74, 0x81,0x1d,0xfd, -0x01,0x71, 0x21,0xfb, 0x01,0x7d, 0x0e,0xfd, 0x01,0x73, 0x26,0xfb, 0x0c,0xfd, 0x24,0xfb, 0x01,0x73, -0x0e,0xfd, 0x01,0x7d, 0x22,0xfb, 0x01,0x71, 0x81,0x1d,0xfd, 0x01,0x6f, 0x21,0xfb, 0x01,0x84, -0x0e,0xfd, 0x27,0xfb, 0x0c,0xfd, 0x25,0xfb, 0x0e,0xfd, 0x01,0x84, 0x22,0xfb, 0x01,0x6f, 0x81,0x1d,0xfd, -0x01,0x6e, 0x21,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x27,0xfb, 0x0c,0xfd, 0x25,0xfb, 0x01,0x8b, -0x0d,0xfd, 0x01,0x8b, 0x22,0xfb, 0x01,0x6e, 0x81,0x1d,0xfd, 0x01,0x6d, 0x21,0xfb, 0x01,0x8b, -0x0d,0xfd, 0x01,0x8b, 0x27,0xfb, 0x01,0x82, 0x0a,0xfd, 0x01,0x82, 0x25,0xfb, 0x01,0x8b, 0x0d,0xfd, -0x01,0x8b, 0x22,0xfb, 0x01,0x6d, 0x81,0x1d,0xfd, 0x22,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, -0x28,0xfb, 0x0a,0xfd, 0x26,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x23,0xfb, 0x81,0x1d,0xfd, -0x22,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x28,0xfb, 0x01,0x75, 0x08,0xfd, 0x01,0x75, 0x26,0xfb, -0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x23,0xfb, 0x81,0x1d,0xfd, 0x22,0xfb, 0x01,0x8b, 0x0d,0xfd, -0x01,0x8b, 0x2a,0xfb, 0x01,0x82, 0x04,0xfd, 0x01,0x82, 0x28,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, -0x23,0xfb, 0x81,0x1d,0xfd, 0x22,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x89, 0x58,0xfb, 0x01,0x89, -0x0d,0xfd, 0x01,0x8b, 0x23,0xfb, 0x81,0x1d,0xfd, 0x22,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x89, -0x58,0xfb, 0x01,0x89, 0x0d,0xfd, 0x01,0x8b, 0x23,0xfb, 0x81,0x1d,0xfd, 0x01,0x6d, 0x21,0xfb, -0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x58,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x22,0xfb, 0x01,0x6d, -0x81,0x1d,0xfd, 0x01,0x6e, 0x21,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x58,0xfb, 0x01,0x8b, -0x0d,0xfd, 0x01,0x8b, 0x22,0xfb, 0x01,0x6e, 0x81,0x1d,0xfd, 0x01,0x6f, 0x21,0xfb, 0x01,0x8b, -0x0d,0xfd, 0x01,0x8b, 0x58,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x22,0xfb, 0x01,0x6f, 0x81,0x1d,0xfd, -0x01,0x71, 0x21,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x58,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, -0x22,0xfb, 0x01,0x71, 0x81,0x1d,0xfd, 0x01,0x74, 0x21,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, -0x58,0xfb, 0x01,0x8b, 0x0d,0xfd, 0x01,0x8b, 0x22,0xfb, 0x01,0x74, 0x81,0x16,0xfd, 0x01,0x41, -0x01,0x83, 0x05,0xfd, 0x01,0x77, 0x21,0xfb, 0x01,0x84, 0x0e,0xfd, 0x58,0xfb, 0x0e,0xfd, 0x01,0x84, -0x22,0xfb, 0x01,0x77, 0x02,0xfd, 0x01,0x55, 0x01,0x6c, 0x35,0xfd, 0x01,0x41, 0x01,0x83, 0x80,0x8c,0xfd, -0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x2e, 0x02,0xfd, 0x01,0x2b, 0x01,0x19, 0x1a,0xfd, -0x02,0x6c, 0x01,0xfd, 0x01,0x41, 0x24,0xfd, 0x01,0x2b, 0x01,0x19, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x05,0xfd, 0x01,0x7a, 0x1a,0xfb, 0x01,0x22, 0x03,0x00, 0x01,0x2b, 0x01,0x47, 0x01,0xfb, 0x01,0x7d, -0x0e,0xfd, 0x01,0x73, 0x56,0xfb, 0x01,0x73, 0x0e,0xfd, 0x01,0x7d, 0x14,0xfb, 0x01,0x03, 0x01,0x2b, -0x04,0xfb, 0x01,0x2b, 0x01,0x03, 0x06,0xfb, 0x01,0x7a, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x1a,0xfd, -0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x2e, 0x02,0xfd, 0x01,0x2b, 0x01,0x19, 0x12,0xfd, -0x01,0x00, 0x01,0x41, 0x80,0x8c,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x41, 0x01,0x19, 0x01,0x2b, -0x02,0xfd, 0x01,0x19, 0x01,0x41, 0x1a,0xfd, 0x02,0x19, 0x01,0xfd, 0x01,0x00, 0x24,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x7d, 0x19,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0x2b, 0x01,0x22, 0x01,0x12, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x71, 0x0e,0xfd, 0x01,0x7d, -0x15,0xfb, 0x01,0x36, 0x01,0x47, 0x35,0xfb, 0x01,0x59, 0x01,0x22, 0x08,0xfb, 0x01,0x7d, 0x07,0xfd, -0x01,0x55, 0x01,0x6c, 0x05,0xfd, 0x01,0x71, 0x14,0xfb, 0x01,0x2b, 0x01,0x00, 0x04,0xfb, 0x01,0x00, -0x01,0x2b, 0x06,0xfb, 0x01,0x7d, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x41, 0x01,0x83, -0x16,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x41, 0x01,0x19, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x01,0x41, -0x12,0xfd, 0x01,0x00, 0x01,0x41, 0x80,0x8b,0xfd, 0x01,0x41, 0x01,0x00, 0x4a,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x82, 0x18,0xfb, 0x01,0x36, 0x01,0x00, -0x01,0x36, 0x07,0xfb, 0x0e,0xfd, 0x01,0x89, 0x15,0xfb, 0x01,0x00, 0x01,0x2b, 0x35,0xfb, 0x01,0x22, -0x01,0x00, 0x08,0xfb, 0x01,0x89, 0x07,0xfd, 0x01,0x00, 0x01,0x2b, 0x05,0xfd, 0x15,0xfb, 0x01,0x2b, -0x01,0x00, 0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x06,0xfb, 0x01,0x82, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x15,0xfd, 0x01,0x41, 0x01,0x00, 0x1a,0xfd, 0x01,0x00, 0x01,0x41, -0x80,0x8b,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x55, 0x03,0x00, 0x01,0x55, 0x06,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0x19, -0x02,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, -0x01,0x55, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2e, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x19, -0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x03,0x00, 0x01,0x83, 0x06,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x03,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x87, 0x01,0x00, -0x01,0x2b, 0x02,0x00, 0x02,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0x03, 0x02,0x00, 0x01,0x03, 0x06,0xfb, 0x01,0x2b, 0x01,0x00, 0x08,0xfb, 0x01,0x13, 0x03,0x00, -0x01,0x19, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2e, 0x02,0x00, 0x01,0x2b, 0x01,0x83, 0x03,0x00, -0x01,0x59, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x36, -0x03,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x05,0xfb, 0x01,0x22, 0x01,0x00, -0x01,0x36, 0x02,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x03, 0x03,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x00, -0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x06,0xfb, 0x01,0x12, 0x03,0x00, 0x01,0x36, 0x01,0xfb, -0x04,0x00, 0x01,0xfb, 0x01,0x47, 0x04,0x00, 0x01,0xfc, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x19, -0x01,0x00, 0x02,0x2b, 0x03,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x36, 0x02,0xfb, -0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x36, 0x0a,0xfb, 0x01,0x2b, 0x01,0x00, 0x04,0xfb, 0x01,0x00, -0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x0e, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, -0x04,0x00, 0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, -0x01,0x55, 0x05,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x55, 0x03,0x00, 0x01,0x55, 0x07,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x76,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x41, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, -0x01,0x00, 0x06,0xfd, 0x02,0x00, 0x01,0x07, 0x01,0xfd, 0x02,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x07, -0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x02,0xfd, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x02,0x83, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x02,0x00, 0x01,0x41, -0x01,0x83, 0x01,0x00, 0x01,0x07, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x02,0x00, 0x01,0x41, -0x01,0x83, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x8b, 0x02,0x00, 0x01,0x47, 0x02,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0x59, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x59, 0x01,0x2b, -0x01,0x00, 0x06,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x6c, 0x01,0x55, 0x02,0x00, -0x01,0x3e, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x02,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, -0x01,0x2b, 0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x02,0x00, 0x01,0x22, 0x06,0xfb, 0x01,0x22, 0x02,0x00, 0x01,0x47, 0x01,0x36, 0x01,0x00, 0x01,0x36, -0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x06,0xfb, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x02,0x59, 0x01,0xfb, -0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x47, 0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0xf7, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x11, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x2b, -0x01,0xfb, 0x02,0x00, 0x0a,0xfb, 0x01,0x2b, 0x06,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x01,0x47, -0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x02,0x00, -0x01,0x07, 0x01,0xfd, 0x02,0x00, 0x06,0xfd, 0x01,0x19, 0x02,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x06,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x6c, -0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x07, 0x05,0xfd, 0x02,0x00, 0x01,0x83, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x77,0xfd, 0x01,0x6c, 0x02,0x00, 0x01,0x19, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x03,0x41, 0x01,0x00, 0x01,0x55, -0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x2e, 0x04,0xfd, 0x02,0x00, 0x01,0x55, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, 0x01,0x07, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x8b, -0x01,0x00, 0x01,0x12, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0x22, 0x02,0x00, 0x01,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x06,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x00, -0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x8b, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, -0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x03, 0x01,0x00, 0x03,0x22, 0x01,0x00, -0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x59, 0x02,0xfb, -0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x02,0x00, 0x02,0x22, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, -0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x06,0xfb, 0x02,0x00, 0x01,0x36, 0x03,0xfb, 0x01,0x22, -0x01,0x00, 0x07,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x03,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x33, 0x02,0x22, 0x01,0x00, 0x01,0x36, -0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x0a,0xfb, 0x01,0x2b, 0x01,0x00, -0x04,0x22, 0x01,0x00, 0x01,0x2b, 0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x03,0x41, 0x01,0x00, 0x01,0x55, -0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, 0x01,0x6c, 0x02,0x00, -0x01,0x19, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x03,0x41, 0x01,0x00, -0x01,0x55, 0x05,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x00, -0x01,0x2b, 0x04,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x79,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x6c, 0x01,0x2b, -0x02,0x00, 0x01,0x83, 0x01,0xfd, 0x06,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x22, 0x03,0xfb, 0x05,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x06,0xfb, 0x02,0x00, 0x07,0xfb, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x03,0xfb, 0x01,0x00, 0x01,0x22, -0x01,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x2b, 0x05,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x06,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x06,0xfb, 0x01,0x47, 0x03,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x59, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x04,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, -0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x0a,0xfb, 0x01,0x2b, 0x01,0x00, 0x04,0xfb, 0x01,0x00, -0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x04,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x09,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x6c, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x7a,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x0a,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x2e, 0x01,0x00, 0x04,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x04,0xfd, -0x01,0x6c, 0x02,0x00, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x22, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x05,0xfb, -0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x06,0xfb, 0x01,0x03, 0x01,0x00, 0x01,0x47, -0x06,0xfb, 0x02,0x00, 0x03,0xfd, 0x02,0x2b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x47, -0x01,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, -0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x03, 0x01,0x00, 0x06,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, -0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x02,0x00, 0x06,0xfb, 0x01,0x00, -0x01,0x22, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x08,0xfb, 0x01,0x47, 0x02,0x00, 0x01,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x04,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x70, 0x05,0xfb, 0x01,0x00, -0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x0a,0xfb, 0x01,0x2b, 0x01,0x00, 0x04,0xfb, 0x01,0x00, -0x01,0x2b, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x28, 0x01,0x00, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x06,0xfd, -0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x0a,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x0a,0xfd, 0x01,0x00, 0x01,0x2e, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x19, 0x01,0x00, 0x01,0x55, 0x04,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x75,0xfd, 0x01,0x55, 0x01,0x19, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0xfd, 0x01,0x55, -0x01,0x6c, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0x41, 0x02,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2e, 0x02,0x83, 0x01,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x22, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, -0x01,0x00, 0x07,0xfb, 0x02,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x12, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, -0x01,0x00, 0x01,0x3e, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x02,0x00, 0x01,0x47, -0x01,0x59, 0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0x59, 0x02,0x00, 0x01,0x2b, 0x02,0xfb, -0x02,0x00, 0x02,0xfb, 0x01,0x59, 0x02,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x36, 0x01,0x47, 0x01,0xfb, -0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, -0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x12, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0x59, -0x02,0x00, 0x01,0x2b, 0x06,0xfb, 0x01,0x12, 0x02,0x59, 0x02,0x00, 0x01,0xfb, 0x01,0x36, 0x01,0x00, -0x01,0x36, 0x02,0xfb, 0x02,0x00, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x04,0xfd, 0x02,0x00, 0x02,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x36, -0x01,0x47, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x02,0x03, -0x06,0xfb, 0x01,0x2b, 0x01,0x00, 0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x36, 0x01,0x00, -0x01,0x36, 0x01,0x59, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0xfd, 0x01,0x55, -0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x55, -0x01,0x19, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0xfd, 0x01,0x55, 0x01,0x6c, 0x05,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x02,0x00, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x2e, 0x05,0xfd, -0x02,0x00, 0x01,0xfd, 0x01,0x07, 0x02,0x00, 0x75,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x55, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x6c, 0x05,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x2e, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x04,0x00, -0x01,0x83, 0x02,0xfd, 0x01,0x41, 0x04,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x22, 0x04,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x07,0xfb, 0x01,0x59, 0x01,0x2b, 0x04,0x00, -0x01,0x12, 0x02,0xfb, 0x01,0x03, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0x00, -0x01,0x59, 0x02,0xfb, 0x01,0x03, 0x02,0x00, 0x01,0x03, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x36, -0x02,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x47, 0x04,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, -0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x22, 0x04,0x00, -0x02,0xfb, 0x01,0x03, 0x02,0x00, 0x01,0x03, 0x01,0x00, 0x01,0x2b, 0x06,0xfb, 0x04,0x00, 0x01,0x59, -0x02,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0xfb, 0x01,0x36, 0x02,0x00, 0x01,0x2b, 0x01,0x19, 0x01,0x00, -0x01,0x07, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x5d, -0x04,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, -0x02,0x00, 0x06,0xfb, 0x01,0x2b, 0x01,0x00, 0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, -0x02,0x00, 0x01,0x1d, 0x02,0x00, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x02,0x00, -0x02,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x05,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x6c, 0x05,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x2e, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x2b, 0x01,0x19, 0x01,0x00, 0x01,0x07, 0x06,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x02,0x00, 0x02,0x2b, 0x01,0x00, 0x80,0xcd,0xfd, 0x01,0x88, -0x23,0xfb, 0x0f,0xfd, 0x01,0x87, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x4c,0xfb, 0x01,0x87, 0x0f,0xfd, -0x24,0xfb, 0x01,0x88, 0x81,0x1f,0xfd, 0x01,0x8b, 0x23,0xfb, 0x0f,0xfd, 0x01,0x8b, 0x02,0xfb, -0x01,0x00, 0x01,0x22, 0x4c,0xfb, 0x01,0x8b, 0x0f,0xfd, 0x24,0xfb, 0x01,0x8b, 0x81,0x20,0xfd, -0x01,0x70, 0x22,0xfb, 0x01,0x8b, 0x0f,0xfd, 0x01,0x80, 0x01,0xfb, 0x01,0x2b, 0x01,0x47, 0x4b,0xfb, -0x01,0x80, 0x0f,0xfd, 0x01,0x8b, 0x23,0xfb, 0x01,0x70, 0x81,0x21,0xfd, 0x01,0x79, 0x22,0xfb, -0x01,0x7d, 0x10,0xfd, 0x4e,0xfb, 0x10,0xfd, 0x01,0x7d, 0x23,0xfb, 0x01,0x79, 0x81,0x21,0xfd, -0x01,0x82, 0x23,0xfb, 0x01,0x8b, 0x0f,0xfd, 0x01,0x89, 0x4c,0xfb, 0x01,0x89, 0x0f,0xfd, 0x01,0x8b, -0x24,0xfb, 0x01,0x82, 0x80,0xcd,0xfd, 0x01,0x83, 0x01,0x41, 0x31,0xfd, 0x01,0x83, 0x01,0x41, -0x0e,0xfd, 0x01,0x41, 0x01,0x83, 0x0f,0xfd, 0x01,0x8b, 0x23,0xfb, 0x01,0x7d, 0x10,0xfd, 0x1e,0xfb, -0x01,0x22, 0x01,0x59, 0x1a,0xfb, 0x01,0x36, 0x01,0x47, 0x10,0xfb, 0x10,0xfd, 0x01,0x7d, 0x08,0xfb, -0x01,0x36, 0x01,0x47, 0x16,0xfb, 0x01,0x22, 0x01,0x59, 0x02,0xfb, 0x01,0x8b, 0x18,0xfd, 0x01,0x41, -0x01,0x83, 0x16,0xfd, 0x01,0x83, 0x01,0x41, 0x16,0xfd, 0x01,0x6c, 0x01,0x55, 0x80,0x83,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x19, 0x01,0x2b, 0x0d,0xfd, 0x01,0x19, 0x04,0x00, 0x01,0x2b, -0x01,0xfd, 0x01,0x19, 0x01,0x2b, 0x17,0xfd, 0x01,0x41, 0x01,0x00, 0x0e,0xfd, 0x01,0x00, 0x01,0x41, -0x10,0xfd, 0x01,0x6f, 0x1f,0xfb, 0x01,0x36, 0x01,0x00, 0x02,0xfb, 0x08,0xfd, 0x01,0x19, 0x01,0x2b, -0x06,0xfd, 0x01,0x8b, 0x0f,0xfb, 0x01,0x03, 0x02,0x00, 0x01,0x2b, 0x01,0x59, 0x09,0xfb, 0x01,0x00, -0x01,0x22, 0x1a,0xfb, 0x01,0x00, 0x01,0x2b, 0x0f,0xfb, 0x01,0x8b, 0x10,0xfd, 0x09,0xfb, 0x01,0x00, -0x01,0x2b, 0x08,0xfb, 0x01,0x36, 0x02,0x59, 0x01,0x36, 0x0a,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, -0x01,0x6f, 0x19,0xfd, 0x01,0x00, 0x01,0x41, 0x16,0xfd, 0x01,0x41, 0x01,0x00, 0x08,0xfd, 0x01,0x83, -0x01,0x55, 0x01,0xfd, 0x01,0x55, 0x01,0x83, 0x09,0xfd, 0x01,0x2b, 0x01,0x00, 0x80,0x83,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x19, 0x0d,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0x41, -0x01,0x55, 0x01,0xfd, 0x01,0x41, 0x01,0x19, 0x17,0xfd, 0x01,0x41, 0x01,0x00, 0x0e,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x41, 0x03,0xfd, 0x01,0x6c, 0x01,0x55, 0x08,0xfd, 0x01,0x7a, -0x08,0xfb, 0x01,0x36, 0x01,0x47, 0x15,0xfb, 0x01,0x47, 0x01,0x2b, 0x02,0xfb, 0x01,0x8b, 0x07,0xfd, -0x01,0x41, 0x01,0x19, 0x07,0xfd, 0x01,0x7e, 0x0d,0xfb, 0x01,0x03, 0x01,0x00, 0x01,0x12, 0x01,0x22, -0x01,0x2b, 0x01,0x36, 0x09,0xfb, 0x01,0x00, 0x01,0x22, 0x1a,0xfb, 0x01,0x00, 0x01,0x2b, 0x0e,0xfb, -0x01,0x7e, 0x10,0xfd, 0x01,0x8b, 0x09,0xfb, 0x01,0x00, 0x01,0x2b, 0x08,0xfb, 0x01,0x2b, 0x02,0x36, -0x01,0x2b, 0x0a,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x7a, 0x03,0xfd, 0x01,0x6c, 0x01,0x55, -0x14,0xfd, 0x01,0x00, 0x01,0x41, 0x16,0xfd, 0x01,0x41, 0x01,0x00, 0x08,0xfd, 0x01,0x55, 0x01,0x2b, -0x01,0xfd, 0x01,0x2b, 0x01,0x55, 0x09,0xfd, 0x01,0x2b, 0x01,0x00, 0x80,0x83,0xfd, 0x01,0x41, -0x01,0x00, 0x11,0xfd, 0x01,0x2b, 0x01,0x00, 0x1e,0xfd, 0x01,0x41, 0x01,0x00, 0x0e,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x08,0xfd, 0x01,0x84, -0x08,0xfb, 0x01,0x00, 0x01,0x2b, 0x19,0xfb, 0x01,0x73, 0x10,0xfd, 0x01,0x8b, 0x0d,0xfb, 0x01,0x00, -0x01,0x2b, 0x0d,0xfb, 0x01,0x00, 0x01,0x22, 0x1a,0xfb, 0x01,0x00, 0x01,0x2b, 0x0e,0xfb, 0x01,0x8b, -0x10,0xfd, 0x01,0x73, 0x09,0xfb, 0x01,0x00, 0x01,0x2b, 0x16,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, -0x01,0x84, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x14,0xfd, 0x01,0x00, 0x01,0x41, 0x16,0xfd, 0x01,0x41, -0x01,0x00, 0x16,0xfd, 0x01,0x2b, 0x01,0x00, 0x7f,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x19, 0x06,0xfd, 0x01,0x2b, -0x01,0x00, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x55, -0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x01,0x55, 0x02,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x04,0x00, 0x01,0x41, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x2e, 0x03,0x00, 0x01,0x2b, 0x01,0x8b, 0x01,0xfb, 0x01,0x36, 0x03,0x00, 0x01,0x03, 0x01,0xfb, -0x01,0x2b, 0x03,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x36, 0x03,0x00, 0x01,0x36, 0x07,0xfb, 0x01,0x2b, -0x02,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x17, -0x02,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x05,0x00, 0x01,0x8b, -0x02,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x06,0xfb, 0x02,0x00, 0x01,0x36, 0x05,0xfb, 0x01,0x03, -0x03,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x36, -0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, -0x01,0x36, 0x02,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x03, 0x04,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x36, -0x03,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x54, 0x06,0xfd, 0x01,0x83, -0x05,0x00, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x03, 0x04,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x03, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x59, 0x04,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x01,0xfb, 0x01,0xfa, 0x01,0x00, 0x01,0x55, 0x01,0x41, 0x03,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x2b, -0x03,0x00, 0x01,0x55, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x02,0xfd, -0x01,0x19, 0x03,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x02,0x00, 0x05,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x02,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x2b, 0x02,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x19, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x02,0x00, 0x01,0x19, 0x6c,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x83, -0x01,0x6c, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x07, 0x01,0xfd, 0x02,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x6c, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0xfd, 0x01,0x6c, -0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x6c, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x6c, -0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x02,0x55, 0x01,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x54, 0x01,0x75, 0x02,0x00, 0x02,0xfb, 0x01,0x47, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x06,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0x59, 0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, -0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x02,0x00, 0x01,0xfd, 0x01,0x87, 0x01,0x2b, 0x01,0x00, -0x02,0x59, 0x01,0x00, 0x01,0x03, 0x05,0xfb, 0x01,0x59, 0x02,0x00, 0x01,0x2b, 0x01,0x59, 0x02,0xfb, -0x01,0x22, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0x47, -0x01,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, -0x01,0x22, 0x02,0x00, 0x01,0x47, 0x01,0x36, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x22, 0x01,0x00, -0x01,0x22, 0x01,0xfb, 0x01,0x03, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x03, -0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x2b, 0x01,0x87, 0x02,0x00, 0x06,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x59, -0x01,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x03, 0x01,0x00, -0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0x59, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, -0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x47, 0x02,0xfb, -0x01,0x00, 0x01,0x22, 0x01,0x4d, 0x01,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0x6c, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x06,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x07, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, -0x01,0x83, 0x01,0xfd, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x02,0x2b, 0x03,0xfd, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x2b, 0x01,0x83, 0x01,0x07, 0x01,0x00, 0x6b,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, -0x02,0x41, 0x01,0x00, 0x01,0x07, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0x2e, 0x03,0xfd, 0x01,0x07, 0x01,0x00, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0x80, 0x02,0x00, 0x01,0x12, 0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x03, 0x01,0x00, -0x03,0x22, 0x01,0x00, 0x01,0x36, 0x05,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0x22, 0x02,0x00, 0x01,0xfb, -0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x8b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x22, 0x02,0x00, 0x07,0xfb, 0x01,0x2b, 0x02,0x00, -0x01,0x59, 0x01,0xfb, 0x02,0x00, 0x02,0x22, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x12, -0x01,0x00, 0x01,0x03, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, -0x01,0x22, 0x01,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x02,0x00, 0x03,0xfb, -0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x03, 0x01,0x00, 0x03,0x22, 0x01,0x00, 0x01,0x36, 0x01,0xfb, -0x01,0x00, 0x01,0x2b, 0x01,0x87, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x55, 0x01,0x00, -0x01,0x6c, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x22, 0x02,0x00, -0x01,0xfb, 0x02,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x59, -0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x36, 0x01,0x00, -0x01,0x47, 0x05,0xfb, 0x01,0x00, 0x01,0x12, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, -0x07,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x00, 0x01,0x19, -0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0x41, 0x01,0x07, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x2e, 0x06,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x01,0x00, -0x01,0x83, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x41, 0x01,0x00, 0x01,0x07, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x6b,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x19, -0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, -0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x6c, 0x04,0x00, 0x01,0x41, 0x01,0x8b, -0x01,0x59, 0x01,0x2b, 0x02,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, -0x05,0x00, 0x01,0x36, 0x05,0xfb, 0x05,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, -0x01,0x2b, 0x01,0x00, 0x01,0x71, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x05,0x00, 0x01,0x2b, -0x08,0xfb, 0x01,0x59, 0x02,0x00, 0x01,0xfb, 0x06,0x00, 0x02,0xfb, 0x03,0x00, 0x01,0x59, 0x03,0xfb, -0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x03,0xfb, -0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x2b, 0x05,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x05,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, -0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x01,0x22, 0x01,0x00, -0x06,0xfb, 0x03,0x00, 0x01,0x83, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0x41, -0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x01,0xfd, 0x06,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x07, -0x03,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x6b,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x09,0xfd, 0x01,0x2b, 0x01,0x00, -0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x04,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x05,0xfd, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x75, -0x01,0xfb, 0x01,0x59, 0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x03, 0x01,0x00, -0x0a,0xfb, 0x01,0x00, 0x01,0x2b, 0x05,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0xfb, 0x01,0x8b, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0xf7, 0x01,0x84, -0x0c,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, 0x02,0x00, 0x06,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0x00, -0x01,0x59, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x12, 0x01,0x00, 0x02,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, -0x01,0x2b, 0x01,0xfb, 0x01,0x03, 0x01,0x00, 0x06,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x05,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, -0x01,0x8b, 0x01,0x00, 0x01,0x2b, 0x05,0xfb, 0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x00, 0x01,0x2b, -0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x47, 0x05,0xfb, 0x01,0x00, 0x01,0x28, 0x02,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x19, -0x01,0xfd, 0x01,0x00, 0x01,0x2e, 0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x06,0xfd, 0x01,0x00, 0x01,0x41, 0x06,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x83, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2e, -0x01,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x6c,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x02,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x01,0x55, -0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x41, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x03,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x02,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x07, -0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x2e, -0x01,0xfd, 0x01,0x32, 0x01,0x47, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x02,0xfb, -0x01,0x59, 0x02,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x36, 0x01,0x47, 0x05,0xfb, 0x01,0x2b, 0x01,0x00, -0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x3e, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, -0x01,0x41, 0x01,0x2b, 0x02,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x41, 0x01,0x82, 0x01,0x59, -0x01,0x22, 0x05,0xfb, 0x01,0x2b, 0x01,0x22, 0x01,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, -0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x12, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0x59, -0x02,0x00, 0x02,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x01,0x22, 0x02,0x00, 0x02,0xfb, 0x01,0x22, -0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x03, 0x01,0x00, 0x01,0x47, 0x01,0x59, -0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x59, 0x02,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x36, -0x01,0x47, 0x01,0x82, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x02,0x00, -0x01,0x41, 0x01,0x2b, 0x02,0x00, 0x01,0xfd, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x22, 0x01,0xfb, -0x01,0x59, 0x01,0x22, 0x01,0xfb, 0x01,0x03, 0x01,0x00, 0x01,0x47, 0x01,0x59, 0x01,0x2b, 0x01,0x00, -0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x02,0x00, 0x01,0xfb, 0x01,0x2b, 0x02,0x00, -0x02,0xfb, 0x02,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x12, 0x02,0xfb, 0x01,0x00, 0x01,0x32, 0x01,0x83, -0x02,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, -0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0x6c, -0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x2e, -0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x07,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x02,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x01,0x6c, 0x02,0x00, -0x01,0x41, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x02,0x83, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x55, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, -0x01,0x6c, 0x01,0x55, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x6c,0xfd, -0x01,0x55, 0x03,0x00, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, -0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x05,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, -0x01,0x55, 0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x2b, 0x01,0x19, 0x01,0x00, 0x01,0x07, -0x01,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0xfd, 0x01,0x83, 0x02,0x00, -0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x02,0x00, 0x02,0x2b, 0x01,0x00, 0x01,0x55, 0x01,0x2b, 0x03,0x00, -0x01,0x36, 0x02,0xfb, 0x01,0x36, 0x02,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x47, 0x04,0x00, 0x01,0x47, -0x06,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x01,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x2e, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, -0x01,0x2b, 0x01,0x00, 0x02,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x07, 0x03,0x00, 0x01,0x2b, 0x05,0xfb, -0x01,0x12, 0x03,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x22, 0x04,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, -0x01,0xfb, 0x01,0x59, 0x02,0x00, 0x01,0xfb, 0x01,0x59, 0x03,0x00, 0x01,0x12, 0x01,0x00, 0x02,0xfb, -0x01,0x22, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, -0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x47, 0x04,0x00, 0x01,0x56, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x06,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0x2b, 0x01,0x00, -0x01,0x7c, 0x02,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, -0x01,0x00, 0x01,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x01,0x36, 0x02,0x00, 0x02,0x2b, -0x01,0x00, 0x02,0xfb, 0x01,0x59, 0x04,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x39, 0x01,0xfd, 0x01,0x83, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x2b, 0x03,0x00, -0x01,0x55, 0x02,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x2e, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x41, -0x04,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x07,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x07, 0x01,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x01,0x00, 0x01,0x41, -0x02,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x07, -0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x80,0xc8,0xfd, 0x01,0x79, 0x25,0xfb, 0x01,0x82, -0x0a,0xfd, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x87, 0x38,0xfb, 0x01,0x87, 0x12,0xfd, 0x01,0x00, -0x01,0x2b, 0x26,0xfb, 0x01,0x79, 0x81,0x29,0xfd, 0x01,0x86, 0x26,0xfb, 0x01,0x8b, 0x05,0xfd, -0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x6c, 0x08,0xfd, 0x01,0x87, 0x36,0xfb, 0x01,0x87, 0x0f,0xfd, -0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x47, 0x26,0xfb, 0x01,0x86, 0x81,0x2a,0xfd, 0x01,0x72, -0x25,0xfb, 0x01,0x7c, 0x05,0xfd, 0x01,0x6c, 0x01,0x07, 0x01,0x2b, 0x01,0x07, 0x01,0x83, 0x0a,0xfd, -0x01,0x8b, 0x34,0xfb, 0x01,0x8b, 0x10,0xfd, 0x01,0x6c, 0x01,0x07, 0x01,0x2b, 0x01,0x07, 0x01,0x66, -0x26,0xfb, 0x01,0x72, 0x81,0x2b,0xfd, 0x01,0x80, 0x26,0xfb, 0x01,0x87, 0x14,0xfd, 0x01,0x8b, -0x01,0x7e, 0x30,0xfb, 0x01,0x7e, 0x01,0x8b, 0x14,0xfd, 0x01,0x87, 0x27,0xfb, 0x01,0x80, 0x81,0x2b,0xfd, -0x01,0x8b, 0x01,0x6d, 0x26,0xfb, 0x01,0x8b, 0x15,0xfd, 0x01,0x8b, 0x2e,0xfb, 0x01,0x8b, 0x15,0xfd, -0x01,0x8b, 0x27,0xfb, 0x01,0x6d, 0x01,0x8b, 0x80,0xe8,0xfd, 0x01,0x83, 0x01,0x41, 0x42,0xfd, -0x01,0xfc, 0x27,0xfb, 0x01,0x8b, 0x16,0xfd, 0x01,0x89, 0x2a,0xfb, 0x01,0x89, 0x16,0xfd, 0x01,0x8b, -0x28,0xfb, 0x01,0xfc, 0x80,0xcf,0xfd, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x2e, -0x02,0xfd, 0x01,0x2b, 0x01,0x19, 0x11,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x19, 0x01,0x2b, -0x0d,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x03,0xfd, 0x01,0x55, 0x01,0x2b, 0x29,0xfd, 0x01,0x8b, -0x0b,0xfb, 0x07,0x00, 0x01,0x2b, 0x15,0xfb, 0x01,0x8b, 0x17,0xfd, 0x01,0x80, 0x26,0xfb, 0x01,0x80, -0x17,0xfd, 0x01,0x8b, 0x29,0xfb, 0x01,0x8b, 0x80,0xcf,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x41, -0x01,0x19, 0x01,0x2b, 0x02,0xfd, 0x01,0x19, 0x01,0x41, 0x11,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, -0x01,0x41, 0x01,0x19, 0x0d,0xfd, 0x01,0x41, 0x02,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x18,0xfd, -0x01,0x55, 0x01,0x6c, 0x0f,0xfd, 0x01,0x6b, 0x01,0x3f, 0x0a,0xfb, 0x03,0x22, 0x02,0x00, 0x02,0x22, -0x01,0x36, 0x0f,0xfb, 0x01,0x22, 0x01,0x59, 0x05,0xfb, 0x01,0x8b, 0x17,0xfd, 0x01,0x8b, 0x01,0x87, -0x22,0xfb, 0x01,0x87, 0x01,0x8b, 0x17,0xfd, 0x01,0x8b, 0x29,0xfb, 0x01,0x7b, 0x80,0xcf,0xfd, -0x01,0x41, 0x01,0x00, 0x19,0xfd, 0x01,0x41, 0x01,0x00, 0x11,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x2e, -0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x18,0xfd, 0x01,0x00, 0x01,0x2b, 0x0f,0xfd, 0x01,0x2b, 0x01,0x00, -0x0d,0xfb, 0x01,0x00, 0x01,0x2b, 0x12,0xfb, 0x01,0x00, 0x01,0x22, 0x05,0xfb, 0x01,0x6e, 0x01,0x8b, -0x19,0xfd, 0x01,0x89, 0x1e,0xfb, 0x01,0x89, 0x19,0xfd, 0x01,0x8b, 0x01,0x6e, 0x29,0xfb, 0x01,0x8b, -0x80,0xcf,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, -0x01,0x55, 0x03,0x00, 0x01,0x55, 0x06,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x03,0x00, 0x01,0x19, 0x06,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x03,0x00, -0x01,0x19, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x55, -0x03,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x41, 0x01,0xfd, 0x04,0x00, 0x01,0x55, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0x41, 0x03,0x00, 0x01,0x2b, 0x0b,0xfb, 0x01,0x00, -0x01,0x2b, 0x04,0xfb, 0x01,0x2b, 0x03,0x00, 0x01,0x03, 0x02,0xfb, 0x01,0x12, 0x03,0x00, 0x01,0x36, -0x01,0xfb, 0x04,0x00, 0x02,0xfb, 0x01,0x03, 0x03,0x00, 0x01,0x7a, 0x1b,0xfd, 0x01,0x8b, 0x18,0xfb, -0x01,0x8b, 0x1b,0xfd, 0x01,0x8b, 0x2a,0xfb, 0x01,0x7c, 0x80,0xd1,0xfd, 0x01,0x19, 0x02,0x00, -0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x01,0xfd, -0x01,0x07, 0x01,0x00, 0x06,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x01,0x6c, 0x02,0x00, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, -0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2e, 0x01,0x83, 0x01,0xfd, 0x02,0x00, 0x02,0xfd, -0x02,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x8b, 0x0c,0xfb, 0x01,0x00, 0x01,0x2b, -0x04,0xfb, 0x01,0x22, 0x01,0x47, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x03, -0x01,0xfb, 0x02,0x59, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x01,0x36, -0x01,0xfb, 0x02,0x00, 0x01,0x8b, 0x1c,0xfd, 0x01,0x8b, 0x01,0x89, 0x01,0x7c, 0x10,0xfb, 0x01,0x7c, -0x01,0x89, 0x01,0x8b, 0x1c,0xfd, 0x01,0x8b, 0x2b,0xfb, 0x01,0x8b, 0x80,0xd2,0xfd, 0x01,0x6c, -0x02,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x03,0x41, -0x01,0x00, 0x01,0x55, 0x04,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x41, 0x01,0x00, -0x01,0x07, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0x41, -0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x02,0x41, 0x01,0x00, 0x01,0x07, 0x01,0xfd, -0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2e, -0x04,0xfd, 0x01,0x00, 0x01,0x2b, 0x06,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x7d, 0x01,0xfb, 0x01,0x36, 0x04,0x22, 0x01,0x36, -0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x07,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x01,0x36, -0x04,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x02,0x00, 0x02,0x22, 0x01,0x2b, 0x01,0x00, 0x01,0xfb, -0x01,0x8b, 0x20,0xfd, 0x04,0x8b, 0x04,0x89, 0x04,0x8b, 0x20,0xfd, 0x01,0x8b, 0x2b,0xfb, 0x01,0x7d, -0x80,0xd5,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x2b, 0x05,0x00, 0x01,0x55, 0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x05,0x00, 0x01,0x19, 0x05,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x05,0x00, -0x01,0x19, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x83, -0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x07, 0x04,0x00, -0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x8b, 0x01,0x70, -0x01,0x2b, 0x04,0x00, 0x01,0x2b, 0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x04,0xfb, 0x01,0x22, 0x04,0x00, -0x02,0xfb, 0x01,0x47, 0x03,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x06,0x00, -0x02,0xfb, 0x01,0x8b, 0x4a,0xfd, 0x01,0x8b, 0x2b,0xfb, 0x01,0x70, 0x01,0x8b, 0x80,0xd6,0xfd, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x09,0xfd, -0x01,0x55, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x09,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x01,0x2e, 0x01,0x00, 0x04,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, -0x02,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x81, 0x0a,0xfb, 0x01,0x00, 0x01,0x2b, -0x03,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x04,0xfb, 0x01,0x47, -0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x02,0xfb, 0x02,0x00, 0x07,0xfb, 0x01,0x87, 0x48,0xfd, -0x01,0x87, 0x2c,0xfb, 0x01,0x81, 0x80,0xd2,0xfd, 0x01,0x55, 0x01,0x19, 0x01,0x6c, 0x01,0xfd, -0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x01,0x00, -0x01,0x2b, 0x01,0x83, 0x01,0xfd, 0x01,0x55, 0x01,0x6c, 0x05,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, -0x01,0x41, 0x02,0x00, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0xfd, -0x01,0x6c, 0x01,0x55, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x2e, 0x02,0x00, 0x02,0xfd, -0x02,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x6c, 0x01,0x55, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, -0x01,0x41, 0x02,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x6c, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, -0x02,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0x6c, 0x02,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0x2b, 0x03,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x8b, 0x01,0x75, 0x09,0xfb, -0x01,0x00, 0x01,0x2b, 0x03,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x36, 0x01,0x59, 0x01,0x2b, 0x01,0x00, -0x01,0x59, 0x01,0xfb, 0x01,0x12, 0x02,0x59, 0x02,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, -0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, 0x01,0x12, 0x02,0xfb, 0x01,0x2b, 0x01,0x22, 0x01,0x7a, -0x01,0x8b, 0x44,0xfd, 0x01,0x8b, 0x01,0x7a, 0x2c,0xfb, 0x01,0x75, 0x01,0x8b, 0x80,0xd2,0xfd, -0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x6c, -0x04,0x00, 0x01,0x6c, 0x05,0xfd, 0x01,0x55, 0x03,0x00, 0x01,0x07, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, -0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x05,0xfd, 0x01,0x41, 0x01,0x00, -0x04,0xfd, 0x02,0x00, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x03,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x83, -0x03,0x00, 0x01,0x2e, 0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x55, -0x02,0x00, 0x01,0x41, 0x01,0x83, 0x03,0x00, 0x01,0x2e, 0x02,0x00, 0x01,0xfd, 0x01,0x00, 0x01,0x2b, -0x03,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x88, 0x09,0xfb, 0x01,0x00, 0x01,0x2b, -0x04,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x12, 0x02,0x00, 0x01,0xfb, 0x04,0x00, 0x01,0x59, 0x02,0xfb, -0x01,0x03, 0x02,0x00, 0x02,0xfb, 0x01,0x22, 0x04,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x2b, 0x02,0xfb, -0x01,0x82, 0x42,0xfd, 0x01,0x82, 0x2e,0xfb, 0x01,0x88, 0x81,0x38,0xfd, 0x01,0xfc, 0x2d,0xfb, -0x01,0x7c, 0x40,0xfd, 0x01,0x7c, 0x2e,0xfb, 0x01,0xfc, 0x81,0x39,0xfd, 0x01,0x8b, 0x01,0x72, -0x2e,0xfb, 0x01,0x85, 0x3c,0xfd, 0x01,0x85, 0x2f,0xfb, 0x01,0x72, 0x01,0x8b, 0x81,0x3a,0xfd, -0x01,0x85, 0x2f,0xfb, 0x01,0x6e, 0x01,0x8b, 0x38,0xfd, 0x01,0x8b, 0x01,0x6e, 0x30,0xfb, 0x01,0x85, -0x81,0x3c,0xfd, 0x01,0xfc, 0x31,0xfb, 0x01,0x8b, 0x34,0xfd, 0x01,0x8b, 0x32,0xfb, 0x01,0xfc, -0x81,0x3d,0xfd, 0x01,0x8b, 0x01,0x74, 0x31,0xfb, 0x01,0x73, 0x01,0x8b, 0x30,0xfd, 0x01,0x8b, -0x01,0x73, 0x32,0xfb, 0x01,0x74, 0x01,0x8b, 0x81,0x3e,0xfd, 0x01,0x88, 0x34,0xfb, 0x01,0x7c, -0x01,0x8b, 0x2a,0xfd, 0x01,0x8b, 0x01,0x7c, 0x35,0xfb, 0x01,0x88, 0x81,0x40,0xfd, 0x01,0x81, -0x35,0xfb, 0x01,0x7d, 0x01,0x8b, 0x26,0xfd, 0x01,0x8b, 0x01,0x7d, 0x36,0xfb, 0x01,0x81, 0x81,0x42,0xfd, -0x01,0x7b, 0x38,0xfb, 0x01,0x87, 0x20,0xfd, 0x01,0x87, 0x39,0xfb, 0x01,0x7b, 0x81,0x43,0xfd, -0x01,0x8b, 0x01,0x75, 0x3a,0xfb, 0x01,0x77, 0x01,0x80, 0x02,0x8b, 0x14,0xfd, 0x02,0x8b, 0x01,0x80, -0x01,0x77, 0x3b,0xfb, 0x01,0x75, 0x01,0x8b, 0x81,0x44,0xfd, 0x01,0x8b, 0x01,0x70, 0x3e,0xfb, -0x01,0x71, 0x01,0x7d, 0x01,0x84, 0x0c,0x8b, 0x01,0x84, 0x01,0x7d, 0x01,0x71, 0x3f,0xfb, 0x01,0x70, -0x01,0x8b, 0x81,0x46,0xfd, 0x01,0x86, 0x80,0x8f,0xfb, 0x01,0x86, 0x81,0x48,0xfd, -0x01,0x82, 0x80,0x8d,0xfb, 0x01,0x82, 0x81,0x4a,0xfd, 0x01,0x7f, 0x80,0x8b,0xfb, -0x01,0x7f, 0x81,0x4c,0xfd, 0x01,0x7d, 0x80,0x89,0xfb, 0x01,0x7d, 0x81,0x4e,0xfd, -0x01,0x7c, 0x80,0x87,0xfb, 0x01,0x7c, 0x81,0x4f,0xfd, 0x01,0x8b, 0x01,0x7b, 0x80,0x85,0xfb, -0x01,0x7b, 0x01,0x8b, 0x81,0x50,0xfd, 0x01,0x8b, 0x01,0x7b, 0x80,0x83,0xfb, 0x01,0x7b, -0x01,0x8b, 0x81,0x52,0xfd, 0x01,0x8b, 0x01,0x7c, 0x80,0x81,0xfb, 0x01,0x7c, 0x01,0x8b, -0x81,0x55,0xfd, 0x01,0x7d, 0x7f,0xfb, 0x01,0x7d, 0x81,0x58,0xfd, 0x01,0x7f, 0x7d,0xfb, -0x01,0x7f, 0x81,0x08,0xfd, 0x02,0x2b, 0x01,0x6c, 0x1f,0xfd, 0x01,0x07, 0x01,0x55, 0x0b,0xfd, -0x01,0x41, 0x01,0x55, 0x06,0xfd, 0x01,0x83, 0x0b,0x41, 0x01,0x83, 0x03,0xfd, 0x01,0x19, 0x01,0x55, -0x09,0xfd, 0x01,0x82, 0x02,0xfb, 0x01,0x22, 0x01,0x2b, 0x01,0x03, 0x01,0xfb, 0x01,0x47, 0x01,0x12, -0x0a,0xfb, 0x01,0x2b, 0x16,0xfb, 0x01,0x00, 0x01,0x03, 0x07,0xfb, 0x01,0x59, 0x0b,0x22, 0x01,0x59, -0x04,0xfb, 0x01,0x22, 0x01,0x59, 0x04,0xfb, 0x01,0x59, 0x01,0x2b, 0x05,0xfb, 0x02,0x22, 0x0a,0xfb, -0x02,0x47, 0x0e,0xfb, 0x01,0x03, 0x01,0x47, 0x0c,0xfb, 0x01,0x2b, 0x01,0x82, 0x3e,0xfd, 0x01,0x41, -0x02,0xfd, 0x01,0x2e, 0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x07, 0x01,0x55, 0x18,0xfd, 0x01,0x41, -0x01,0x55, 0x80,0x8e,0xfd, 0x01,0x83, 0x0c,0xfd, 0x01,0x41, 0x01,0x00, 0x05,0xfd, 0x01,0x41, -0x01,0x19, 0x01,0x6c, 0x01,0x2b, 0x1e,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x83, 0x0b,0xfd, 0x01,0x00, -0x01,0x6c, 0x02,0xfd, 0x01,0x83, 0x03,0xfd, 0x01,0x6c, 0x05,0x2b, 0x01,0x00, 0x05,0x2b, 0x01,0x6c, -0x03,0xfd, 0x01,0x2b, 0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x04,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, -0x03,0x00, 0x01,0x22, 0x02,0xfb, 0x01,0x22, 0x01,0x2b, 0x0a,0xfb, 0x01,0x00, 0x08,0xfb, 0x01,0x2b, -0x05,0x00, 0x01,0x36, 0x07,0xfb, 0x01,0x47, 0x02,0x00, 0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x01,0x36, -0x02,0xfb, 0x01,0x47, 0x03,0x2b, 0x02,0x00, 0x01,0x2b, 0x02,0x00, 0x03,0x2b, 0x01,0x47, 0x04,0xfb, -0x01,0x00, 0x04,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x01,0x12, 0x04,0xfb, 0x02,0x2b, 0x02,0xfb, -0x01,0x59, 0x01,0x22, 0x01,0x47, 0x05,0xfb, 0x01,0x2b, 0x01,0x12, 0x01,0xfb, 0x01,0x03, 0x01,0x2b, -0x01,0x22, 0x0a,0xfb, 0x01,0x00, 0x01,0x22, 0x0b,0xfb, 0x01,0x70, 0x01,0x00, 0x15,0xfd, 0x01,0x83, -0x01,0x41, 0x02,0xfd, 0x01,0x6c, 0x01,0x55, 0x01,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x55, 0x08,0x41, 0x01,0x83, 0x14,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x2b, -0x01,0x41, 0x04,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x83, 0x08,0xfd, 0x01,0x83, 0x0f,0xfd, 0x01,0x00, -0x01,0x6c, 0x02,0xfd, 0x01,0x83, 0x7e,0xfd, 0x09,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x83, -0x0a,0xfd, 0x01,0x41, 0x01,0x00, 0x05,0xfd, 0x01,0x6c, 0x02,0x2b, 0x01,0x6c, 0x1e,0xfd, 0x01,0x2b, -0x06,0x00, 0x03,0xfd, 0x01,0x55, 0x08,0x00, 0x01,0x55, 0x08,0xfd, 0x01,0x00, 0x07,0xfd, 0x01,0x2b, -0x04,0x00, 0x01,0x55, 0x03,0xfd, 0x01,0x41, 0x01,0x2b, 0x01,0xfd, 0x01,0x6c, 0x03,0x2b, 0x01,0x00, -0x02,0x2b, 0x01,0xfb, 0x01,0x22, 0x01,0x2b, 0x04,0xfb, 0x01,0x03, 0x03,0x2b, 0x06,0x00, 0x01,0x2b, -0x04,0xfb, 0x01,0x36, 0x01,0x22, 0x01,0x36, 0x01,0xfb, 0x02,0x00, 0x0a,0xfb, 0x01,0x47, 0x01,0x00, -0x01,0x59, 0x01,0x00, 0x01,0x59, 0x03,0xfb, 0x01,0x47, 0x02,0x22, 0x01,0x00, 0x01,0x2b, 0x01,0x22, -0x01,0x00, 0x01,0x2b, 0x02,0x22, 0x01,0x59, 0x04,0xfb, 0x01,0x59, 0x01,0x00, 0x04,0xfb, 0x01,0x59, -0x01,0x2b, 0x01,0x03, 0x01,0x22, 0x01,0xfb, 0x01,0x22, 0x07,0x00, 0x01,0x2b, 0x01,0x47, 0x05,0xfb, -0x01,0x00, 0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x01,0x22, 0x01,0x00, 0x01,0x03, 0x04,0xfb, 0x01,0x36, -0x01,0x00, 0x03,0x2b, 0x05,0x00, 0x03,0xfb, 0x01,0x03, 0x03,0x2b, 0x06,0x00, 0x01,0x2b, 0x11,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x07, 0x01,0x55, 0x01,0x07, 0x01,0x55, -0x02,0xfd, 0x01,0x00, 0x07,0x2b, 0x01,0x00, 0x01,0x2e, 0x14,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x2e, -0x06,0xfd, 0x01,0x2b, 0x06,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x09,0xfd, 0x01,0x55, -0x08,0x00, 0x01,0x55, 0x80,0x84,0xfd, 0x01,0x41, 0x01,0x00, 0x05,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x55, 0x04,0xfd, 0x01,0x2e, 0x01,0x19, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x83, -0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x1f,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x03,0xfd, 0x01,0x07, -0x01,0x2b, 0x06,0xfd, 0x01,0x00, 0x01,0x6c, 0x09,0xfd, 0x09,0x00, 0x05,0xfd, 0x01,0x2b, 0x01,0x41, -0x05,0xfd, 0x01,0x41, 0x01,0x2b, 0x01,0xfd, 0x01,0x83, 0x02,0x41, 0x01,0x07, 0x01,0x2b, 0x01,0x2e, -0x01,0x22, 0x01,0x2b, 0x04,0x00, 0x02,0xfb, 0x05,0x22, 0x01,0x47, 0x01,0x00, 0x03,0xfb, 0x01,0x59, -0x07,0xfb, 0x01,0x00, 0x01,0x2b, 0x09,0xfb, 0x01,0x00, 0x03,0xfb, 0x02,0x2b, 0x04,0xfb, 0x01,0x2b, -0x01,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x22, 0x02,0xfb, -0x01,0x59, 0x01,0x22, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x03, 0x01,0xfb, 0x01,0x59, 0x01,0x00, -0x01,0x22, 0x06,0xfb, 0x01,0x2b, 0x01,0x22, 0x02,0xfb, 0x01,0x2b, 0x07,0xfb, 0x01,0x00, 0x01,0x2b, -0x01,0x03, 0x02,0xfb, 0x01,0x47, 0x01,0x00, 0x05,0xfb, 0x01,0x36, 0x03,0x22, 0x01,0x00, 0x01,0x2b, -0x01,0x47, 0x05,0xfb, 0x03,0x22, 0x01,0x2e, 0x01,0x3a, 0x01,0x6c, 0x01,0x00, 0x03,0xfd, 0x01,0x83, -0x11,0xfd, 0x01,0x2e, 0x01,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x83, 0x01,0x07, 0x01,0x19, 0x03,0xfd, -0x01,0x00, 0x01,0x41, 0x06,0xfd, 0x01,0x00, 0x01,0x83, 0x0f,0xfd, 0x01,0x2b, 0x09,0x00, 0x01,0x2b, -0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x03,0xfd, 0x01,0x07, 0x01,0x2b, 0x05,0xfd, 0x01,0x2b, -0x01,0x00, 0x01,0x55, 0x04,0xfd, 0x01,0x2e, 0x01,0x19, 0x05,0xfd, 0x01,0x00, 0x01,0x6c, 0x80,0x89,0xfd, -0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x19, 0x01,0x2b, 0x04,0xfd, 0x01,0x00, 0x01,0x19, 0x03,0xfd, -0x01,0x41, 0x01,0x00, 0x01,0x83, 0x01,0x2e, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x1f,0xfd, -0x01,0x55, 0x01,0x00, 0x02,0x55, 0x03,0xfd, 0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x02,0x2b, 0x01,0x07, -0x01,0x2b, 0x01,0x83, 0x02,0xfd, 0x01,0x83, 0x04,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x02,0xfd, 0x01,0x6c, 0x02,0x2b, 0x01,0x00, 0x02,0x2b, 0x01,0x41, 0x04,0x00, 0x01,0x2b, -0x02,0xfd, 0x06,0x00, 0x01,0xfb, 0x01,0x22, 0x01,0x2b, 0x01,0xfb, 0x01,0x00, 0x05,0xfb, 0x01,0x03, -0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x09,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x03, 0x08,0xfb, 0x01,0x2b, -0x01,0xfb, 0x01,0x00, 0x02,0xfb, 0x01,0x47, 0x01,0x00, 0x01,0x47, 0x01,0x22, 0x03,0xfb, 0x01,0x2b, -0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x01,0x22, 0x01,0xfb, 0x01,0x2b, -0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x22, 0x01,0x2b, -0x01,0x00, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x06,0xfb, 0x04,0x2b, 0x01,0x00, 0x07,0xfb, 0x02,0x00, -0x04,0xfb, 0x01,0x00, 0x01,0x36, 0x04,0xfb, 0x01,0x47, 0x03,0xfb, 0x01,0x00, 0x03,0x22, 0x01,0x03, -0x05,0xfb, 0x01,0x81, 0x01,0x15, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x15,0xfd, 0x01,0x2b, 0x01,0x07, -0x03,0xfd, 0x01,0x00, 0x01,0x6c, 0x05,0xfd, 0x01,0x00, 0x01,0x41, 0x05,0xfd, 0x01,0x6c, 0x01,0x00, -0x15,0xfd, 0x01,0x00, 0x08,0xfd, 0x01,0x55, 0x01,0x00, 0x02,0x55, 0x03,0xfd, 0x01,0x00, 0x01,0x55, -0x06,0xfd, 0x01,0x19, 0x01,0x2b, 0x04,0xfd, 0x01,0x00, 0x01,0x19, 0x04,0xfd, 0x02,0x2b, 0x01,0x07, -0x01,0x2b, 0x01,0x83, 0x02,0xfd, 0x01,0x83, 0x80,0x84,0xfd, 0x01,0x41, 0x01,0x00, 0x0b,0xfd, -0x01,0x2e, 0x01,0x00, 0x04,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x2b, 0x01,0x2e, 0x09,0xfd, 0x01,0x2b, -0x05,0x00, 0x05,0xfd, 0x01,0x19, 0x09,0x2b, 0x01,0x19, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0x55, -0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x05,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x2e, -0x01,0x19, 0x01,0x00, 0x01,0x2e, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x09,0x00, 0x02,0xfd, -0x01,0x83, 0x02,0x41, 0x01,0x2b, 0x01,0x07, 0x01,0x41, 0x01,0x6c, 0x01,0x00, 0x06,0xfd, 0x01,0x00, -0x02,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x88, 0x02,0x2b, 0x01,0xfb, 0x01,0x00, 0x04,0xfb, -0x01,0x22, 0x01,0x00, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x08,0xfb, 0x01,0x59, 0x05,0x00, 0x01,0x03, -0x04,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0xfb, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x22, 0x01,0x59, -0x01,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x2b, 0x09,0x00, 0x01,0x22, 0x04,0xfb, 0x01,0x00, 0x01,0x47, -0x02,0xfb, 0x01,0x00, 0x02,0xfb, 0x01,0x00, 0x01,0x03, 0x04,0xfb, 0x01,0x2b, 0x02,0x00, 0x01,0x22, -0x03,0x00, 0x01,0x03, 0x05,0xfb, 0x01,0x00, 0x01,0x12, 0x04,0xfb, 0x01,0x00, 0x01,0x22, 0x04,0xfb, -0x06,0x00, 0x02,0x2b, 0x01,0x22, 0x03,0xfb, 0x01,0x74, 0x01,0x88, 0x01,0x41, 0x01,0x2b, 0x01,0xfd, -0x01,0x41, 0x01,0x00, 0x15,0xfd, 0x01,0x00, 0x01,0x55, 0x03,0xfd, 0x01,0x2b, 0x01,0x07, 0x05,0xfd, -0x01,0x2b, 0x01,0x55, 0x05,0xfd, 0x01,0x19, 0x01,0x00, 0x03,0xfd, 0x01,0x19, 0x09,0x2b, 0x01,0x19, -0x04,0xfd, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x83, 0x01,0x00, 0x04,0xfd, -0x01,0x41, 0x01,0x00, 0x02,0x55, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x0c,0xfd, -0x01,0x2e, 0x01,0x00, 0x04,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x2e, 0x01,0x19, 0x01,0x00, 0x01,0x2e, -0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x80,0x83,0xfd, 0x01,0x41, 0x01,0x00, 0x0a,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x55, 0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x10,0xfd, 0x01,0x41, 0x01,0x00, 0x05,0xfd, -0x01,0x19, 0x09,0x2b, 0x01,0x19, 0x03,0xfd, 0x01,0x6c, 0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x55, -0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x83, 0x01,0x07, 0x01,0x00, 0x01,0x2b, -0x01,0x55, 0x05,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, -0x01,0x2e, 0x01,0x2b, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x83, 0x02,0xfd, 0x01,0x00, -0x01,0x41, 0x01,0x07, 0x01,0x2b, 0x01,0x41, 0x01,0x00, 0x01,0xfd, 0x01,0x2b, 0x01,0x2f, 0x01,0xfb, -0x01,0x00, 0x04,0xfb, 0x01,0x2b, 0x01,0x22, 0x01,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x36, 0x06,0xfb, -0x01,0x36, 0x02,0x00, 0x01,0x03, 0x01,0x59, 0x01,0xfb, 0x01,0x47, 0x02,0x00, 0x03,0xfb, 0x02,0x2b, -0x01,0xfb, 0x01,0x00, 0x01,0xfb, 0x02,0x2b, 0x02,0xfb, 0x01,0x03, 0x01,0x2b, 0x05,0xfb, 0x01,0x47, -0x01,0x00, 0x01,0x59, 0x08,0xfb, 0x01,0x59, 0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x02,0xfb, 0x01,0x47, -0x01,0x00, 0x03,0xfb, 0x01,0x00, 0x02,0x2b, 0x01,0x22, 0x01,0x59, 0x01,0x00, 0x01,0xfb, 0x01,0x59, -0x01,0x00, 0x01,0x36, 0x04,0xfb, 0x01,0x00, 0x01,0x59, 0x04,0xfb, 0x01,0x00, 0x01,0x22, 0x08,0xfb, -0x01,0x2b, 0x01,0x22, 0x05,0xfb, 0x01,0xfc, 0x01,0x8b, 0x01,0xfd, 0x01,0x2b, 0x01,0x41, 0x01,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x55, 0x13,0xfd, 0x01,0x6c, 0x01,0x00, 0x04,0xfd, 0x01,0x55, 0x01,0x00, -0x0c,0xfd, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x19, 0x09,0x2b, 0x01,0x19, 0x03,0xfd, 0x01,0x55, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x04,0xfd, 0x01,0x6c, 0x03,0xfd, -0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x0b,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x03,0xfd, 0x01,0x41, -0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x83, 0x01,0x07, 0x01,0x00, 0x01,0x2b, 0x01,0x55, 0x80,0x85,0xfd, -0x01,0x41, 0x01,0x00, 0x09,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x19, 0x05,0xfd, 0x01,0x41, 0x01,0x00, -0x10,0xfd, 0x01,0x2e, 0x01,0x2b, 0x18,0xfd, 0x01,0x00, 0x01,0x2b, 0x05,0xfd, 0x01,0x55, 0x01,0x41, -0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x01,0x00, 0x05,0xfd, 0x01,0x6c, 0x01,0x41, 0x01,0x00, -0x03,0x41, 0x01,0x00, 0x03,0x41, 0x01,0x00, 0x01,0x41, 0x01,0x83, 0x01,0xfd, 0x01,0x2b, 0x01,0x41, -0x01,0x2b, 0x02,0x00, 0x01,0x19, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, -0x04,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0x69, 0x01,0x85, 0x01,0x00, 0x04,0xfb, 0x01,0x22, -0x01,0x00, 0x01,0x22, 0x02,0x00, 0x01,0x22, 0x05,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x22, 0x06,0xfb, -0x01,0x00, 0x01,0x36, 0x02,0xfb, 0x01,0x00, 0x01,0x47, 0x01,0xfb, 0x01,0x00, 0x01,0x03, 0x01,0x00, -0x03,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0xfb, 0x01,0x03, 0x0b,0x00, 0x01,0x36, 0x02,0xfb, 0x02,0x2b, -0x03,0xfb, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x01,0x59, 0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0xfb, -0x01,0x2b, 0x01,0x22, 0x01,0x00, 0x01,0x12, 0x02,0xfb, 0x02,0x2b, 0x04,0xfb, 0x01,0x00, 0x04,0xfb, -0x01,0x59, 0x01,0x00, 0x06,0xfb, 0x01,0x36, 0x02,0x2b, 0x01,0x00, 0x01,0x03, 0x03,0xfb, 0x01,0x72, -0x01,0x85, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x13,0xfd, -0x02,0x2b, 0x05,0xfd, 0x01,0x00, 0x01,0x41, 0x0a,0xfd, 0x01,0x07, 0x01,0x00, 0x12,0xfd, 0x01,0x2b, -0x01,0x07, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x2e, 0x01,0x2b, 0x09,0xfd, 0x01,0x00, 0x01,0x2b, -0x0b,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x19, 0x04,0xfd, 0x01,0x55, 0x01,0x41, 0x01,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x07, 0x01,0x00, 0x80,0x87,0xfd, 0x01,0x41, 0x01,0x00, 0x07,0xfd, 0x01,0x6c, -0x01,0x2b, 0x01,0x00, 0x01,0x55, 0x06,0xfd, 0x01,0x41, 0x01,0x00, 0x10,0xfd, 0x01,0x2b, 0x01,0x07, -0x17,0xfd, 0x02,0x2b, 0x08,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x05,0xfd, -0x01,0x41, 0x01,0x2b, 0x01,0x00, 0x07,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x6c, 0x01,0xfd, 0x03,0x2b, -0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x03,0x2b, 0x01,0x00, -0x01,0x2b, 0x01,0x19, 0x01,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x01,0xfc, 0x04,0xfb, 0x01,0x22, -0x01,0x2b, 0x01,0x22, 0x01,0x00, 0x01,0x59, 0x06,0xfb, 0x01,0x47, 0x01,0xfb, 0x03,0x00, 0x01,0x36, -0x02,0xfb, 0x01,0x00, 0x01,0x36, 0x01,0xfb, 0x01,0x22, 0x01,0x00, 0x02,0xfb, 0x02,0x00, 0x03,0xfb, -0x01,0x00, 0x01,0xfb, 0x01,0x00, 0x01,0x12, 0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x12, 0x02,0xfb, -0x01,0x36, 0x01,0x00, 0x06,0xfb, 0x01,0x00, 0x01,0x47, 0x02,0xfb, 0x01,0x22, 0x01,0x00, 0x06,0xfb, -0x01,0x2b, 0x01,0x22, 0x01,0xfb, 0x01,0x2b, 0x02,0x00, 0x03,0xfb, 0x01,0x00, 0x01,0x03, 0x09,0xfb, -0x01,0x2b, 0x01,0x00, 0x05,0xfb, 0x02,0x00, 0x01,0x12, 0x01,0x22, 0x03,0x00, 0x01,0x22, 0x01,0xfc, -0x01,0x8b, 0x05,0xfd, 0x01,0x41, 0x01,0x2b, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x05,0xfd, 0x01,0x2b, -0x02,0x00, 0x01,0x83, 0x09,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x83, 0x05,0xfd, 0x01,0x41, 0x01,0x00, -0x01,0x83, 0x08,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x6c, 0x11,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x83, -0x02,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x55, 0x07,0xfd, 0x02,0x2b, 0x0a,0xfd, 0x01,0x6c, -0x01,0x2b, 0x01,0x00, 0x01,0x55, 0x07,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, -0x80,0x80,0xfd, 0x09,0x00, 0x03,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0x19, 0x02,0x00, 0x01,0x2b, -0x01,0x83, 0x07,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x55, 0x03,0xfd, 0x01,0x6c, 0x01,0x41, 0x01,0x2e, -0x09,0xfd, 0x01,0x00, 0x01,0x41, 0x15,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x09,0xfd, 0x01,0x41, -0x01,0x00, 0x02,0xfd, 0x01,0x55, 0x07,0xfd, 0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, -0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x03,0x00, 0x01,0x2b, 0x02,0xfd, 0x02,0x41, -0x01,0x07, 0x01,0x2b, 0x01,0x41, 0x01,0x2e, 0x01,0x19, 0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, -0x01,0xfd, 0x01,0x88, 0x01,0x75, 0x04,0xfb, 0x01,0x00, 0x01,0x2b, 0x08,0xfb, 0x01,0x22, 0x01,0x2b, -0x01,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0xfb, 0x01,0x59, 0x01,0x36, -0x01,0x47, 0x02,0x00, 0x04,0xfb, 0x01,0x00, 0x01,0xfb, 0x01,0x22, 0x01,0x36, 0x02,0xfb, 0x01,0x36, -0x01,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x05,0xfb, 0x01,0x03, 0x01,0x00, 0x02,0x59, -0x01,0xfb, 0x02,0x2b, 0x06,0xfb, 0x02,0x2b, 0x01,0x59, 0x02,0x00, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, -0x09,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x59, 0x05,0xfb, 0x01,0x00, 0x03,0xfb, 0x01,0x2b, 0x01,0x22, -0x01,0x3c, 0x02,0x00, 0x01,0x83, 0x07,0xfd, 0x02,0x2b, 0x05,0xfd, 0x01,0x55, 0x01,0x2b, 0x01,0xfd, -0x01,0x19, 0x01,0x07, 0x08,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2e, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x83, 0x05,0xfd, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x55, 0x11,0xfd, 0x01,0x83, 0x01,0x00, -0x01,0x2e, 0x03,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x04,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0x19, 0x02,0x00, 0x01,0x2b, 0x01,0x83, -0x08,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x55, 0x80,0x87,0xfd, 0x01,0x55, 0x01,0x2b, -0x04,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x2e, 0x0b,0xfd, 0x01,0x2e, 0x05,0x00, 0x01,0x2b, 0x01,0x19, -0x04,0xfd, 0x08,0x00, 0x01,0x2b, 0x11,0xfd, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x2e, 0x0b,0xfd, -0x01,0x2b, 0x01,0x00, 0x03,0x2b, 0x02,0x00, 0x04,0xfd, 0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x02,0xfd, -0x01,0x41, 0x01,0x2b, 0x01,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x07, 0x06,0x41, 0x01,0x2e, 0x01,0x6c, -0x01,0x2b, 0x04,0x00, 0x01,0x07, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x19, 0x01,0x2b, 0x02,0xfd, -0x01,0x8b, 0x01,0x81, 0x01,0x70, 0x01,0x12, 0x01,0x00, 0x01,0x2b, 0x0a,0xfb, 0x02,0x00, 0x01,0x2b, -0x03,0x00, 0x01,0x59, 0x02,0xfb, 0x01,0x47, 0x01,0x2b, 0x01,0x00, 0x01,0x22, 0x01,0x00, 0x03,0xfb, -0x01,0x22, 0x01,0x00, 0x05,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0x2b, 0x01,0x00, 0x02,0x2b, 0x02,0x00, -0x01,0x22, 0x02,0xfb, 0x01,0x59, 0x01,0x00, 0x01,0x47, 0x01,0x36, 0x03,0x00, 0x01,0x47, 0x06,0xfb, -0x01,0x59, 0x02,0x00, 0x01,0x03, 0x01,0xfb, 0x01,0x12, 0x02,0x00, 0x01,0x2b, 0x01,0x59, 0x06,0xfb, -0x01,0x22, 0x01,0x2b, 0x02,0x00, 0x01,0x59, 0x06,0xfb, 0x01,0x2b, 0x01,0x00, 0x02,0x2b, 0x01,0x00, -0x01,0x6c, 0x01,0x8b, 0x01,0xfd, 0x01,0x2b, 0x01,0x83, 0x05,0xfd, 0x01,0x2e, 0x01,0x00, 0x01,0x2b, -0x06,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x83, 0x01,0x2b, 0x01,0x19, 0x08,0xfd, 0x01,0x83, 0x01,0x07, -0x08,0xfd, 0x01,0x83, 0x01,0x2b, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x01,0x83, 0x13,0xfd, -0x01,0x41, 0x04,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x2e, 0x03,0xfd, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, -0x01,0x2e, 0x09,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x2e, 0x0c,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0x2b, -0x02,0x00, 0x80,0xbe,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x83, 0x0d,0xfd, 0x01,0x83, 0x03,0x41, -0x01,0x6c, 0x05,0xfd, 0x01,0x2b, 0x04,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x41, -0x01,0x55, 0x02,0xfd, 0x01,0x83, 0x01,0x41, 0x06,0x2b, 0x01,0x41, 0x01,0x83, 0x01,0x41, 0x04,0xfd, -0x01,0x2b, 0x01,0x2e, 0x01,0x41, 0x02,0x00, 0x01,0x6c, 0x04,0xfd, 0x01,0x8b, 0x01,0x01, 0x01,0x22, -0x0c,0xfb, 0x01,0x36, 0x01,0x22, 0x01,0x36, 0x05,0xfb, 0x01,0x59, 0x01,0x2b, 0x01,0x59, 0x01,0xfb, -0x01,0x2b, 0x04,0x00, 0x01,0x36, 0x03,0xfb, 0x01,0x22, 0x02,0x00, 0x01,0x2b, 0x01,0x12, 0x04,0xfb, -0x01,0x22, 0x02,0x00, 0x02,0xfb, 0x01,0x36, 0x03,0xfb, 0x01,0x22, 0x01,0x47, 0x0c,0xfb, 0x01,0x59, -0x01,0x22, 0x09,0xfb, 0x01,0x47, 0x01,0x2b, 0x01,0x47, 0x09,0xfb, 0x01,0x59, 0x01,0x22, 0x01,0x30, -0x01,0x8b, 0x0a,0xfd, 0x01,0x07, 0x01,0x41, 0x08,0xfd, 0x01,0x2e, 0x01,0x00, 0x01,0x2b, 0x1b,0xfd, -0x01,0x83, 0x1a,0xfd, 0x01,0x2b, 0x08,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x83, 0x1a,0xfd, 0x01,0x83, -0x03,0x41, 0x01,0x6c, 0x81,0x03,0xfd, 0x01,0x8b, 0x01,0x7c, 0x57,0xfb, 0x01,0x7c, 0x01,0x8b, -0x81,0x7f,0xfd, 0x01,0x8b, 0x01,0x7b, 0x53,0xfb, 0x01,0x7b, 0x01,0x8b, 0x81,0x83,0xfd, -0x01,0x8b, 0x01,0xfc, 0x01,0x6d, 0x4d,0xfb, 0x01,0x6d, 0x01,0xfc, 0x01,0x8b, 0x81,0x87,0xfd, -0x01,0x8b, 0x01,0x80, 0x01,0x72, 0x49,0xfb, 0x01,0x72, 0x01,0x80, 0x01,0x8b, 0x80,0xfd,0xfd, -0x01,0x19, 0x01,0xfd, 0x01,0x19, 0x02,0x55, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x83, 0x05,0xfd, -0x01,0x83, 0x01,0x19, 0x01,0x00, 0x03,0xfd, 0x01,0x2b, 0x05,0xfd, 0x01,0x55, 0x03,0x41, 0x01,0x55, -0x01,0xfd, 0x04,0x41, 0x01,0x55, 0x03,0xfd, 0x01,0x2b, 0x02,0xfd, 0x06,0x41, 0x01,0x55, 0x04,0xfd, -0x01,0x41, 0x01,0x83, 0x0a,0xfd, 0x01,0x41, 0x01,0x19, 0x04,0xfd, 0x01,0x2b, 0x06,0xfd, 0x01,0x6c, -0x05,0xfd, 0x01,0x6c, 0x01,0x55, 0x14,0xfd, 0x01,0x19, 0x01,0x55, 0x22,0xfd, 0x01,0x86, 0x01,0x79, -0x1b,0xfb, 0x01,0x22, 0x0e,0xfb, 0x01,0x22, 0x02,0xfb, 0x01,0x12, 0x01,0x22, 0x01,0x00, 0x06,0xfb, -0x01,0x2b, 0x01,0x36, 0x0d,0xfb, 0x01,0x79, 0x01,0x86, 0x09,0xfd, 0x01,0x41, 0x01,0x55, 0x08,0xfd, -0x01,0x2b, 0x02,0xfd, 0x06,0x41, 0x01,0x55, 0x04,0xfd, 0x01,0x41, 0x01,0x83, 0x1c,0xfd, 0x01,0x83, -0x01,0x55, 0x08,0xfd, 0x01,0x19, 0x04,0xfd, 0x01,0x6c, 0x01,0x2b, 0x08,0xfd, 0x01,0x07, 0x80,0xa7,0xfd, -0x01,0x19, 0x02,0x2b, 0x01,0x41, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x83, -0x02,0x00, 0x01,0x2b, 0x01,0x83, 0x03,0xfd, 0x01,0x00, 0x05,0xfd, 0x01,0x00, 0x03,0x2b, 0x01,0x00, -0x01,0xfd, 0x01,0x00, 0x03,0x2b, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, -0x01,0x00, 0x02,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x41, 0x0a,0xfd, 0x01,0x2b, 0x02,0x6c, -0x03,0x2b, 0x01,0x00, 0x03,0x2b, 0x03,0xfd, 0x01,0x2b, 0x01,0x19, 0x04,0xfd, 0x01,0x19, 0x01,0x2b, -0x06,0xfd, 0x01,0x2b, 0x05,0x00, 0x01,0x55, 0x07,0xfd, 0x01,0x00, 0x01,0x41, 0x17,0xfd, 0x01,0x00, -0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x8b, 0x01,0x00, 0x01,0x75, 0x18,0xfb, 0x01,0x00, -0x0e,0xfb, 0x01,0x00, 0x02,0xfb, 0x01,0x36, 0x01,0x00, 0x01,0x2b, 0x01,0x22, 0x04,0xfb, 0x01,0x59, -0x01,0x00, 0x01,0x59, 0x08,0xfb, 0x01,0x59, 0x01,0xfb, 0x01,0x75, 0x01,0x81, 0x01,0x8b, 0x0b,0xfd, -0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x83, 0x05,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, -0x01,0x00, 0x02,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x41, 0x13,0xfd, 0x01,0x6c, 0x07,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x83, 0x01,0x00, 0x03,0xfd, 0x01,0x55, 0x01,0x00, -0x01,0x2b, 0x01,0x07, 0x07,0xfd, 0x01,0x00, 0x01,0x2e, 0x06,0xfd, 0x01,0x83, 0x01,0x55, 0x80,0x9d,0xfd, -0x01,0x83, 0x01,0x41, 0x04,0x2b, 0x01,0x55, 0x01,0x2e, 0x01,0x00, 0x03,0x41, 0x01,0x6c, 0x02,0xfd, -0x01,0x41, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x00, 0x03,0xfd, -0x05,0x00, 0x01,0xfd, 0x05,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0x6c, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x83, 0x08,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x01,0x41, 0x01,0x2b, 0x03,0x41, 0x01,0x00, 0x03,0x41, 0x03,0xfd, -0x01,0x00, 0x01,0x55, 0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x55, 0x01,0x41, 0x01,0x55, -0x01,0xfd, 0x02,0x2b, 0x08,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x2e, 0x13,0xfd, 0x01,0x00, 0x04,0xfd, -0x01,0x41, 0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x8b, 0x01,0x80, 0x01,0x75, 0x15,0xfb, -0x01,0x00, 0x0e,0xfb, 0x01,0x00, 0x03,0xfb, 0x01,0x12, 0x06,0xfb, 0x01,0x2b, 0x06,0x00, 0x03,0xfb, -0x01,0x75, 0x01,0x00, 0x01,0x2b, 0x01,0x7f, 0x09,0xfd, 0x01,0x55, 0x08,0x00, 0x01,0x55, 0x02,0xfd, -0x01,0x6c, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0x6c, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, -0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x01,0x83, 0x09,0xfd, 0x01,0x19, 0x01,0x2b, 0x08,0x00, 0x01,0x19, -0x06,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x08,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0x19, -0x02,0xfd, 0x01,0x2b, 0x01,0x41, 0x01,0x6c, 0x07,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0x2b, -0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x05,0xfd, 0x01,0x41, 0x01,0x55, 0x80,0x96,0xfd, -0x01,0x6c, 0x02,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x19, 0x03,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x41, -0x01,0x6c, 0x02,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x00, 0x01,0xfd, -0x01,0x2b, 0x01,0x55, 0x02,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0xfd, 0x01,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x41, 0x01,0x00, 0x02,0x41, -0x01,0x00, 0x02,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x0a,0xfd, 0x01,0x19, 0x01,0x2b, 0x01,0x00, -0x01,0x83, 0x01,0x19, 0x02,0x2b, 0x01,0x00, 0x02,0x2b, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0xfd, -0x01,0x6c, 0x03,0x41, 0x01,0x07, 0x01,0x00, 0x02,0x2b, 0x07,0xfd, 0x02,0x2b, 0x06,0xfd, 0x01,0x41, -0x02,0x2b, 0x03,0x00, 0x01,0x41, 0x01,0xfd, 0x02,0x2b, 0x12,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x41, -0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x55, 0x01,0x41, 0x01,0xf7, 0x01,0x2b, 0x01,0x00, -0x01,0x09, 0x01,0x6f, 0x03,0xfb, 0x01,0x59, 0x01,0xfb, 0x01,0x2b, 0x01,0x59, 0x02,0xfb, 0x01,0x36, -0x01,0x47, 0x06,0xfb, 0x01,0x00, 0x09,0xfb, 0x01,0x2b, 0x09,0x00, 0x01,0x2b, 0x04,0xfb, 0x01,0x22, -0x01,0x00, 0x01,0x59, 0x03,0xfb, 0x01,0x2b, 0x01,0x00, 0x01,0x7a, 0x01,0x84, 0x01,0x8b, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x55, 0x04,0xfd, 0x01,0x2e, 0x01,0x19, 0x05,0xfd, 0x01,0x00, 0x01,0x6c, -0x07,0xfd, 0x01,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x41, 0x01,0x00, 0x02,0x41, 0x01,0x00, -0x02,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x0a,0xfd, 0x01,0x2e, 0x02,0x41, 0x01,0x83, 0x02,0xfd, -0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x07,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x19, 0x07,0xfd, 0x01,0x2b, -0x03,0x00, 0x02,0x2b, 0x08,0xfd, 0x06,0x00, 0x01,0x2b, 0x01,0x2e, 0x01,0x83, 0x03,0xfd, 0x01,0x41, -0x01,0x00, 0x05,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x83, 0x80,0x96,0xfd, 0x01,0x83, 0x01,0x00, -0x02,0x2b, 0x01,0x00, 0x01,0x55, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x2b, 0x01,0x41, 0x01,0xfd, -0x01,0x83, 0x01,0x41, 0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x01,0x55, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, -0x01,0xfd, 0x01,0x41, 0x01,0x2b, 0x02,0xfd, 0x04,0x00, 0x01,0x2b, 0x01,0xfd, 0x05,0x00, 0x03,0xfd, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, 0x01,0x00, 0x02,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x00, -0x0b,0xfd, 0x01,0x00, 0x01,0x07, 0x01,0x2e, 0x01,0x55, 0x05,0x41, 0x01,0x55, 0x03,0xfd, 0x01,0x00, -0x01,0xfd, 0x01,0x6c, 0x04,0x2b, 0x01,0x00, 0x01,0x41, 0x06,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, -0x07,0xfd, 0x01,0x07, 0x01,0x19, 0x02,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x83, 0x01,0xfd, -0x01,0x00, 0x01,0x41, 0x11,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x02,0x2b, -0x04,0x00, 0x01,0x2b, 0x01,0x07, 0x01,0x41, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x8b, 0x01,0x82, -0x01,0x08, 0x01,0x00, 0x01,0xfb, 0x02,0x2b, 0x02,0xfb, 0x01,0x2b, 0x01,0x03, 0x06,0xfb, 0x01,0x00, -0x01,0x03, 0x01,0x59, 0x0c,0xfb, 0x01,0x00, 0x08,0xfb, 0x01,0x36, 0x01,0x00, 0x02,0x36, 0x01,0x70, -0x01,0x79, 0x01,0x82, 0x01,0x00, 0x01,0x50, 0x06,0xfd, 0x01,0x19, 0x01,0x2b, 0x04,0xfd, 0x01,0x00, -0x01,0x19, 0x04,0xfd, 0x02,0x2b, 0x01,0x07, 0x01,0x2b, 0x01,0x83, 0x02,0xfd, 0x01,0x83, 0x04,0xfd, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0x2b, 0x01,0x00, 0x02,0x2b, 0x01,0x00, 0x04,0xfd, 0x01,0x00, -0x0f,0xfd, 0x01,0x2b, 0x01,0x19, 0x08,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x41, 0x0a,0xfd, 0x01,0x2b, -0x01,0x41, 0x01,0xfd, 0x01,0x55, 0x01,0x41, 0x03,0x2b, 0x01,0x6c, 0x08,0xfd, 0x01,0x19, 0x01,0x2b, -0x05,0xfd, 0x01,0x6c, 0x01,0x00, 0x06,0xfd, 0x02,0x2b, 0x80,0x95,0xfd, 0x01,0x55, 0x01,0x00, -0x01,0x55, 0x01,0x19, 0x02,0x55, 0x01,0x00, 0x01,0x2b, 0x01,0x07, 0x01,0xfd, 0x01,0x00, 0x01,0x83, -0x03,0xfd, 0x02,0x00, 0x01,0x6c, 0x01,0x2b, 0x01,0x19, 0x01,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x83, -0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x00, 0x02,0xfd, 0x05,0x41, 0x02,0xfd, 0x01,0x00, 0x03,0xfd, -0x01,0x00, 0x01,0x83, 0x01,0x55, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x04,0xfd, -0x01,0x00, 0x0a,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x41, 0x01,0x00, 0x01,0x2b, 0x06,0x00, 0x03,0xfd, -0x01,0x00, 0x05,0xfd, 0x01,0x41, 0x01,0x00, 0x06,0xfd, 0x01,0x83, 0x02,0x00, 0x01,0x2b, 0x02,0x00, -0x01,0x19, 0x06,0xfd, 0x01,0x2b, 0x01,0x19, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x01,0xfd, 0x01,0x41, -0x01,0x00, 0x11,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x41, 0x01,0x00, 0x04,0xfd, 0x01,0x2e, 0x01,0x41, -0x01,0x83, 0x01,0x00, 0x04,0xfd, 0x02,0x2b, 0x05,0xfd, 0x01,0x00, 0x01,0x79, 0x01,0x71, 0x01,0x00, -0x01,0x7a, 0x01,0x73, 0x01,0x00, 0x01,0x47, 0x06,0xfb, 0x03,0x00, 0x01,0x2b, 0x01,0x47, 0x07,0xfb, -0x01,0x00, 0x01,0x59, 0x01,0xfb, 0x01,0x00, 0x01,0xfb, 0x01,0x59, 0x01,0x00, 0x04,0xfb, 0x01,0x28, -0x01,0x00, 0x01,0x43, 0x01,0x49, 0x01,0x00, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x00, 0x0c,0xfd, -0x01,0x2e, 0x01,0x00, 0x04,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x2e, 0x01,0x19, 0x01,0x00, 0x01,0x2e, -0x01,0x2b, 0x01,0x00, 0x01,0x41, 0x03,0xfd, 0x01,0x00, 0x01,0x83, 0x01,0x55, 0x01,0x00, 0x02,0xfd, -0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x0e,0xfd, 0x02,0x2b, 0x08,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x83, 0x0b,0xfd, 0x01,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x19, 0x01,0x2b, 0x03,0x41, -0x01,0x83, 0x09,0xfd, 0x01,0x00, 0x01,0x55, 0x05,0xfd, 0x01,0x00, 0x06,0xfd, 0x01,0x83, 0x01,0x00, -0x01,0x83, 0x80,0x95,0xfd, 0x02,0x83, 0x01,0x00, 0x02,0xfd, 0x01,0x55, 0x01,0x83, 0x01,0x00, -0x01,0x83, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x02,0x2b, 0x02,0x00, 0x01,0x83, 0x01,0xfd, 0x01,0x00, -0x01,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x03,0x2b, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x6c, 0x01,0xfd, 0x01,0x55, -0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0xfd, 0x01,0x55, 0x01,0x83, 0x01,0x55, -0x01,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x03,0xfd, 0x01,0x41, 0x01,0x00, -0x05,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x19, 0x01,0x83, 0x01,0xfd, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, -0x05,0xfd, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x00, 0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x55, -0x10,0xfd, 0x01,0x2b, 0x04,0xfd, 0x01,0x19, 0x01,0x2b, 0x07,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x83, -0x02,0x2b, 0x06,0xfd, 0x01,0x2b, 0x01,0x19, 0x01,0xfd, 0x01,0x41, 0x01,0x83, 0x01,0x41, 0x01,0x00, -0x02,0x8b, 0x01,0x87, 0x01,0x82, 0x01,0x7d, 0x01,0x7a, 0x01,0x77, 0x01,0x00, 0x01,0x71, 0x01,0x5c, -0x01,0x2b, 0x01,0x00, 0x01,0x2b, 0x01,0x59, 0x03,0xfb, 0x01,0x6d, 0x01,0x38, 0x01,0x00, 0x01,0x71, -0x01,0x74, 0x01,0x00, 0x01,0x7a, 0x01,0x7d, 0x01,0x00, 0x01,0x35, 0x02,0x8b, 0x02,0xfd, 0x01,0x6c, -0x03,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x55, 0x0b,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x55, 0x03,0xfd, -0x01,0x41, 0x01,0x00, 0x01,0x2e, 0x01,0xfd, 0x01,0x83, 0x01,0x07, 0x01,0x00, 0x01,0x2b, 0x01,0x55, -0x04,0xfd, 0x01,0x55, 0x02,0x00, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, -0x04,0xfd, 0x01,0x00, 0x06,0xfd, 0x01,0x2b, 0x01,0x6c, 0x06,0xfd, 0x01,0x00, 0x01,0x6c, 0x08,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x19, 0x0a,0xfd, 0x01,0x6c, 0x01,0x00, 0x0c,0xfd, 0x01,0x6c, 0x01,0x2b, -0x03,0x00, 0x01,0x2b, 0x01,0x00, 0x05,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x83, 0x04,0xfd, 0x01,0x2b, -0x01,0x07, 0x80,0x94,0xfd, 0x01,0x55, 0x06,0x00, 0x01,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x2e, 0x01,0x2b, 0x01,0x6c, 0x01,0xfd, 0x01,0x41, 0x02,0x00, 0x01,0x41, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x03,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, -0x01,0xfd, 0x01,0x07, 0x01,0x2b, 0x01,0x00, 0x02,0xfd, 0x07,0x00, 0x04,0xfd, 0x01,0x00, 0x05,0xfd, -0x01,0x83, 0x01,0x00, 0x03,0xfd, 0x01,0x07, 0x01,0x41, 0x01,0x2b, 0x01,0x07, 0x01,0x19, 0x01,0xfd, -0x01,0x00, 0x01,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x19, 0x03,0xfd, 0x01,0x00, 0x01,0x19, 0x01,0x2b, -0x03,0xfd, 0x01,0x19, 0x01,0x2b, 0x04,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x41, 0x06,0xfd, 0x01,0x00, -0x01,0x55, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x2e, -0x01,0x6c, 0x15,0xfd, 0x01,0x2b, 0x01,0x07, 0x07,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x55, 0x01,0x2b, -0x0c,0xfd, 0x01,0x00, 0x01,0x41, 0x07,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, -0x04,0xfd, 0x01,0x2b, 0x01,0x07, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x2e, 0x01,0x2b, 0x09,0xfd, -0x01,0x00, 0x01,0x2b, 0x0b,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x19, 0x04,0xfd, 0x01,0x55, 0x01,0x41, -0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x07, 0x01,0x00, 0x05,0xfd, 0x01,0x07, 0x01,0x2b, 0x01,0x00, -0x02,0xfd, 0x07,0x00, 0x04,0xfd, 0x01,0x00, 0x05,0xfd, 0x01,0x83, 0x01,0x00, 0x07,0xfd, 0x01,0x00, -0x0a,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x09,0xfd, 0x01,0x07, 0x01,0x2b, 0x02,0xfd, 0x01,0x2b, -0x01,0x83, 0x07,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x2e, 0x02,0xfd, 0x01,0x83, 0x01,0x2e, 0x01,0x00, -0x01,0x55, 0x04,0xfd, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x07, 0x01,0x19, 0x03,0xfd, 0x01,0x41, -0x01,0x00, 0x80,0x95,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0xfd, 0x01,0x19, 0x01,0x07, 0x02,0xfd, -0x01,0x2e, 0x01,0x00, 0x01,0x83, 0x02,0xfd, 0x01,0x07, 0x01,0x2e, 0x01,0x41, 0x01,0x2b, 0x04,0xfd, -0x01,0x83, 0x01,0x00, 0x01,0x55, 0x03,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x03,0x41, 0x01,0x00, -0x02,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x19, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, -0x01,0x19, 0x04,0xfd, 0x01,0x00, 0x01,0x83, 0x04,0xfd, 0x02,0x2b, 0x03,0xfd, 0x01,0x00, 0x01,0x41, -0x02,0x2b, 0x02,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x00, 0x05,0xfd, 0x02,0x00, 0x01,0x83, 0x03,0xfd, -0x01,0x2b, 0x01,0x19, 0x05,0xfd, 0x01,0x6c, 0x01,0xfd, 0x03,0x00, 0x01,0x55, 0x02,0xfd, 0x01,0x00, -0x01,0x55, 0x03,0xfd, 0x01,0x2b, 0x01,0x2e, 0x03,0xfd, 0x01,0x00, 0x05,0xfd, 0x01,0x83, 0x01,0x2e, -0x12,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x83, 0x07,0xfd, 0x01,0x00, 0x0f,0xfd, 0x01,0x07, 0x01,0x2b, -0x08,0xfd, 0x01,0x00, 0x05,0xfd, 0x01,0x83, 0x03,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x83, 0x02,0xfd, -0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x01,0x55, 0x07,0xfd, 0x02,0x2b, 0x0a,0xfd, 0x01,0x6c, 0x01,0x2b, -0x01,0x00, 0x01,0x55, 0x07,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x00, 0x07,0xfd, -0x01,0x00, 0x02,0xfd, 0x01,0x19, 0x02,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x19, 0x04,0xfd, 0x01,0x00, -0x01,0x83, 0x04,0xfd, 0x02,0x2b, 0x07,0xfd, 0x01,0x00, 0x01,0x07, 0x0b,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x83, 0x07,0xfd, 0x01,0x00, 0x01,0x55, 0x01,0xfd, 0x01,0x19, 0x01,0x2b, 0x08,0xfd, 0x01,0x00, -0x01,0x2e, 0x0b,0xfd, 0x01,0x07, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0x6c, 0x03,0xfd, 0x01,0x83, -0x01,0x00, 0x02,0xfd, 0x01,0x2b, 0x02,0x00, 0x01,0x83, 0x80,0x8f,0xfd, 0x01,0x6c, 0x01,0x2b, -0x02,0x00, 0x01,0x83, 0x02,0xfd, 0x02,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x83, 0x01,0xfd, 0x01,0x41, -0x01,0x2b, 0x03,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x19, 0x04,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, -0x03,0x2b, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, 0x05,0xfd, 0x01,0x00, 0x07,0xfd, -0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x83, 0x03,0xfd, 0x01,0x00, -0x01,0x41, 0x02,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x2b, 0x01,0xfd, 0x01,0x00, 0x01,0xfd, 0x01,0x07, -0x01,0x41, 0x02,0xfd, 0x01,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x19, 0x01,0x00, 0x07,0xfd, 0x01,0x41, -0x01,0x2b, 0x01,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0xfd, 0x01,0x07, 0x01,0x00, 0x03,0xfd, 0x01,0x6c, -0x01,0x00, 0x01,0xfd, 0x01,0x6c, 0x01,0xfd, 0x01,0x2e, 0x01,0x00, 0x05,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x19, 0x10,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x55, 0x08,0xfd, 0x01,0x00, 0x01,0x41, 0x03,0xfd, -0x01,0x55, 0x01,0x2e, 0x08,0xfd, 0x01,0x2b, 0x01,0x00, 0x09,0xfd, 0x01,0x00, 0x08,0xfd, 0x01,0x83, -0x01,0x00, 0x01,0x2e, 0x03,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x83, 0x04,0xfd, -0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x07,0xfd, 0x01,0x83, 0x01,0x41, 0x01,0x19, 0x02,0x00, 0x01,0x2b, -0x01,0x83, 0x08,0xfd, 0x01,0x41, 0x01,0x00, 0x02,0xfd, 0x01,0x55, 0x07,0xfd, 0x01,0x00, 0x05,0xfd, -0x01,0x00, 0x07,0xfd, 0x01,0x00, 0x01,0x07, 0x02,0xfd, 0x01,0x83, 0x01,0x2b, 0x01,0x00, 0x01,0x83, -0x07,0xfd, 0x01,0x55, 0x01,0x00, 0x01,0x2b, 0x01,0x6c, 0x0a,0xfd, 0x01,0x07, 0x01,0x00, 0x01,0x6c, -0x05,0xfd, 0x01,0x55, 0x01,0x00, 0x02,0xfd, 0x01,0x07, 0x01,0x00, 0x04,0xfd, 0x01,0x83, 0x03,0xfd, -0x01,0x2b, 0x01,0x07, 0x05,0xfd, 0x01,0x6c, 0x05,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x2b, 0x01,0x00, -0x05,0xfd, 0x01,0x83, 0x01,0xfd, 0x01,0x55, 0x01,0x2b, 0x01,0xfd, 0x01,0x19, 0x01,0x07, 0x80,0x90,0xfd, -0x01,0x19, 0x01,0x00, 0x01,0x2b, 0x01,0x00, 0x01,0x6c, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x02,0x2b, -0x01,0x83, 0x02,0xfd, 0x01,0x41, 0x01,0x2b, 0x01,0xfd, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x41, -0x05,0xfd, 0x01,0x00, 0x02,0xfd, 0x01,0x00, 0x04,0x41, 0x02,0xfd, 0x01,0x00, 0x03,0xfd, 0x01,0x00, -0x05,0xfd, 0x01,0x00, 0x07,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x2b, 0x01,0x83, 0x03,0xfd, 0x01,0x55, -0x01,0x2b, 0x01,0x41, 0x01,0x2b, 0x01,0x83, 0x01,0x41, 0x01,0x00, 0x01,0x6c, 0x01,0xfd, 0x01,0x00, -0x01,0xfd, 0x01,0x2b, 0x01,0x41, 0x02,0xfd, 0x01,0x2b, 0x01,0x07, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, -0x01,0x55, 0x08,0xfd, 0x01,0x00, 0x02,0x2b, 0x02,0x00, 0x01,0x2b, 0x01,0x83, 0x03,0xfd, 0x01,0x00, -0x01,0x19, 0x01,0xfd, 0x03,0x00, 0x01,0x2e, 0x06,0xfd, 0x01,0x83, 0x01,0x00, 0x01,0x19, 0x0d,0xfd, -0x01,0x2b, 0x02,0x00, 0x01,0x6c, 0x09,0xfd, 0x01,0x2e, 0x06,0x00, 0x06,0xfd, 0x01,0x2e, 0x01,0x00, -0x01,0x2b, 0x0a,0xfd, 0x01,0x00, 0x09,0xfd, 0x01,0x41, 0x04,0xfd, 0x01,0x00, 0x04,0xfd, 0x01,0x2e, -0x03,0xfd, 0x01,0x6c, 0x01,0x2b, 0x01,0x00, 0x01,0x2e, 0x09,0xfd, 0x01,0x00, 0x01,0x2b, 0x01,0x2e, -0x0c,0xfd, 0x01,0x2b, 0x01,0x00, 0x03,0x2b, 0x02,0x00, 0x04,0xfd, 0x01,0x00, 0x05,0xfd, 0x01,0x00, -0x07,0xfd, 0x01,0x83, 0x04,0x00, 0x01,0x2b, 0x01,0x83, 0x09,0xfd, 0x01,0x6c, 0x01,0x2b, 0x02,0x00, -0x0a,0xfd, 0x01,0x19, 0x01,0x00, 0x01,0x55, 0x04,0xfd, 0x01,0x00, 0x01,0x19, 0x02,0xfd, 0x01,0x83, -0x01,0x2b, 0x04,0x00, 0x01,0x2b, 0x03,0xfd, 0x01,0x6c, 0x02,0x00, 0x03,0x2b, 0x02,0x00, 0x06,0xfd, -0x01,0x55, 0x01,0x2b, 0x01,0x83, 0x07,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x83, 0x01,0x2b, 0x01,0x19, -0x80,0x8e,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, 0x02,0xfd, 0x01,0x41, 0x01,0x00, 0x01,0x41, -0x03,0xfd, 0x02,0x2b, 0x02,0xfd, 0x01,0x41, 0x01,0x2b, 0x01,0x19, 0x01,0x00, 0x01,0x19, 0x01,0x83, -0x06,0xfd, 0x01,0x00, 0x07,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x19, 0x01,0xfd, 0x01,0x6c, 0x01,0x00, -0x01,0x2b, 0x05,0xfd, 0x01,0x00, 0x09,0xfd, 0x01,0x55, 0x01,0x41, 0x01,0x83, 0x06,0xfd, 0x01,0x6c, -0x01,0x41, 0x01,0x2b, 0x01,0x41, 0x01,0x00, 0x01,0x6c, 0x02,0xfd, 0x01,0x2b, 0x01,0x00, 0x01,0x2b, -0x07,0xfd, 0x01,0x41, 0x01,0x83, 0x0a,0xfd, 0x01,0x55, 0x01,0x41, 0x01,0x55, 0x06,0xfd, 0x01,0x55, -0x03,0xfd, 0x02,0x55, 0x08,0xfd, 0x01,0x55, 0x01,0x2b, 0x0d,0xfd, 0x01,0x55, 0x01,0x6c, 0x18,0xfd, -0x01,0x55, 0x01,0x6c, 0x0b,0xfd, 0x01,0x2b, 0x0e,0xfd, 0x01,0x2b, 0x08,0xfd, 0x01,0x83, 0x01,0x2b, -0x01,0x83, 0x1a,0xfd, 0x01,0x83, 0x03,0x41, 0x01,0x6c, 0x03,0xfd, 0x01,0x6c, 0x01,0x00, 0x01,0x2b, -0x05,0xfd, 0x01,0x00, 0x09,0xfd, 0x01,0x55, 0x01,0x41, 0x01,0x83, 0x0e,0xfd, 0x01,0x83, 0x0b,0xfd, -0x01,0x19, 0x01,0x83, 0x04,0xfd, 0x01,0x6c, 0x01,0x83, 0x0e,0xfd, 0x01,0x83, 0x03,0x41, 0x13,0xfd, -0x01,0x2e, 0x01,0x00, 0x01,0x2b, 0x80,0x95,0xfd, 0x01,0x83, 0x3c,0xfd, 0x01,0x83, 0x01,0x6c, -0xb6,0xd5,0xfd -}; diff --git a/osfmk/kern/counters.c b/osfmk/kern/counters.c index 5116219f0..c1704b6e4 100644 --- a/osfmk/kern/counters.c +++ b/osfmk/kern/counters.c @@ -172,9 +172,9 @@ mach_counter_t c_vm_fault_page_block_backoff_kernel = 0; mach_counter_t c_vm_fault_page_block_busy_kernel = 0; mach_counter_t c_vm_fault_retry_on_w_prot; mach_counter_t c_vm_fault_wait_on_unlock; -mach_counter_t c_vm_map_simplified_lower = 0; -mach_counter_t c_vm_map_simplified_upper = 0; +mach_counter_t c_vm_map_simplified = 0; mach_counter_t c_vm_map_simplify_called = 0; +mach_counter_t c_vm_map_simplify_entry_called = 0; mach_counter_t c_vm_page_wait_block = 0; mach_counter_t c_vm_pageout_block = 0; mach_counter_t c_vm_pageout_scan_block = 0; diff --git a/osfmk/kern/counters.h b/osfmk/kern/counters.h index 7921e0172..8fe140e0a 100644 --- a/osfmk/kern/counters.h +++ b/osfmk/kern/counters.h @@ -199,9 +199,9 @@ extern mach_counter_t c_vm_fault_page_block_backoff_kernel; extern mach_counter_t c_vm_fault_page_block_busy_kernel; extern mach_counter_t c_vm_fault_retry_on_w_prot; extern mach_counter_t c_vm_fault_wait_on_unlock; -extern mach_counter_t c_vm_map_simplified_lower; -extern mach_counter_t c_vm_map_simplified_upper; +extern mach_counter_t c_vm_map_simplified; extern mach_counter_t c_vm_map_simplify_called; +extern mach_counter_t c_vm_map_simplify_entry_called; extern mach_counter_t c_vm_page_wait_block; extern mach_counter_t c_vm_pageout_block; extern mach_counter_t c_vm_pageout_scan_block; diff --git a/osfmk/kern/machine.c b/osfmk/kern/machine.c index 5c643f6cb..81ec54fed 100644 --- a/osfmk/kern/machine.c +++ b/osfmk/kern/machine.c @@ -253,6 +253,10 @@ processor_shutdown( processor_doshutdown(processor); splx(s); +#ifdef __ppc__ + cpu_exit_wait(processor->slot_num); +#endif + return (KERN_SUCCESS); } diff --git a/osfmk/ppc/chud/chud_spr.h.orig b/osfmk/ppc/chud/chud_spr.h.orig deleted file mode 100644 index efdd34a59..000000000 --- a/osfmk/ppc/chud/chud_spr.h.orig +++ /dev/null @@ -1,236 +0,0 @@ -/* - * Copyright (c) 2003 Apple Computer, Inc. All rights reserved. - * - * @APPLE_LICENSE_HEADER_START@ - * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. - * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. - * - * @APPLE_LICENSE_HEADER_END@ - */ - -#ifndef _CHUD_SPR_H_ -#define _CHUD_SPR_H_ - -/* PPC SPRs - 32-bit and 64-bit implementations */ -#define chud_ppc_srr0 26 -#define chud_ppc_srr1 27 -#define chud_ppc_dsisr 18 -#define chud_ppc_dar 19 -#define chud_ppc_dec 22 -#define chud_ppc_sdr1 25 -#define chud_ppc_sprg0 272 -#define chud_ppc_sprg1 273 -#define chud_ppc_sprg2 274 -#define chud_ppc_sprg3 275 -#define chud_ppc_ear 282 -#define chud_ppc_tbl 284 -#define chud_ppc_tbu 285 -#define chud_ppc_pvr 287 -#define chud_ppc_ibat0u 528 -#define chud_ppc_ibat0l 529 -#define chud_ppc_ibat1u 530 -#define chud_ppc_ibat1l 531 -#define chud_ppc_ibat2u 532 -#define chud_ppc_ibat2l 533 -#define chud_ppc_ibat3u 534 -#define chud_ppc_ibat3l 535 -#define chud_ppc_dbat0u 536 -#define chud_ppc_dbat0l 537 -#define chud_ppc_dbat1u 538 -#define chud_ppc_dbat1l 539 -#define chud_ppc_dbat2u 540 -#define chud_ppc_dbat2l 541 -#define chud_ppc_dbat3u 542 -#define chud_ppc_dbat3l 543 -#define chud_ppc_dabr 1013 -#define chud_ppc_msr 10000 /* FAKE */ - -/* PPC SPRs - 32-bit implementations */ -#define chud_ppc32_sr0 20000 /* FAKE */ -#define chud_ppc32_sr1 20001 /* FAKE */ -#define chud_ppc32_sr2 20002 /* FAKE */ -#define chud_ppc32_sr3 20003 /* FAKE */ -#define chud_ppc32_sr4 20004 /* FAKE */ -#define chud_ppc32_sr5 20005 /* FAKE */ -#define chud_ppc32_sr6 20006 /* FAKE */ -#define chud_ppc32_sr7 20007 /* FAKE */ -#define chud_ppc32_sr8 20008 /* FAKE */ -#define chud_ppc32_sr9 20009 /* FAKE */ -#define chud_ppc32_sr10 20010 /* FAKE */ -#define chud_ppc32_sr11 20011 /* FAKE */ -#define chud_ppc32_sr12 20012 /* FAKE */ -#define chud_ppc32_sr13 20013 /* FAKE */ -#define chud_ppc32_sr14 20014 /* FAKE */ -#define chud_ppc32_sr15 20015 /* FAKE */ - -/* PPC SPRs - 64-bit implementations */ -#define chud_ppc64_asr 280 - -/* PPC SPRs - 750/750CX/750CXe/750FX Specific */ -#define chud_750_upmc1 937 -#define chud_750_upmc2 938 -#define chud_750_upmc3 941 -#define chud_750_upmc4 942 -#define chud_750_mmcr0 952 -#define chud_750_pmc1 953 -#define chud_750_pmc2 954 -#define chud_750_sia 955 -#define chud_750_mmcr1 956 -#define chud_750_pmc3 957 -#define chud_750_pmc4 958 -#define chud_750_hid0 1008 -#define chud_750_hid1 1009 -#define chud_750_iabr 1010 -#define chud_750_l2cr 1017 -#define chud_750_ictc 1019 -#define chud_750_thrm1 1020 -#define chud_750_thrm2 1021 -#define chud_750_thrm3 1022 -#define chud_750fx_ibat4u 560 /* 750FX only */ -#define chud_750fx_ibat4l 561 /* 750FX only */ -#define chud_750fx_ibat5u 562 /* 750FX only */ -#define chud_750fx_ibat5l 563 /* 750FX only */ -#define chud_750fx_ibat6u 564 /* 750FX only */ -#define chud_750fx_ibat6l 565 /* 750FX only */ -#define chud_750fx_ibat7u 566 /* 750FX only */ -#define chud_750fx_ibat7l 567 /* 750FX only */ -#define chud_750fx_dbat4u 568 /* 750FX only */ -#define chud_750fx_dbat4l 569 /* 750FX only */ -#define chud_750fx_dbat5u 570 /* 750FX only */ -#define chud_750fx_dbat5l 571 /* 750FX only */ -#define chud_750fx_dbat6u 572 /* 750FX only */ -#define chud_750fx_dbat6l 573 /* 750FX only */ -#define chud_750fx_dbat7u 574 /* 750FX only */ -#define chud_750fx_dbat7l 575 /* 750FX only */ -#define chud_750fx_hid2 1016 /* 750FX only */ - -/* PPC SPRs - 7400/7410 Specific */ -#define chud_7400_upmc1 937 -#define chud_7400_upmc2 938 -#define chud_7400_upmc3 941 -#define chud_7400_upmc4 942 -#define chud_7400_mmcr2 944 -#define chud_7400_bamr 951 -#define chud_7400_mmcr0 952 -#define chud_7400_pmc1 953 -#define chud_7400_pmc2 954 -#define chud_7400_siar 955 -#define chud_7400_mmcr1 956 -#define chud_7400_pmc3 957 -#define chud_7400_pmc4 958 -#define chud_7400_sda 959 -#define chud_7400_hid0 1008 -#define chud_7400_hid1 1009 -#define chud_7400_iabr 1010 -#define chud_7400_msscr0 1014 -#define chud_7410_l2pmcr 1016 /* 7410 only */ -#define chud_7400_l2cr 1017 -#define chud_7400_ictc 1019 -#define chud_7400_thrm1 1020 -#define chud_7400_thrm2 1021 -#define chud_7400_thrm3 1022 -#define chud_7400_pir 1023 - -/* PPC SPRs - 7450/7455 Specific */ -#define chud_7455_sprg4 276 /* 7455 only */ -#define chud_7455_sprg5 277 /* 7455 only */ -#define chud_7455_sprg6 278 /* 7455 only */ -#define chud_7455_sprg7 279 /* 7455 only */ -#define chud_7455_ibat4u 560 /* 7455 only */ -#define chud_7455_ibat4l 561 /* 7455 only */ -#define chud_7455_ibat5u 562 /* 7455 only */ -#define chud_7455_ibat5l 563 /* 7455 only */ -#define chud_7455_ibat6u 564 /* 7455 only */ -#define chud_7455_ibat6l 565 /* 7455 only */ -#define chud_7455_ibat7u 566 /* 7455 only */ -#define chud_7455_ibat7l 567 /* 7455 only */ -#define chud_7455_dbat4u 568 /* 7455 only */ -#define chud_7455_dbat4l 569 /* 7455 only */ -#define chud_7455_dbat5u 570 /* 7455 only */ -#define chud_7455_dbat5l 571 /* 7455 only */ -#define chud_7455_dbat6u 572 /* 7455 only */ -#define chud_7455_dbat6l 573 /* 7455 only */ -#define chud_7455_dbat7u 574 /* 7455 only */ -#define chud_7455_dbat7l 575 /* 7455 only */ -#define chud_7450_upmc5 929 -#define chud_7450_upmc6 930 -#define chud_7450_upmc1 937 -#define chud_7450_upmc2 938 -#define chud_7450_upmc3 941 -#define chud_7450_upmc4 942 -#define chud_7450_mmcr2 944 -#define chud_7450_pmc5 945 -#define chud_7450_pmc6 946 -#define chud_7450_bamr 951 -#define chud_7450_mmcr0 952 -#define chud_7450_pmc1 953 -#define chud_7450_pmc2 954 -#define chud_7450_siar 955 -#define chud_7450_mmcr1 956 -#define chud_7450_pmc3 957 -#define chud_7450_pmc4 958 -#define chud_7450_tlbmiss 980 -#define chud_7450_ptehi 981 -#define chud_7450_ptelo 982 -#define chud_7450_l3pm 983 -#define chud_7450_hid0 1008 -#define chud_7450_hid1 1009 -#define chud_7450_iabr 1010 -#define chud_7450_ldstdb 1012 -#define chud_7450_msscr0 1014 -#define chud_7450_msssr0 1015 -#define chud_7450_ldstcr 1016 -#define chud_7450_l2cr 1017 -#define chud_7450_l3cr 1018 -#define chud_7450_ictc 1019 -#define chud_7450_ictrl 1011 -#define chud_7450_thrm1 1020 -#define chud_7450_thrm2 1021 -#define chud_7450_thrm3 1022 -#define chud_7450_pir 1023 - -/* PPC SPRs - 970 Specific */ -#define chud_970_vrsave 256 -#define chud_970_ummcra 770 -#define chud_970_upmc1 771 -#define chud_970_upmc2 772 -#define chud_970_upmc3 773 -#define chud_970_upmc4 774 -#define chud_970_upmc5 775 -#define chud_970_upmc6 776 -#define chud_970_upmc7 777 -#define chud_970_upmc8 778 -#define chud_970_ummcr0 779 -#define chud_970_usiar 780 -#define chud_970_usdar 781 -#define chud_970_ummcr1 782 -#define chud_970_uimc 783 -#define chud_970_mmcra 786 -#define chud_970_pmc1 787 -#define chud_970_pmc2 788 -#define chud_970_pmc3 789 -#define chud_970_pmc4 790 -#define chud_970_pmc5 791 -#define chud_970_pmc6 792 -#define chud_970_pmc7 793 -#define chud_970_pmc8 794 -#define chud_970_mmcr0 795 -#define chud_970_siar 796 -#define chud_970_sdar 797 -#define chud_970_mmcr1 798 -#define chud_970_imc 799 - - -#endif // _CHUD_SPR_H_ diff --git a/osfmk/ppc/cpu.c b/osfmk/ppc/cpu.c index 9e3c01ee1..99f01d907 100644 --- a/osfmk/ppc/cpu.c +++ b/osfmk/ppc/cpu.c @@ -51,6 +51,9 @@ int real_ncpus = 1; int wncpu = NCPUS; resethandler_t resethandler_target; +decl_simple_lock_data(static,SignalReadyLock); +static unsigned int SignalReadyWait = 0xFFFFFFFFU; + #define MMCR0_SUPPORT_MASK 0xf83f1fff #define MMCR1_SUPPORT_MASK 0xffc00000 #define MMCR2_SUPPORT_MASK 0x80000000 @@ -362,7 +365,16 @@ cpu_machine_init( cpu_sync_timebase(); } ml_init_interrupt(); + if (cpu != master_cpu) + simple_lock(&SignalReadyLock); tproc_info->cpu_flags |= BootDone|SignalReady; + if (cpu != master_cpu) { + if (SignalReadyWait != 0) { + SignalReadyWait--; + thread_wakeup(&tproc_info->cpu_flags); + } + simple_unlock(&SignalReadyLock); + } } kern_return_t @@ -414,6 +426,11 @@ cpu_start( } else { extern void _start_cpu(void); + if (SignalReadyWait == 0xFFFFFFFFU) { + SignalReadyWait = 0; + simple_lock_init(&SignalReadyLock,0); + } + proc_info->cpu_number = cpu; proc_info->cpu_flags &= BootDone; proc_info->istackptr = (vm_offset_t)&intstack + (INTSTACK_SIZE*(cpu+1)) - FM_SIZE; @@ -464,11 +481,28 @@ cpu_start( proc_info->start_paddr == EXCEPTION_VECTOR(T_RESET)) { /* TODO: realese mutex lock reset_handler_lock */ + } else { + simple_lock(&SignalReadyLock); + + while (!((*(volatile short *)&per_proc_info[cpu].cpu_flags) & SignalReady)) { + SignalReadyWait++; + thread_sleep_simple_lock((event_t)&per_proc_info[cpu].cpu_flags, + &SignalReadyLock, THREAD_UNINT); + } + simple_unlock(&SignalReadyLock); } return(ret); } } +void +cpu_exit_wait( + int cpu) +{ + if ( cpu != master_cpu) + while (!((*(volatile short *)&per_proc_info[cpu].cpu_flags) & SleepState)) {}; +} + perfTrap perfCpuSigHook = 0; /* Pointer to CHUD cpu signal hook routine */ /* @@ -594,6 +628,13 @@ cpu_signal_handler( } return; + case CPRQsps: + { + extern void ml_set_processor_speed_slave(unsigned long speed); + + ml_set_processor_speed_slave(holdParm2); + return; + } default: panic("cpu_signal_handler: unknown CPU request - %08X\n", holdParm1); return; diff --git a/osfmk/ppc/exception.h b/osfmk/ppc/exception.h index 96168ab05..c2c549a2c 100644 --- a/osfmk/ppc/exception.h +++ b/osfmk/ppc/exception.h @@ -329,6 +329,7 @@ struct per_proc_info { #define CPRQsegload 2 /* Segment registers reload */ #define CPRQscom 3 /* SCOM */ #define CPRQchud 4 /* CHUD perfmon */ +#define CPRQsps 5 /* Set Processor Speed */ unsigned int MPsigpParm0; /* SIGP parm 0 */ unsigned int MPsigpParm1; /* SIGP parm 1 */ unsigned int MPsigpParm2; /* SIGP parm 2 */ diff --git a/osfmk/ppc/lowmem_vectors.s.orig b/osfmk/ppc/lowmem_vectors.s.orig deleted file mode 100644 index 6eb7f9f88..000000000 --- a/osfmk/ppc/lowmem_vectors.s.orig +++ /dev/null @@ -1,3403 +0,0 @@ -/* - * Copyright (c) 2000 Apple Computer, Inc. All rights reserved. - * - * @APPLE_LICENSE_HEADER_START@ - * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. - * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. - * - * @APPLE_LICENSE_HEADER_END@ - */ -/* - * @OSF_COPYRIGHT@ - */ - -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -#define ESPDEBUG 0 -#define INSTRUMENT 0 - -#define featAltivec 29 -#define wasNapping 30 - -#define VECTOR_SEGMENT .section __VECTORS, __interrupts - - VECTOR_SEGMENT - - - .globl EXT(ExceptionVectorsStart) - -EXT(ExceptionVectorsStart): /* Used if relocating the exception vectors */ -baseR: /* Used so we have more readable code */ - -; -; Handle system reset. -; We do not ever expect a hard reset so we do not actually check. -; When we come here, we check for a RESET_HANDLER_START (which means we are -; waking up from sleep), a RESET_HANDLER_BUPOR (which is using for bring up -; when starting directly from a POR), and RESET_HANDLER_IGNORE (which means -; ignore the interrupt). -; -; Some machines (so far, 32-bit guys) will always ignore a non-START interrupt. -; The ones who do take it, check if the interrupt is too be ignored. This is -; always the case until the previous reset is handled (i.e., we have exited -; from the debugger). -; - . = 0xf0 - .globl EXT(ResetHandler) -EXT(ResetHandler): - .long 0x0 - .long 0x0 - .long 0x0 - - . = 0x100 -.L_handler100: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - lwz r13,lo16(EXT(ResetHandler)-EXT(ExceptionVectorsStart)+RESETHANDLER_TYPE)(br0) ; Get reset type - mfcr r11 - cmpi cr0,r13,RESET_HANDLER_START - bne resetexc - - li r11,RESET_HANDLER_NULL - stw r11,lo16(EXT(ResetHandler)-EXT(ExceptionVectorsStart)+RESETHANDLER_TYPE)(br0) ; Clear reset type - - lwz r4,lo16(EXT(ResetHandler)-EXT(ExceptionVectorsStart)+RESETHANDLER_CALL)(br0) - lwz r3,lo16(EXT(ResetHandler)-EXT(ExceptionVectorsStart)+RESETHANDLER_ARG)(br0) - mtlr r4 - blr - -resetexc: cmplwi r13,RESET_HANDLER_BUPOR ; Special bring up POR sequence? - bne resetexc2 ; No... - lis r4,hi16(EXT(resetPOR)) ; Get POR code - ori r4,r4,lo16(EXT(resetPOR)) ; The rest - mtlr r4 ; Set it - blr ; Jump to it.... - -resetexc2: cmplwi cr1,r13,RESET_HANDLER_IGNORE ; Are we ignoring these? (Software debounce) - - mfsprg r13,0 ; Get per_proc - lwz r13,pfAvailable(r13) ; Get the features - rlwinm. r13,r13,0,pf64Bitb,pf64Bitb ; Is this a 64-bit machine? - cror cr1_eq,cr0_eq,cr1_eq ; See if we want to take this - bne-- cr1,rxCont ; Yes, continue... - bne-- rxIg64 ; 64-bit path... - - mtcr r11 ; Restore the CR - mfsprg r13,2 ; Restore R13 - mfsprg r11,0 ; Get per_proc - lwz r11,pfAvailable(r11) ; Get the features - mtsprg 2,r11 ; Restore sprg2 - mfsprg r11,3 ; Restore R11 - rfi ; Return and ignore the reset - -rxIg64: mtcr r11 ; Restore the CR - mfsprg r11,0 ; Get per_proc - mtspr hsprg0,r14 ; Save a register - lwz r14,UAW(r11) ; Get the User Assist Word - mfsprg r13,2 ; Restore R13 - lwz r11,pfAvailable(r11) ; Get the features - mtsprg 2,r11 ; Restore sprg2 - mfsprg r11,3 ; Restore R11 - mtsprg 3,r14 ; Set the UAW in sprg3 - mfspr r14,hsprg0 ; Restore R14 - rfid ; Return and ignore the reset - -rxCont: mtcr r11 - li r11,RESET_HANDLER_IGNORE ; Get set to ignore - stw r11,lo16(EXT(ResetHandler)-EXT(ExceptionVectorsStart)+RESETHANDLER_TYPE)(br0) ; Start ignoring these - mfsprg r13,1 /* Get the exception save area */ - li r11,T_RESET /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -/* - * Machine check - */ - - . = 0x200 -.L_handler200: - mtsprg 2,r13 ; Save R13 - mtsprg 3,r11 ; Save R11 - - .globl EXT(extPatchMCK) -LEXT(extPatchMCK) ; This is patched to a nop for 64-bit - b h200aaa ; Skip 64-bit code... - -; -; Fall through here for 970 MCKs. -; - - li r11,1 ; ? - sldi r11,r11,32+3 ; ? - mfspr r13,hid4 ; ? - or r11,r11,r13 ; ? - sync - mtspr hid4,r11 ; ? - isync - li r11,1 ; ? - sldi r11,r11,32+8 ; ? - andc r13,r13,r11 ; ? - lis r11,0xE000 ; Get the unlikeliest ESID possible - sync - mtspr hid4,r13 ; ? - isync ; ? - - srdi r11,r11,1 ; ? - slbie r11 ; ? - sync - isync - - li r11,T_MACHINE_CHECK ; Set rupt code - b .L_exception_entry ; Join common... - -; -; Preliminary checking of other MCKs -; - -h200aaa: mfsrr1 r11 ; Get the SRR1 - mfcr r13 ; Save the CR - - rlwinm. r11,r11,0,dcmck,dcmck ; ? - beq+ notDCache ; ? - - sync - mfspr r11,msscr0 ; ? - dssall ; ? - sync - isync - - oris r11,r11,hi16(dl1hwfm) ; ? - mtspr msscr0,r11 ; ? - -rstbsy: mfspr r11,msscr0 ; ? - - rlwinm. r11,r11,0,dl1hwf,dl1hwf ; ? - bne rstbsy ; ? - - sync ; ? - - mfsprg r11,0 ; Get the per_proc - mtcrf 255,r13 ; Restore CRs - lwz r13,hwMachineChecks(r11) ; Get old count - addi r13,r13,1 ; Count this one - stw r13,hwMachineChecks(r11) ; Set new count - lwz r11,pfAvailable(r11) ; Get the feature flags - mfsprg r13,2 ; Restore R13 - mtsprg 2,r11 ; Set the feature flags - mfsprg r11,3 ; Restore R11 - rfi ; Return - -notDCache: mtcrf 255,r13 ; Restore CRs - li r11,T_MACHINE_CHECK ; Set rupt code - b .L_exception_entry ; Join common... - - -/* - * Data access - page fault, invalid memory rights for operation - */ - - . = 0x300 -.L_handler300: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_DATA_ACCESS /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - - -/* - * Data segment - */ - - . = 0x380 -.L_handler380: - mtsprg 2,r13 ; Save R13 - mtsprg 3,r11 ; Save R11 - li r11,T_DATA_SEGMENT ; Set rupt code - b .L_exception_entry ; Join common... - -/* - * Instruction access - as for data access - */ - - . = 0x400 -.L_handler400: - mtsprg 2,r13 ; Save R13 - mtsprg 3,r11 ; Save R11 - li r11,T_INSTRUCTION_ACCESS ; Set rupt code - b .L_exception_entry ; Join common... - -/* - * Instruction segment - */ - - . = 0x480 -.L_handler480: - mtsprg 2,r13 ; Save R13 - mtsprg 3,r11 ; Save R11 - li r11,T_INSTRUCTION_SEGMENT ; Set rupt code - b .L_exception_entry ; Join common... - -/* - * External interrupt - */ - - . = 0x500 -.L_handler500: - mtsprg 2,r13 ; Save R13 - mtsprg 3,r11 ; Save R11 - li r11,T_INTERRUPT ; Set rupt code - b .L_exception_entry ; Join common... - -/* - * Alignment - many reasons - */ - - . = 0x600 -.L_handler600: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_ALIGNMENT|T_FAM /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -/* - * Program - floating point exception, illegal inst, priv inst, user trap - */ - - . = 0x700 -.L_handler700: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - -#if 0 - mfsrr1 r13 ; (BRINGUP) - mfcr r11 ; (BRINGUP) - rlwinm. r13,r13,0,12,12 ; (BRINGUP) - crmove cr1_eq,cr0_eq ; (BRINGUP) - mfsrr1 r13 ; (BRINGUP) - rlwinm. r13,r13,0,MSR_PR_BIT,MSR_PR_BIT ; (BRINGUP) - crorc cr0_eq,cr1_eq,cr0_eq ; (BRINGUP) - bf-- cr0_eq,. ; (BRINGUP) - mtcrf 255,r11 ; (BRINGUP) -#endif - - li r11,T_PROGRAM|T_FAM /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -/* - * Floating point disabled - */ - - . = 0x800 -.L_handler800: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_FP_UNAVAILABLE /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - - -/* - * Decrementer - DEC register has passed zero. - */ - - . = 0x900 -.L_handler900: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_DECREMENTER /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -/* - * I/O controller interface error - MACH does not use this - */ - - . = 0xA00 -.L_handlerA00: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_IO_ERROR /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -/* - * Reserved - */ - - . = 0xB00 -.L_handlerB00: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_RESERVED /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -; -; System call - generated by the sc instruction -; -; We handle the ultra-fast traps right here. They are: -; -; 0xFFFFFFFF - BlueBox only - MKIsPreemptiveTask -; 0xFFFFFFFE - BlueBox only - kcNKIsPreemptiveTaskEnv -; 0x00007FF2 - User state only - thread info -; 0x00007FF3 - User state only - floating point / vector facility status -; 0x00007FF4 - Kernel only - loadMSR - not used on 64-bit machines -; -; Note: none handled if virtual machine is running -; Also, it we treat SCs as kernel SCs if the RI bit is set -; - - . = 0xC00 -.L_handlerC00: - mtsprg 3,r11 ; Save R11 - mfsprg r11,2 ; Get the feature flags - - mtsprg 2,r13 ; Save R13 - rlwinm r11,r11,pf64Bitb-4,4,4 ; Get the 64-bit flag - mfsrr1 r13 ; Get SRR1 for loadMSR - rlwimi r11,r13,MSR_PR_BIT-5,5,5 ; Move the PR bit to bit 1 - mfcr r13 ; Save the CR - - mtcrf 0x40,r11 ; Get the top 3 CR bits to 64-bit, PR, sign - - cmpwi r0,lo16(-3) ; Eliminate all negatives but -1 and -2 - mfsprg r11,0 ; Get the per_proc - bf-- 5,uftInKern ; We came from the kernel... - ble-- notufp ; This is a mach call - - lwz r11,spcFlags(r11) ; Pick up the special flags - - cmpwi cr7,r0,lo16(-1) ; Is this a BlueBox call? - cmplwi cr2,r0,0x7FF2 ; Ultra fast path cthread info call? - cmplwi cr3,r0,0x7FF3 ; Ultra fast path facility status? - cror cr4_eq,cr2_eq,cr3_eq ; Is this one of the two ufts we handle here? - - ble-- cr7,uftBBCall ; We think this is blue box call... - - rlwinm r11,r11,16,16,31 ; Extract spcFlags upper bits - andi. r11,r11,hi16(runningVM|FamVMena|FamVMmode) - cmpwi cr0,r11,hi16(runningVM|FamVMena|FamVMmode) ; Test in VM FAM - beq-- cr0,ufpVM ; fast paths running VM ... - - bne-- cr4_eq,notufp ; Bail ifthis is not a uft... - -; -; Handle normal user ultra-fast trap -; - - li r3,spcFlags ; Assume facility status - 0x7FF3 - - beq-- cr3,uftFacStat ; This is a facilities status call... - - li r3,UAW ; This is really a thread info call - 0x7FF2 - -uftFacStat: mfsprg r11,0 ; Get the per_proc - lwzx r3,r11,r3 ; Get the UAW or spcFlags field - -uftExit: bt++ 4,uftX64 ; Go do the 64-bit exit... - - lwz r11,pfAvailable(r11) ; Get the feature flags - mtcrf 255,r13 ; Restore the CRs - mfsprg r13,2 ; Restore R13 - mtsprg 2,r11 ; Set the feature flags - mfsprg r11,3 ; Restore R11 - - rfi ; Back to our guy... - -uftX64: mtspr hsprg0,r14 ; Save a register - - lwz r14,UAW(r11) ; Get the User Assist Word - lwz r11,pfAvailable(r11) ; Get the feature flags - - mtcrf 255,r13 ; Restore the CRs - - mfsprg r13,2 ; Restore R13 - mtsprg 2,r11 ; Set the feature flags - mfsprg r11,3 ; Restore R11 - mtsprg 3,r14 ; Set the UAW in sprg3 - mfspr r14,hsprg0 ; Restore R14 - - rfid ; Back to our guy... - -; -; Handle BlueBox ultra-fast trap -; - -uftBBCall: andi. r11,r11,bbNoMachSC|bbPreemptive ; Clear what we do not need - cmplwi r11,bbNoMachSC ; See if we are trapping syscalls - blt-- notufp ; No... - - rlwimi r13,r11,bbPreemptivebit-cr0_eq,cr0_eq,cr0_eq ; Copy preemptive task flag into user cr0_eq - - mfsprg r11,0 ; Get the per proc - - beq++ cr7,uftExit ; For MKIsPreemptiveTask we are done... - - lwz r0,ppbbTaskEnv(r11) ; Get the shadowed taskEnv from per_proc_area - b uftExit ; We are really all done now... - -; Kernel ultra-fast trap - -uftInKern: cmplwi r0,0x7FF4 ; Ultra fast path loadMSR? - bne- notufp ; Someone is trying to cheat... - - mtsrr1 r3 ; Set new MSR - - b uftExit ; Go load the new MSR... - -notufp: mtcrf 0xFF,r13 ; Restore the used CRs - li r11,T_SYSTEM_CALL|T_FAM ; Set interrupt code - b .L_exception_entry ; Join common... - - - - - -/* - * Trace - generated by single stepping - * performance monitor BE branch enable tracing/logging - * is also done here now. while this is permanently in the - * system the impact is completely unnoticable as this code is - * only executed when (a) a single step or branch exception is - * hit, (b) in the single step debugger case there is so much - * overhead already the few extra instructions for testing for BE - * are not even noticable, (c) the BE logging code is *only* run - * when it is enabled by the tool which will not happen during - * normal system usage - * - * Note that this trace is available only to user state so we do not - * need to set sprg2 before returning. - */ - - . = 0xD00 -.L_handlerD00: - mtsprg 3,r11 ; Save R11 - mfsprg r11,2 ; Get the feature flags - mtsprg 2,r13 ; Save R13 - rlwinm r11,r11,pf64Bitb-4,4,4 ; Get the 64-bit flag - mfcr r13 ; Get the CR - mtcrf 0x40,r11 ; Set the CR - mfsrr1 r11 ; Get the old MSR - rlwinm. r11,r11,0,MSR_PR_BIT,MSR_PR_BIT ; Are we in supervisor state? - - mfsprg r11,0 ; Get the per_proc - lhz r11,PP_CPU_FLAGS(r11) ; Get the flags - crmove cr1_eq,cr0_eq ; Remember if we are in supervisor state - rlwinm. r11,r11,0,traceBEb+16,traceBEb+16 ; Special trace enabled? - cror cr0_eq,cr0_eq,cr1_eq ; Is trace off or supervisor state? - bf-- cr0_eq,specbrtr ; No, we need to trace... - -notspectr: mtcr r13 ; Restore CR - li r11,T_TRACE|T_FAM ; Set interrupt code - b .L_exception_entry ; Join common... - - .align 5 - -; -; We are doing the special branch trace -; - -specbrtr: mfsprg r11,0 ; Get the per_proc area - bt++ 4,sbxx64a ; Jump if 64-bit... - - stw r1,tempr0+4(r11) ; Save in a scratch area - stw r2,tempr1+4(r11) ; Save in a scratch area - stw r3,tempr2+4(r11) ; Save in a scratch area - b sbxx64b ; Skip... - -sbxx64a: std r1,tempr0(r11) ; Save in a scratch area - std r2,tempr1(r11) ; Save in a scratch area - std r3,tempr2(r11) ; Save in a scratch area - -sbxx64b: lis r2,hi16(EXT(pc_trace_buf)) ; Get the top of the buffer - lwz r3,spcTRp(r11) ; Pick up buffer position - ori r2,r2,lo16(EXT(pc_trace_buf)) ; Get the bottom of the buffer - cmplwi cr2,r3,4092 ; Set cr1_eq if we should take exception - mfsrr0 r1 ; Get the pc - stwx r1,r2,r3 ; Save it in the buffer - addi r3,r3,4 ; Point to the next slot - rlwinm r3,r3,0,20,31 ; Wrap the slot at one page - stw r3,spcTRp(r11) ; Save the new slot - - bt++ 4,sbxx64c ; Jump if 64-bit... - - lwz r1,tempr0+4(r11) ; Restore work register - lwz r2,tempr1+4(r11) ; Restore work register - lwz r3,tempr2+4(r11) ; Restore work register - beq cr2,notspectr ; Buffer filled, make a rupt... - b uftExit ; Go restore and leave... - -sbxx64c: ld r1,tempr0(r11) ; Restore work register - ld r2,tempr1(r11) ; Restore work register - ld r3,tempr2(r11) ; Restore work register - beq cr2,notspectr ; Buffer filled, make a rupt... - b uftExit ; Go restore and leave... - -/* - * Floating point assist - */ - - . = 0xE00 -.L_handlerE00: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_FP_ASSIST /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - - -/* - * Performance monitor interruption - */ - - . = 0xF00 -PMIhandler: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_PERF_MON /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - - -/* - * VMX exception - */ - - . = 0xF20 -VMXhandler: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_VMX /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - - - -; -; Instruction translation miss exception - not supported -; - - . = 0x1000 -.L_handler1000: - mtsprg 2,r13 ; Save R13 - mtsprg 3,r11 ; Save R11 - li r11,T_INVALID_EXCP0 ; Set rupt code - b .L_exception_entry ; Join common... - - - -; -; Data load translation miss exception - not supported -; - - . = 0x1100 -.L_handler1100: - mtsprg 2,r13 ; Save R13 - mtsprg 3,r11 ; Save R11 - li r11,T_INVALID_EXCP1 ; Set rupt code - b .L_exception_entry ; Join common... - - - -; -; Data store translation miss exception - not supported -; - - . = 0x1200 -.L_handler1200: - mtsprg 2,r13 ; Save R13 - mtsprg 3,r11 ; Save R11 - li r11,T_INVALID_EXCP2 ; Set rupt code - b .L_exception_entry ; Join common... - - -/* - * Instruction address breakpoint - */ - - . = 0x1300 -.L_handler1300: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_INSTRUCTION_BKPT /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -/* - * System management interrupt - */ - - . = 0x1400 -.L_handler1400: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_SYSTEM_MANAGEMENT /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - - -/* - * Soft Patch - */ - - . = 0x1500 -.L_handler1500: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_SOFT_PATCH /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -; -; Altivec Java Mode Assist interrupt or Maintenace interrupt -; - - . = 0x1600 -.L_handler1600: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_ALTIVEC_ASSIST /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -; -; Altivec Java Mode Assist interrupt or Thermal interruption -; - - . = 0x1700 -.L_handler1700: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_THERMAL /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -; -; Thermal interruption - 64-bit -; - - . = 0x1800 -.L_handler1800: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_ARCHDEP0 /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - -/* - * There is now a large gap of reserved traps - */ - -/* - * Instrumentation interruption - */ - - . = 0x2000 -.L_handler2000: - mtsprg 2,r13 /* Save R13 */ - mtsprg 3,r11 /* Save R11 */ - li r11,T_INSTRUMENTATION /* Set 'rupt code */ - b .L_exception_entry /* Join common... */ - - . = 0x2100 - -/* - * Filter Ultra Fast Path syscalls for VMM - */ -ufpVM: - cmpwi cr2,r0,0x6004 ; Is it vmm_dispatch - bne cr2,notufp ; Exit If not - cmpwi cr5,r3,kvmmResumeGuest ; Compare r3 with kvmmResumeGuest - cmpwi cr2,r3,kvmmSetGuestRegister ; Compare r3 with kvmmSetGuestRegister - cror cr1_eq,cr5_lt,cr2_gt ; Set true if out of VMM Fast syscall range - bt- cr1_eq,notufp ; Exit if out of range - b EXT(vmm_ufp) ; Ultra Fast Path syscall - -/* - * .L_exception_entry(type) - * - * This is the common exception handling routine called by any - * type of system exception. - * - * ENTRY: via a system exception handler, thus interrupts off, VM off. - * r3 has been saved in sprg3 and now contains a number - * representing the exception's origins - * - */ - - .data - .align ALIGN - .globl EXT(exception_entry) -EXT(exception_entry): - .long .L_exception_entry-EXT(ExceptionVectorsStart) /* phys addr of fn */ - - VECTOR_SEGMENT - .align 5 - -.L_exception_entry: - -/* - * - * Here we will save off a mess of registers, the special ones and R0-R12. We use the DCBZ - * instruction to clear and allcoate a line in the cache. This way we won't take any cache - * misses, so these stores won't take all that long. Except the first line that is because - * we can't do a DCBZ if the L1 D-cache is off. The rest we will skip if they are - * off also. - * - * Note that if we are attempting to sleep (as opposed to nap or doze) all interruptions - * are ignored. - */ - - - .globl EXT(extPatch32) - - -LEXT(extPatch32) - b extEntry64 ; Go do 64-bit (patched out for 32-bit) - mfsprg r13,0 ; Load per_proc - lwz r13,next_savearea+4(r13) ; Get the exception save area - stw r0,saver0+4(r13) ; Save register 0 - stw r1,saver1+4(r13) ; Save register 1 - - mfspr r1,hid0 ; Get HID0 - mfcr r0 ; Save the whole CR - - mtcrf 0x20,r1 ; Get set to test for sleep - cror doze,doze,nap ; Remember if we are napping - bf sleep,notsleep ; Skip if we are not trying to sleep - - mtcrf 0x20,r0 ; Restore the CR - lwz r0,saver0+4(r13) ; Restore R0 - lwz r1,saver1+4(r13) ; Restore R1 - mfsprg r13,0 ; Get the per_proc - lwz r11,pfAvailable(r13) ; Get back the feature flags - mfsprg r13,2 ; Restore R13 - mtsprg 2,r11 ; Set sprg2 to the features - mfsprg r11,3 ; Restore R11 - rfi ; Jump back into sleep code... - .long 0 ; Leave these here please... - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - - -; -; This is the 32-bit context saving stuff -; - - .align 5 - -notsleep: stw r2,saver2+4(r13) ; Save this one - bf doze,notspdo ; Skip the next if we are not napping/dozing... - rlwinm r2,r1,0,nap+1,doze-1 ; Clear any possible nap and doze bits - mtspr hid0,r2 ; Clear the nap/doze bits -notspdo: - -#if INSTRUMENT - mfspr r2,pmc1 ; INSTRUMENT - saveinstr[0] - Take earliest possible stamp - stw r2,0x6100+(0x00*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r2,pmc2 ; INSTRUMENT - Get stamp - stw r2,0x6100+(0x00*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r2,pmc3 ; INSTRUMENT - Get stamp - stw r2,0x6100+(0x00*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r2,pmc4 ; INSTRUMENT - Get stamp - stw r2,0x6100+(0x00*16)+0xC(0) ; INSTRUMENT - Save it -#endif - - la r1,saver4(r13) ; Point to the next line in case we need it - crmove wasNapping,doze ; Remember if we were napping - mfsprg r2,0 ; Get the per_proc area - dcbz 0,r1 ; allocate r4-r7 32-byte line in cache - -; -; Remember, we are setting up CR6 with feature flags -; - andi. r1,r11,T_FAM ; Check FAM bit - - stw r3,saver3+4(r13) ; Save this one - stw r4,saver4+4(r13) ; Save this one - andc r11,r11,r1 ; Clear FAM bit - beq+ noFAM ; Is it FAM intercept - mfsrr1 r3 ; Load srr1 - rlwinm. r3,r3,0,MSR_PR_BIT,MSR_PR_BIT ; Are we trapping from supervisor state? - beq+ noFAM ; From supervisor state - lwz r1,spcFlags(r2) ; Load spcFlags - rlwinm r1,r1,1+FamVMmodebit,30,31 ; Extract FamVMenabit and FamVMmodebit - cmpwi cr0,r1,2 ; Check FamVMena set without FamVMmode - bne+ noFAM ; Can this context be FAM intercept - lwz r4,FAMintercept(r2) ; Load exceptions mask to intercept - srwi r1,r11,2 ; divide r11 by 4 - lis r3,0x8000 ; Set r3 to 0x80000000 - srw r1,r3,r1 ; Set bit for current exception - and. r1,r1,r4 ; And current exception with the intercept mask - beq+ noFAM ; Is it FAM intercept - b EXT(vmm_fam_exc) -noFAM: - lwz r1,pfAvailable(r2) ; Get the CPU features flags - la r3,saver8(r13) ; Point to line with r8-r11 - mtcrf 0xE2,r1 ; Put the features flags (that we care about) in the CR - dcbz 0,r3 ; allocate r8-r11 32-byte line in cache - la r3,saver12(r13) ; point to r12-r15 line - lis r4,hi16(MASK(MSR_VEC)|MASK(MSR_FP)|MASK(MSR_ME)) ; Set up the MSR we will use throughout. Note that ME come on here if MCK - stw r6,saver6+4(r13) ; Save this one - ori r4,r4,lo16(MASK(MSR_VEC)|MASK(MSR_FP)|MASK(MSR_ME)) ; Rest of MSR - stw r8,saver8+4(r13) ; Save this one - crmove featAltivec,pfAltivecb ; Set the Altivec flag - mtmsr r4 ; Set MSR - isync - mfsrr0 r6 ; Get the interruption SRR0 - la r8,savesrr0(r13) ; point to line with SRR0, SRR1, CR, XER, and LR - dcbz 0,r3 ; allocate r12-r15 32-byte line in cache - la r3,saver16(r13) ; point to next line - dcbz 0,r8 ; allocate 32-byte line with SRR0, SRR1, CR, XER, and LR - stw r7,saver7+4(r13) ; Save this one - lhz r8,PP_CPU_FLAGS(r2) ; Get the flags - mfsrr1 r7 ; Get the interrupt SRR1 - rlwinm r8,r8,(((31-MSR_BE_BIT)+(traceBEb+16+1))&31),MSR_BE_BIT,MSR_BE_BIT ; Set BE bit if special trace is on - stw r6,savesrr0+4(r13) ; Save the SRR0 - rlwinm r6,r7,(((31-MSR_BE_BIT)+(MSR_PR_BIT+1))&31),MSR_BE_BIT,MSR_BE_BIT ; Move PR bit to BE bit - stw r5,saver5+4(r13) ; Save this one - and r8,r6,r8 ; Remove BE bit only if problem state and special tracing on - mfsprg r6,2 ; Get interrupt time R13 - mtsprg 2,r1 ; Set the feature flags - andc r7,r7,r8 ; Clear BE bit if special trace is on and PR is set - mfsprg r8,3 ; Get rupt time R11 - stw r7,savesrr1+4(r13) ; Save SRR1 - stw r8,saver11+4(r13) ; Save rupt time R11 - stw r6,saver13+4(r13) ; Save rupt R13 - dcbz 0,r3 ; allocate 32-byte line with r16-r19 - la r3,saver20(r13) ; point to next line - -getTB: mftbu r6 ; Get the upper timebase - mftb r7 ; Get the lower timebase - mftbu r8 ; Get the upper one again - cmplw r6,r8 ; Did the top tick? - bne- getTB ; Yeah, need to get it again... - -#if INSTRUMENT - mfspr r6,pmc1 ; INSTRUMENT - saveinstr[1] - Save halfway context save stamp - stw r6,0x6100+(0x01*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r6,pmc2 ; INSTRUMENT - Get stamp - stw r6,0x6100+(0x01*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r6,pmc3 ; INSTRUMENT - Get stamp - stw r6,0x6100+(0x01*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r6,pmc4 ; INSTRUMENT - Get stamp - stw r6,0x6100+(0x01*16)+0xC(0) ; INSTRUMENT - Save it -#endif - - stw r8,ruptStamp(r2) ; Save the top of time stamp - stw r8,SAVtime(r13) ; Save the top of time stamp - stw r7,ruptStamp+4(r2) ; Save the bottom of time stamp - stw r7,SAVtime+4(r13) ; Save the bottom of time stamp - - dcbz 0,r3 ; allocate 32-byte line with r20-r23 - stw r9,saver9+4(r13) ; Save this one - - stw r10,saver10+4(r13) ; Save this one - mflr r4 ; Get the LR - mfxer r10 ; Get the XER - - bf+ wasNapping,notNapping ; Skip if not waking up from nap... - - lwz r6,napStamp+4(r2) ; Pick up low order nap stamp - lis r3,hi16(EXT(machine_idle_ret)) ; Get high part of nap/doze return - lwz r5,napStamp(r2) ; and high order - subfc r7,r6,r7 ; Subtract low stamp from now - lwz r6,napTotal+4(r2) ; Pick up low total - subfe r5,r5,r8 ; Subtract high stamp and borrow from now - lwz r8,napTotal(r2) ; Pick up the high total - addc r6,r6,r7 ; Add low to total - ori r3,r3,lo16(EXT(machine_idle_ret)) ; Get low part of nap/doze return - adde r8,r8,r5 ; Add high and carry to total - stw r6,napTotal+4(r2) ; Save the low total - stw r8,napTotal(r2) ; Save the high total - stw r3,savesrr0+4(r13) ; Modify to return to nap/doze exit - - rlwinm. r3,r1,0,pfSlowNapb,pfSlowNapb ; Should HID1 be restored? - beq notInSlowNap - - lwz r3,pfHID1(r2) ; Get saved HID1 value - mtspr hid1,r3 ; Restore HID1 - -notInSlowNap: - rlwinm. r3,r1,0,pfNoL2PFNapb,pfNoL2PFNapb ; Should MSSCR0 be restored? - beq notNapping - - lwz r3,pfMSSCR0(r2) ; Get saved MSSCR0 value - mtspr msscr0,r3 ; Restore MSSCR0 - sync - isync - -notNapping: stw r12,saver12+4(r13) ; Save this one - - stw r14,saver14+4(r13) ; Save this one - stw r15,saver15+4(r13) ; Save this one - la r14,saver24(r13) ; Point to the next block to save into - mfctr r6 ; Get the CTR - stw r16,saver16+4(r13) ; Save this one - la r15,savectr(r13) ; point to line with CTR, DAR, DSISR, Exception code, and VRSAVE - stw r4,savelr+4(r13) ; Save rupt LR - - dcbz 0,r14 ; allocate 32-byte line with r24-r27 - la r16,saver28(r13) ; point to line with r28-r31 - dcbz 0,r15 ; allocate line with CTR, DAR, DSISR, Exception code, and VRSAVE - stw r17,saver17+4(r13) ; Save this one - stw r18,saver18+4(r13) ; Save this one - stw r6,savectr+4(r13) ; Save rupt CTR - stw r0,savecr(r13) ; Save rupt CR - stw r19,saver19+4(r13) ; Save this one - mfdar r6 ; Get the rupt DAR - stw r20,saver20+4(r13) ; Save this one - dcbz 0,r16 ; allocate 32-byte line with r28-r31 - - stw r21,saver21+4(r13) ; Save this one - lwz r21,spcFlags(r2) ; Get the special flags from per_proc - stw r10,savexer+4(r13) ; Save the rupt XER - stw r30,saver30+4(r13) ; Save this one - lhz r30,pfrptdProc(r2) ; Get the reported processor type - stw r31,saver31+4(r13) ; Save this one - stw r22,saver22+4(r13) ; Save this one - stw r23,saver23+4(r13) ; Save this one - stw r24,saver24+4(r13) ; Save this one - stw r25,saver25+4(r13) ; Save this one - mfdsisr r7 ; Get the rupt DSISR - stw r26,saver26+4(r13) ; Save this one - stw r27,saver27+4(r13) ; Save this one - andis. r21,r21,hi16(perfMonitor) ; Is the performance monitor enabled? - stw r28,saver28+4(r13) ; Save this one - cmpwi cr1, r30,CPU_SUBTYPE_POWERPC_750 ; G3? - la r27,savevscr(r13) ; point to 32-byte line with VSCR and FPSCR - cmpwi cr2,r30,CPU_SUBTYPE_POWERPC_7400 ; This guy? - stw r29,saver29+4(r13) ; Save R29 - stw r6,savedar+4(r13) ; Save the rupt DAR - li r10,savepmc ; Point to pmc savearea - - beq+ noPerfMonSave32 ; No perfmon on here... - - dcbz r10,r13 ; Clear first part of pmc area - li r10,savepmc+0x20 ; Point to pmc savearea second part - li r22,0 ; r22: zero - dcbz r10,r13 ; Clear second part of pmc area - - beq cr1,perfMonSave32_750 ; This is a G3... - - beq cr2,perfMonSave32_7400 ; Regular olde G4... - - mfspr r24,pmc5 ; Here for a 7450 - mfspr r25,pmc6 - stw r24,savepmc+16(r13) ; Save PMC5 - stw r25,savepmc+20(r13) ; Save PMC6 - mtspr pmc5,r22 ; Leave PMC5 clear - mtspr pmc6,r22 ; Leave PMC6 clear - -perfMonSave32_7400: - mfspr r25,mmcr2 - stw r25,savemmcr2+4(r13) ; Save MMCR2 - mtspr mmcr2,r22 ; Leave MMCR2 clear - -perfMonSave32_750: - mfspr r23,mmcr0 - mfspr r24,mmcr1 - stw r23,savemmcr0+4(r13) ; Save MMCR0 - stw r24,savemmcr1+4(r13) ; Save MMCR1 - mtspr mmcr0,r22 ; Leave MMCR0 clear - mtspr mmcr1,r22 ; Leave MMCR1 clear - mfspr r23,pmc1 - mfspr r24,pmc2 - mfspr r25,pmc3 - mfspr r26,pmc4 - stw r23,savepmc+0(r13) ; Save PMC1 - stw r24,savepmc+4(r13) ; Save PMC2 - stw r25,savepmc+8(r13) ; Save PMC3 - stw r26,savepmc+12(r13) ; Save PMC4 - mtspr pmc1,r22 ; Leave PMC1 clear - mtspr pmc2,r22 ; Leave PMC2 clear - mtspr pmc3,r22 ; Leave PMC3 clear - mtspr pmc4,r22 ; Leave PMC4 clear - -noPerfMonSave32: - dcbz 0,r27 ; allocate line with VSCR and FPSCR - - stw r7,savedsisr(r13) ; Save the rupt code DSISR - stw r11,saveexception(r13) ; Save the exception code - - -; -; Everything is saved at this point, except for FPRs, and VMX registers. -; Time for us to get a new savearea and then trace interrupt if it is enabled. -; - - lwz r25,traceMask(0) ; Get the trace mask - li r0,SAVgeneral ; Get the savearea type value - lhz r19,PP_CPU_NUMBER(r2) ; Get the logical processor number - rlwinm r22,r11,30,0,31 ; Divide interrupt code by 2 - stb r0,SAVflags+2(r13) ; Mark valid context - addi r22,r22,10 ; Adjust code so we shift into CR5 - li r23,trcWork ; Get the trace work area address - rlwnm r7,r25,r22,22,22 ; Set CR5_EQ bit position to 0 if tracing allowed - li r26,0x8 ; Get start of cpu mask - srw r26,r26,r19 ; Get bit position of cpu number - mtcrf 0x04,r7 ; Set CR5 to show trace or not - and. r26,r26,r25 ; See if we trace this cpu - crandc cr5_eq,cr5_eq,cr0_eq ; Turn off tracing if cpu is disabled -; -; At this point, we can take another exception and lose nothing. -; - -#if INSTRUMENT - mfspr r26,pmc1 ; INSTRUMENT - saveinstr[2] - Take stamp after save is done - stw r26,0x6100+(0x02*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r26,pmc2 ; INSTRUMENT - Get stamp - stw r26,0x6100+(0x02*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r26,pmc3 ; INSTRUMENT - Get stamp - stw r26,0x6100+(0x02*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r26,pmc4 ; INSTRUMENT - Get stamp - stw r26,0x6100+(0x02*16)+0xC(0) ; INSTRUMENT - Save it -#endif - - bne+ cr5,xcp32xit ; Skip all of this if no tracing here... - -; -; We select a trace entry using a compare and swap on the next entry field. -; Since we do not lock the actual trace buffer, there is a potential that -; another processor could wrap an trash our entry. Who cares? -; - - lwz r25,traceStart(0) ; Get the start of trace table - lwz r26,traceEnd(0) ; Get end of trace table - -trcsel: lwarx r20,0,r23 ; Get and reserve the next slot to allocate - - addi r22,r20,LTR_size ; Point to the next trace entry - cmplw r22,r26 ; Do we need to wrap the trace table? - bne+ gotTrcEnt ; No wrap, we got us a trace entry... - - mr r22,r25 ; Wrap back to start - -gotTrcEnt: stwcx. r22,0,r23 ; Try to update the current pointer - bne- trcsel ; Collision, try again... - -#if ESPDEBUG - dcbf 0,r23 ; Force to memory - sync -#endif - - dcbz 0,r20 ; Clear and allocate first trace line - -; -; Let us cut that trace entry now. -; - - lwz r16,ruptStamp(r2) ; Get top of time base - lwz r17,ruptStamp+4(r2) ; Get the bottom of time stamp - - li r14,32 ; Offset to second line - - lwz r0,saver0+4(r13) ; Get back interrupt time R0 - lwz r1,saver1+4(r13) ; Get back interrupt time R1 - lwz r8,savecr(r13) ; Get the CR value - - dcbz r14,r20 ; Zap the second line - - sth r19,LTR_cpu(r20) ; Stash the cpu number - li r14,64 ; Offset to third line - sth r11,LTR_excpt(r20) ; Save the exception type - lwz r7,saver2+4(r13) ; Get back interrupt time R2 - lwz r3,saver3+4(r13) ; Restore this one - - dcbz r14,r20 ; Zap the third half - - mfdsisr r9 ; Get the DSISR - li r14,96 ; Offset to forth line - stw r16,LTR_timeHi(r20) ; Set the upper part of TB - stw r17,LTR_timeLo(r20) ; Set the lower part of TB - lwz r10,savelr+4(r13) ; Get the LR - mfsrr0 r17 ; Get SRR0 back, it is still good - - dcbz r14,r20 ; Zap the forth half - lwz r4,saver4+4(r13) ; Restore this one - lwz r5,saver5+4(r13) ; Restore this one - mfsrr1 r18 ; SRR1 is still good in here - - stw r8,LTR_cr(r20) ; Save the CR - lwz r6,saver6+4(r13) ; Get R6 - mfdar r16 ; Get this back - stw r9,LTR_dsisr(r20) ; Save the DSISR - stw r17,LTR_srr0+4(r20) ; Save the SSR0 - - stw r18,LTR_srr1+4(r20) ; Save the SRR1 - stw r16,LTR_dar+4(r20) ; Save the DAR - mfctr r17 ; Get the CTR (still good in register) - stw r13,LTR_save+4(r20) ; Save the savearea - stw r10,LTR_lr+4(r20) ; Save the LR - - stw r17,LTR_ctr+4(r20) ; Save off the CTR - stw r0,LTR_r0+4(r20) ; Save off register 0 - stw r1,LTR_r1+4(r20) ; Save off register 1 - stw r7,LTR_r2+4(r20) ; Save off register 2 - - - stw r3,LTR_r3+4(r20) ; Save off register 3 - stw r4,LTR_r4+4(r20) ; Save off register 4 - stw r5,LTR_r5+4(r20) ; Save off register 5 - stw r6,LTR_r6+4(r20) ; Save off register 6 - -#if ESPDEBUG - addi r17,r20,32 ; Second line - addi r16,r20,64 ; Third line - dcbst br0,r20 ; Force to memory - dcbst br0,r17 ; Force to memory - addi r17,r17,32 ; Fourth line - dcbst br0,r16 ; Force to memory - dcbst br0,r17 ; Force to memory - - sync ; Make sure it all goes -#endif -xcp32xit: mr r14,r11 ; Save the interrupt code across the call - bl EXT(save_get_phys_32) ; Grab a savearea - mfsprg r2,0 ; Get the per_proc info - li r10,emfp0 ; Point to floating point save - mr r11,r14 ; Get the exception code back - dcbz r10,r2 ; Clear for speed - stw r3,next_savearea+4(r2) ; Store the savearea for the next rupt - -#if INSTRUMENT - mfspr r4,pmc1 ; INSTRUMENT - saveinstr[3] - Take stamp after next savearea - stw r4,0x6100+(0x03*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r4,pmc2 ; INSTRUMENT - Get stamp - stw r4,0x6100+(0x03*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r4,pmc3 ; INSTRUMENT - Get stamp - stw r4,0x6100+(0x03*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r4,pmc4 ; INSTRUMENT - Get stamp - stw r4,0x6100+(0x03*16)+0xC(0) ; INSTRUMENT - Save it -#endif - b xcpCommon ; Go join the common interrupt processing... - -; -; -; This is the 64-bit context saving stuff -; - - .align 5 - -extEntry64: mfsprg r13,0 ; Load per_proc - ld r13,next_savearea(r13) ; Get the exception save area - std r0,saver0(r13) ; Save register 0 - lis r0,hi16(MASK(MSR_VEC)|MASK(MSR_FP)|MASK(MSR_ME)) ; Set up the MSR we will use throughout. Note that ME come on here if MCK - std r1,saver1(r13) ; Save register 1 - ori r1,r0,lo16(MASK(MSR_VEC)|MASK(MSR_FP)|MASK(MSR_ME)) ; Rest of MSR - lis r0,0x0010 ; Get rupt code transform validity mask - mtmsr r1 ; Set MSR - isync - - ori r0,r0,0x0200 ; Get rupt code transform validity mask - std r2,saver2(r13) ; Save this one - lis r1,0x00F0 ; Top half of xform XOR - rlwinm r2,r11,29,27,31 ; Get high 5 bits of rupt code - std r3,saver3(r13) ; Save this one - slw r0,r0,r2 ; Move transform validity bit to bit 0 - std r4,saver4(r13) ; Save this one - std r5,saver5(r13) ; Save this one - ori r1,r1,0x04EC ; Bottom half of xform XOR - mfxer r5 ; Save the XER because we are about to muck with it - rlwinm r4,r11,1,27,28 ; Get bottom of interrupt code * 8 - lis r3,hi16(dozem|napm) ; Get the nap and doze bits - srawi r0,r0,31 ; Get 0xFFFFFFFF of xform valid, 0 otherwise - rlwnm r4,r1,r4,24,31 ; Extract the xform XOR - li r1,saver16 ; Point to the next line - and r4,r4,r0 ; Only keep transform if we are to use it - li r2,lgKillResv ; Point to the killing field - mfcr r0 ; Save the CR - stwcx. r2,0,r2 ; Kill any pending reservation - dcbz128 r1,r13 ; Blow away the line - sldi r3,r3,32 ; Position it - mfspr r1,hid0 ; Get HID0 - andc r3,r1,r3 ; Clear nap and doze - xor r11,r11,r4 ; Transform 970 rupt code to standard keeping FAM bit - cmpld r3,r1 ; See if nap and/or doze was on - std r6,saver6(r13) ; Save this one - mfsprg r2,0 ; Get the per_proc area - la r6,savesrr0(r13) ; point to line with SRR0, SRR1, CR, XER, and LR - beq++ eE64NoNap ; No nap here, skip all this... - - sync ; Make sure we are clean - mtspr hid0,r3 ; Set the updated hid0 - mfspr r1,hid0 ; Yes, this is silly, keep it here - mfspr r1,hid0 ; Yes, this is a duplicate, keep it here - mfspr r1,hid0 ; Yes, this is a duplicate, keep it here - mfspr r1,hid0 ; Yes, this is a duplicate, keep it here - mfspr r1,hid0 ; Yes, this is a duplicate, keep it here - mfspr r1,hid0 ; Yes, this is a duplicate, keep it here - -eE64NoNap: crnot wasNapping,cr0_eq ; Remember if we were napping - andi. r1,r11,T_FAM ; Check FAM bit - beq++ eEnoFAM ; Is it FAM intercept - mfsrr1 r3 ; Load srr1 - andc r11,r11,r1 ; Clear FAM bit - rlwinm. r3,r3,0,MSR_PR_BIT,MSR_PR_BIT ; Are we trapping from supervisor state? - beq+ eEnoFAM ; From supervisor state - lwz r1,spcFlags(r2) ; Load spcFlags - rlwinm r1,r1,1+FamVMmodebit,30,31 ; Extract FamVMenabit and FamVMmodebit - cmpwi cr0,r1,2 ; Check FamVMena set without FamVMmode - bne++ eEnoFAM ; Can this context be FAM intercept - lwz r4,FAMintercept(r2) ; Load exceptions mask to intercept - li r3,0 ; Clear - srwi r1,r11,2 ; divide r11 by 4 - oris r3,r3,0x8000 ; Set r3 to 0x80000000 - srw r1,r3,r1 ; Set bit for current exception - and. r1,r1,r4 ; And current exception with the intercept mask - beq++ eEnoFAM ; Is it FAM intercept - b EXT(vmm_fam_exc) - - .align 5 - -eEnoFAM: lwz r1,pfAvailable(r2) ; Get the CPU features flags - dcbz128 0,r6 ; allocate 128-byte line with SRR0, SRR1, CR, XER, and LR - -; -; Remember, we are setting up CR6 with feature flags -; - std r7,saver7(r13) ; Save this one - mtcrf 0x80,r1 ; Put the features flags (that we care about) in the CR - std r8,saver8(r13) ; Save this one - mtcrf 0x40,r1 ; Put the features flags (that we care about) in the CR - mfsrr0 r6 ; Get the interruption SRR0 - lhz r8,PP_CPU_FLAGS(r2) ; Get the flags - mtcrf 0x20,r1 ; Put the features flags (that we care about) in the CR - mfsrr1 r7 ; Get the interrupt SRR1 - rlwinm r8,r8,(((31-MSR_BE_BIT)+(traceBEb+16+1))&31),MSR_BE_BIT,MSR_BE_BIT ; Set BE bit if special trace is on - std r6,savesrr0(r13) ; Save the SRR0 - mtcrf 0x02,r1 ; Put the features flags (that we care about) in the CR - rlwinm r6,r7,(((31-MSR_BE_BIT)+(MSR_PR_BIT+1))&31),MSR_BE_BIT,MSR_BE_BIT ; Move PR bit to BE bit - and r8,r6,r8 ; Remove BE bit only if problem state and special tracing on - std r9,saver9(r13) ; Save this one - andc r7,r7,r8 ; Clear BE bit if special trace is on and PR is set - crmove featAltivec,pfAltivecb ; Set the Altivec flag - std r7,savesrr1(r13) ; Save SRR1 - mfsprg r9,3 ; Get rupt time R11 - std r10,saver10(r13) ; Save this one - mfsprg r6,2 ; Get interrupt time R13 - std r9,saver11(r13) ; Save rupt time R11 - mtsprg 2,r1 ; Set the feature flags - std r12,saver12(r13) ; Save this one - mflr r4 ; Get the LR - mftb r7 ; Get the timebase - std r6,saver13(r13) ; Save rupt R13 - std r7,ruptStamp(r2) ; Save the time stamp - std r7,SAVtime(r13) ; Save the time stamp - - bf++ wasNapping,notNappingSF ; Skip if not waking up from nap... - - ld r6,napStamp(r2) ; Pick up nap stamp - lis r3,hi16(EXT(machine_idle_ret)) ; Get high part of nap/doze return - sub r7,r7,r6 ; Subtract stamp from now - ld r6,napTotal(r2) ; Pick up total - add r6,r6,r7 ; Add low to total - ori r3,r3,lo16(EXT(machine_idle_ret)) ; Get low part of nap/doze return - std r6,napTotal(r2) ; Save the high total - std r3,savesrr0(r13) ; Modify to return to nap/doze exit - -notNappingSF: - std r14,saver14(r13) ; Save this one - std r15,saver15(r13) ; Save this one - stw r0,savecr(r13) ; Save rupt CR - mfctr r6 ; Get the CTR - std r16,saver16(r13) ; Save this one - std r4,savelr(r13) ; Save rupt LR - - std r17,saver17(r13) ; Save this one - li r7,savepmc ; Point to pmc area - std r18,saver18(r13) ; Save this one - lwz r17,spcFlags(r2) ; Get the special flags from per_proc - std r6,savectr(r13) ; Save rupt CTR - std r19,saver19(r13) ; Save this one - mfdar r6 ; Get the rupt DAR - std r20,saver20(r13) ; Save this one - - dcbz128 r7,r13 ; Clear out the pmc spot - - std r21,saver21(r13) ; Save this one - std r5,savexer(r13) ; Save the rupt XER - std r22,saver22(r13) ; Save this one - std r23,saver23(r13) ; Save this one - std r24,saver24(r13) ; Save this one - std r25,saver25(r13) ; Save this one - mfdsisr r7 ; Get the rupt DSISR - std r26,saver26(r13) ; Save this one - andis. r17,r17,hi16(perfMonitor) ; Is the performance monitor enabled? - std r27,saver27(r13) ; Save this one - li r10,emfp0 ; Point to floating point save - std r28,saver28(r13) ; Save this one - la r27,savevscr(r13) ; point to 32-byte line with VSCR and FPSCR - std r29,saver29(r13) ; Save R29 - std r30,saver30(r13) ; Save this one - std r31,saver31(r13) ; Save this one - std r6,savedar(r13) ; Save the rupt DAR - stw r7,savedsisr(r13) ; Save the rupt code DSISR - stw r11,saveexception(r13) ; Save the exception code - - beq++ noPerfMonSave64 ; Performance monitor not on... - - li r22,0 ; r22: zero - - mfspr r23,mmcr0_gp - mfspr r24,mmcr1_gp - mfspr r25,mmcra_gp - std r23,savemmcr0(r13) ; Save MMCR0 - std r24,savemmcr1(r13) ; Save MMCR1 - std r25,savemmcr2(r13) ; Save MMCRA - mtspr mmcr0_gp,r22 ; Leave MMCR0 clear - mtspr mmcr1_gp,r22 ; Leave MMCR1 clear - mtspr mmcra_gp,r22 ; Leave MMCRA clear - mfspr r23,pmc1_gp - mfspr r24,pmc2_gp - mfspr r25,pmc3_gp - mfspr r26,pmc4_gp - stw r23,savepmc+0(r13) ; Save PMC1 - stw r24,savepmc+4(r13) ; Save PMC2 - stw r25,savepmc+8(r13) ; Save PMC3 - stw r26,savepmc+12(r13) ; Save PMC4 - mfspr r23,pmc5_gp - mfspr r24,pmc6_gp - mfspr r25,pmc7_gp - mfspr r26,pmc8_gp - stw r23,savepmc+16(r13) ; Save PMC5 - stw r24,savepmc+20(r13) ; Save PMC6 - stw r25,savepmc+24(r13) ; Save PMC7 - stw r26,savepmc+28(r13) ; Save PMC8 - mtspr pmc1_gp,r22 ; Leave PMC1 clear - mtspr pmc2_gp,r22 ; Leave PMC2 clear - mtspr pmc3_gp,r22 ; Leave PMC3 clear - mtspr pmc4_gp,r22 ; Leave PMC4 clear - mtspr pmc5_gp,r22 ; Leave PMC5 clear - mtspr pmc6_gp,r22 ; Leave PMC6 clear - mtspr pmc7_gp,r22 ; Leave PMC7 clear - mtspr pmc8_gp,r22 ; Leave PMC8 clear - -noPerfMonSave64: - -; -; Everything is saved at this point, except for FPRs, and VMX registers. -; Time for us to get a new savearea and then trace interrupt if it is enabled. -; - - lwz r25,traceMask(0) ; Get the trace mask - li r0,SAVgeneral ; Get the savearea type value - lhz r19,PP_CPU_NUMBER(r2) ; Get the logical processor number - stb r0,SAVflags+2(r13) ; Mark valid context - ori r23,r23,lo16(EXT(trcWork)) ; Get the rest - rlwinm r22,r11,30,0,31 ; Divide interrupt code by 2 - li r23,trcWork ; Get the trace work area address - addi r22,r22,10 ; Adjust code so we shift into CR5 - li r26,0x8 ; Get start of cpu mask - rlwnm r7,r25,r22,22,22 ; Set CR5_EQ bit position to 0 if tracing allowed - srw r26,r26,r19 ; Get bit position of cpu number - mtcrf 0x04,r7 ; Set CR5 to show trace or not - and. r26,r26,r25 ; See if we trace this cpu - crandc cr5_eq,cr5_eq,cr0_eq ; Turn off tracing if cpu is disabled - - bne++ cr5,xcp64xit ; Skip all of this if no tracing here... - -; -; We select a trace entry using a compare and swap on the next entry field. -; Since we do not lock the actual trace buffer, there is a potential that -; another processor could wrap an trash our entry. Who cares? -; - - lwz r25,traceStart(0) ; Get the start of trace table - lwz r26,traceEnd(0) ; Get end of trace table - -trcselSF: lwarx r20,0,r23 ; Get and reserve the next slot to allocate - - addi r22,r20,LTR_size ; Point to the next trace entry - cmplw r22,r26 ; Do we need to wrap the trace table? - bne+ gotTrcEntSF ; No wrap, we got us a trace entry... - - mr r22,r25 ; Wrap back to start - -gotTrcEntSF: - stwcx. r22,0,r23 ; Try to update the current pointer - bne- trcselSF ; Collision, try again... - -#if ESPDEBUG - dcbf 0,r23 ; Force to memory - sync -#endif - -; -; Let us cut that trace entry now. -; - - dcbz128 0,r20 ; Zap the trace entry - - ld r16,ruptStamp(r2) ; Get top of time base - ld r0,saver0(r13) ; Get back interrupt time R0 (we need this whether we trace or not) - std r16,LTR_timeHi(r20) ; Set the upper part of TB - ld r1,saver1(r13) ; Get back interrupt time R1 - ld r18,saver2(r13) ; Get back interrupt time R2 - std r0,LTR_r0(r20) ; Save off register 0 - ld r3,saver3(r13) ; Restore this one - sth r19,LTR_cpu(r20) ; Stash the cpu number - std r1,LTR_r1(r20) ; Save off register 1 - ld r4,saver4(r13) ; Restore this one - std r18,LTR_r2(r20) ; Save off register 2 - ld r5,saver5(r13) ; Restore this one - ld r6,saver6(r13) ; Get R6 - std r3,LTR_r3(r20) ; Save off register 3 - lwz r16,savecr(r13) ; Get the CR value - std r4,LTR_r4(r20) ; Save off register 4 - mfsrr0 r17 ; Get SRR0 back, it is still good - std r5,LTR_r5(r20) ; Save off register 5 - std r6,LTR_r6(r20) ; Save off register 6 - mfsrr1 r18 ; SRR1 is still good in here - stw r16,LTR_cr(r20) ; Save the CR - std r17,LTR_srr0(r20) ; Save the SSR0 - std r18,LTR_srr1(r20) ; Save the SRR1 - - mfdar r17 ; Get this back - ld r16,savelr(r13) ; Get the LR - std r17,LTR_dar(r20) ; Save the DAR - mfctr r17 ; Get the CTR (still good in register) - std r16,LTR_lr(r20) ; Save the LR - std r17,LTR_ctr(r20) ; Save off the CTR - mfdsisr r17 ; Get the DSISR - std r13,LTR_save(r20) ; Save the savearea - stw r17,LTR_dsisr(r20) ; Save the DSISR - sth r11,LTR_excpt(r20) ; Save the exception type - -#if ESPDEBUG - dcbf 0,r20 ; Force to memory - sync ; Make sure it all goes -#endif -xcp64xit: mr r14,r11 ; Save the interrupt code across the call - bl EXT(save_get_phys_64) ; Grab a savearea - mfsprg r2,0 ; Get the per_proc info - li r10,emfp0 ; Point to floating point save - mr r11,r14 ; Get the exception code back - dcbz128 r10,r2 ; Clear for speed - std r3,next_savearea(r2) ; Store the savearea for the next rupt - b xcpCommon ; Go join the common interrupt processing... - -; -; All of the context is saved. Now we will get a -; fresh savearea. After this we can take an interrupt. -; - - .align 5 - -xcpCommon: - -; -; Here we will save some floating point and vector status -; and we also set a clean default status for a new interrupt level. -; Note that we assume that emfp0 is on an altivec boundary -; and that R10 points to it (as a displacemnt from R2). -; -; We need to save the FPSCR as if it is normal context. -; This is because pending exceptions will cause an exception even if -; FP is disabled. We need to clear the FPSCR when we first start running in the -; kernel. -; - - stfd f0,emfp0(r2) ; Save FPR0 - stfd f1,emfp1(r2) ; Save FPR1 - li r19,0 ; Assume no Altivec - mffs f0 ; Get the FPSCR - lfd f1,Zero(0) ; Make a 0 - stfd f0,savefpscrpad(r13) ; Save the FPSCR - li r9,0 ; Get set to clear VRSAVE - mtfsf 0xFF,f1 ; Clear it - addi r14,r10,16 ; Displacement to second vector register - lfd f0,emfp0(r2) ; Restore FPR0 - la r28,savevscr(r13) ; Point to the status area - lfd f1,emfp1(r2) ; Restore FPR1 - - bf featAltivec,noavec ; No Altivec on this CPU... - - stvxl v0,r10,r2 ; Save a register - stvxl v1,r14,r2 ; Save a second register - mfspr r19,vrsave ; Get the VRSAVE register - mfvscr v0 ; Get the vector status register - vspltish v1,1 ; Turn on the non-Java bit and saturate - stvxl v0,0,r28 ; Save the vector status - vspltisw v0,1 ; Turn on the saturate bit - vxor v1,v1,v0 ; Turn off saturate - mtvscr v1 ; Set the non-java, no saturate status for new level - mtspr vrsave,r9 ; Clear VRSAVE for each interrupt level - - lvxl v0,r10,r2 ; Restore first work register - lvxl v1,r14,r2 ; Restore second work register - -noavec: stw r19,savevrsave(r13) ; Save the vector register usage flags - -; -; We are now done saving all of the context. Start filtering the interrupts. -; Note that a Redrive will count as an actual interrupt. -; Note also that we take a lot of system calls so we will start decode here. -; - -Redrive: - - -#if INSTRUMENT - mfspr r20,pmc1 ; INSTRUMENT - saveinstr[4] - Take stamp before exception filter - stw r20,0x6100+(0x04*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r20,pmc2 ; INSTRUMENT - Get stamp - stw r20,0x6100+(0x04*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r20,pmc3 ; INSTRUMENT - Get stamp - stw r20,0x6100+(0x04*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r20,pmc4 ; INSTRUMENT - Get stamp - stw r20,0x6100+(0x04*16)+0xC(0) ; INSTRUMENT - Save it -#endif - lwz r22,SAVflags(r13) ; Pick up the flags - lwz r0,saver0+4(r13) ; Get back interrupt time syscall number - mfsprg r2,0 ; Restore per_proc - - li r20,lo16(xcpTable) ; Point to the vector table (note: this must be in 1st 64k of physical memory) - la r12,hwCounts(r2) ; Point to the exception count area - rlwinm r22,r22,SAVredriveb+1,31,31 ; Get a 1 if we are redriving - add r12,r12,r11 ; Point to the count - lwzx r20,r20,r11 ; Get the interrupt handler - lwz r25,0(r12) ; Get the old value - lwz r23,hwRedrives(r2) ; Get the redrive count - xori r24,r22,1 ; Get the NOT of the redrive - mtctr r20 ; Point to the interrupt handler - mtcrf 0x80,r0 ; Set our CR0 to the high nybble of possible syscall code - add r25,r25,r24 ; Count this one if not a redrive - add r23,r23,r24 ; Count this one if if is a redrive - crandc cr0_lt,cr0_lt,cr0_gt ; See if we have R0 equal to 0b10xx...x - stw r25,0(r12) ; Store it back - stw r23,hwRedrives(r2) ; Save the redrive count - bctr ; Go process the exception... - - -; -; Exception vector filter table -; - - .align 7 - -xcpTable: - .long EatRupt ; T_IN_VAIN - .long PassUpTrap ; T_RESET - .long MachineCheck ; T_MACHINE_CHECK - .long EXT(handlePF) ; T_DATA_ACCESS - .long EXT(handlePF) ; T_INSTRUCTION_ACCESS - .long PassUpRupt ; T_INTERRUPT - .long EXT(AlignAssist) ; T_ALIGNMENT - .long EXT(Emulate) ; T_PROGRAM - .long PassUpFPU ; T_FP_UNAVAILABLE - .long PassUpRupt ; T_DECREMENTER - .long PassUpTrap ; T_IO_ERROR - .long PassUpTrap ; T_RESERVED - .long xcpSyscall ; T_SYSTEM_CALL - .long PassUpTrap ; T_TRACE - .long PassUpTrap ; T_FP_ASSIST - .long PassUpTrap ; T_PERF_MON - .long PassUpVMX ; T_VMX - .long PassUpTrap ; T_INVALID_EXCP0 - .long PassUpTrap ; T_INVALID_EXCP1 - .long PassUpTrap ; T_INVALID_EXCP2 - .long PassUpTrap ; T_INSTRUCTION_BKPT - .long PassUpRupt ; T_SYSTEM_MANAGEMENT - .long EXT(AltivecAssist) ; T_ALTIVEC_ASSIST - .long PassUpRupt ; T_THERMAL - .long PassUpTrap ; T_INVALID_EXCP5 - .long PassUpTrap ; T_INVALID_EXCP6 - .long PassUpTrap ; T_INVALID_EXCP7 - .long PassUpTrap ; T_INVALID_EXCP8 - .long PassUpTrap ; T_INVALID_EXCP9 - .long PassUpTrap ; T_INVALID_EXCP10 - .long PassUpTrap ; T_INVALID_EXCP11 - .long PassUpTrap ; T_INVALID_EXCP12 - .long PassUpTrap ; T_INVALID_EXCP13 - - .long PassUpTrap ; T_RUNMODE_TRACE - - .long PassUpRupt ; T_SIGP - .long PassUpTrap ; T_PREEMPT - .long conswtch ; T_CSWITCH - .long PassUpRupt ; T_SHUTDOWN - .long PassUpAbend ; T_CHOKE - - .long EXT(handleDSeg) ; T_DATA_SEGMENT - .long EXT(handleISeg) ; T_INSTRUCTION_SEGMENT - - .long WhoaBaby ; T_SOFT_PATCH - .long WhoaBaby ; T_MAINTENANCE - .long WhoaBaby ; T_INSTRUMENTATION - -; -; Just what the heck happened here???? -; - - .align 5 - -WhoaBaby: b . ; Open the hood and wait for help - - -; -; System call -; - - .align 5 - -xcpSyscall: lis r20,hi16(EXT(shandler)) ; Assume this is a normal one, get handler address - rlwinm r6,r0,1,0,31 ; Move sign bit to the end - ori r20,r20,lo16(EXT(shandler)) ; Assume this is a normal one, get handler address - bnl++ cr0,PassUp ; R0 not 0b10xxx...x, can not be any kind of magical system call, just pass it up... - lwz r7,savesrr1+4(r13) ; Get the entering MSR (low half) - lwz r1,dgFlags(0) ; Get the flags - cmplwi cr2,r6,1 ; See if original R0 had the CutTrace request code in it - - rlwinm. r7,r7,0,MSR_PR_BIT,MSR_PR_BIT ; Did we come from user state? - beq++ FCisok ; From supervisor state... - - rlwinm. r1,r1,0,enaUsrFCallb,enaUsrFCallb ; Are they valid? - beq++ PassUp ; No, treat as a normal one... - -FCisok: beq++ cr2,EatRupt ; This is a CutTrace system call, we are done with it... - -; -; Here is where we call the firmware. If it returns T_IN_VAIN, that means -; that it has handled the interruption. Remember: thou shalt not trash R13 -; while you are away. Anything else is ok. -; - - lwz r3,saver3+4(r13) ; Restore the first parameter - b EXT(FirmwareCall) ; Go handle the firmware call.... - -; -; Here is where we return from the firmware call -; - - .align 5 - .globl EXT(FCReturn) - -LEXT(FCReturn) - cmplwi r3,T_IN_VAIN ; Was it handled? - beq+ EatRupt ; Interrupt was handled... - mr r11,r3 ; Put the rupt code into the right register - b Redrive ; Go through the filter again... - - -; -; Here is where we return from the PTE miss and segment exception handler -; - - .align 5 - .globl EXT(PFSExit) - -LEXT(PFSExit) - -#if 0 - mfsprg r2,0 ; (BRINGUP) - lwz r0,savedsisr(r13) ; (BRINGUP) - andis. r0,r0,hi16(dsiAC) ; (BRINGUP) - beq++ didnthit ; (BRINGUP) - lwz r0,20(0) ; (BRINGUP) - mr. r0,r0 ; (BRINGUP) - bne-- didnthit ; (BRINGUP) -#if 0 - li r0,1 ; (BRINGUP) - stw r0,20(0) ; (BRINGUP) - lis r0,hi16(Choke) ; (BRINGUP) - ori r0,r0,lo16(Choke) ; (BRINGUP) - sc ; (BRINGUP) -#endif - - lwz r4,savesrr0+4(r13) ; (BRINGUP) - lwz r8,savesrr1+4(r13) ; (BRINGUP) - lwz r6,savedar+4(r13) ; (BRINGUP) - rlwinm. r0,r8,0,MSR_IR_BIT,MSR_IR_BIT ; (BRINGUP) - mfmsr r9 ; (BRINGUP) - ori r0,r9,lo16(MASK(MSR_DR)) ; (BRINGUP) - beq-- hghg ; (BRINGUP) - mtmsr r0 ; (BRINGUP) - isync ; (BRINGUP) - -hghg: lwz r5,0(r4) ; (BRINGUP) - beq-- hghg1 ; (BRINGUP) - mtmsr r9 ; (BRINGUP) - isync ; (BRINGUP) - -hghg1: rlwinm r7,r5,6,26,31 ; (BRINGUP) - rlwinm r27,r5,14,24,28 ; (BRINGUP) - addi r3,r13,saver0+4 ; (BRINGUP) - lwzx r3,r3,r27 ; (BRINGUP) - -#if 0 - lwz r27,patcharea+4(r2) ; (BRINGUP) - mr. r3,r3 ; (BRINGUP) - bne++ nbnbnb ; (BRINGUP) - addi r27,r27,1 ; (BRINGUP) - stw r27,patcharea+4(r2) ; (BRINGUP) -nbnbnb: -#endif - - rlwinm. r28,r8,0,MSR_DR_BIT,MSR_DR_BIT ; (BRINGUP) - rlwinm r27,r6,0,0,29 ; (BRINGUP) - ori r28,r9,lo16(MASK(MSR_DR)) ; (BRINGUP) - mfspr r10,dabr ; (BRINGUP) - li r0,0 ; (BRINGUP) - mtspr dabr,r0 ; (BRINGUP) - cmplwi cr1,r7,31 ; (BRINGUP) - beq-- qqq0 ; (BRINGUP) - mtmsr r28 ; (BRINGUP) -qqq0: - isync ; (BRINGUP) - - lwz r27,0(r27) ; (BRINGUP) - Get original value - - bne cr1,qqq1 ; (BRINGUP) - - rlwinm r5,r5,31,22,31 ; (BRINGUP) - cmplwi cr1,r5,151 ; (BRINGUP) - beq cr1,qqq3 ; (BRINGUP) - cmplwi cr1,r5,407 ; (BRINGUP) - beq cr1,qqq2 ; (BRINGUP) - cmplwi cr1,r5,215 ; (BRINGUP) - beq cr1,qqq0q ; (BRINGUP) - cmplwi cr1,r5,1014 ; (BRINGUP) - beq cr1,qqqm1 ; (BRINGUP) - - lis r0,hi16(Choke) ; (BRINGUP) - ori r0,r0,lo16(Choke) ; (BRINGUP) - sc ; (BRINGUP) - -qqqm1: rlwinm r7,r6,0,0,26 ; (BRINGUP) - stw r0,0(r7) ; (BRINGUP) - stw r0,4(r7) ; (BRINGUP) - stw r0,8(r7) ; (BRINGUP) - stw r0,12(r7) ; (BRINGUP) - stw r0,16(r7) ; (BRINGUP) - stw r0,20(r7) ; (BRINGUP) - stw r0,24(r7) ; (BRINGUP) - stw r0,28(r7) ; (BRINGUP) - b qqq9 - -qqq1: cmplwi r7,38 ; (BRINGUP) - bgt qqq2 ; (BRINGUP) - blt qqq3 ; (BRINGUP) - -qqq0q: stb r3,0(r6) ; (BRINGUP) - b qqq9 ; (BRINGUP) - -qqq2: sth r3,0(r6) ; (BRINGUP) - b qqq9 ; (BRINGUP) - -qqq3: stw r3,0(r6) ; (BRINGUP) - -qqq9: -#if 0 - rlwinm r7,r6,0,0,29 ; (BRINGUP) - lwz r0,0(r7) ; (BRINGUP) - Get newest value -#else - lis r7,hi16(0x000792B8) ; (BRINGUP) - ori r7,r7,lo16(0x000792B8) ; (BRINGUP) - lwz r0,0(r7) ; (BRINGUP) - Get newest value -#endif - mtmsr r9 ; (BRINGUP) - mtspr dabr,r10 ; (BRINGUP) - isync ; (BRINGUP) - -#if 0 - lwz r28,patcharea+12(r2) ; (BRINGUP) - mr. r28,r28 ; (BRINGUP) - bne++ qqq12 ; (BRINGUP) - lis r28,0x4000 ; (BRINGUP) - -qqq12: stw r27,0(r28) ; (BRINGUP) - lwz r6,savedar+4(r13) ; (BRINGUP) - stw r0,4(r28) ; (BRINGUP) - stw r4,8(r28) ; (BRINGUP) - stw r6,12(r28) ; (BRINGUP) - addi r28,r28,16 ; (BRINGUP) - mr. r3,r3 ; (BRINGUP) - stw r28,patcharea+12(r2) ; (BRINGUP) - lwz r10,patcharea+8(r2) ; (BRINGUP) - lwz r0,patcharea+4(r2) ; (BRINGUP) -#endif - -#if 1 - stw r0,patcharea(r2) ; (BRINGUP) -#endif - -#if 0 - xor r28,r0,r27 ; (BRINGUP) - See how much it changed - rlwinm r28,r28,24,24,31 ; (BRINGUP) - cmplwi r28,1 ; (BRINGUP) - - ble++ qqq10 ; (BRINGUP) - - mr r7,r0 ; (BRINGUP) - li r0,1 ; (BRINGUP) - stw r0,20(0) ; (BRINGUP) - lis r0,hi16(Choke) ; (BRINGUP) - ori r0,r0,lo16(Choke) ; (BRINGUP) - sc ; (BRINGUP) -#endif - - -qqq10: addi r4,r4,4 ; (BRINGUP) - stw r4,savesrr0+4(r13) ; (BRINGUP) - - li r11,T_IN_VAIN ; (BRINGUP) - b EatRupt ; (BRINGUP) - -didnthit: ; (BRINGUP) -#endif -#if 0 - lwz r0,20(0) ; (BRINGUP) - mr. r0,r0 ; (BRINGUP) - beq++ opopop ; (BRINGUP) - li r0,0 ; (BRINGUP) - stw r0,20(0) ; (BRINGUP) - lis r0,hi16(Choke) ; (BRINGUP) - ori r0,r0,lo16(Choke) ; (BRINGUP) - sc ; (BRINGUP) -opopop: -#endif - lwz r0,savesrr1+4(r13) ; Get the MSR in use at exception time - cmplwi cr1,r11,T_IN_VAIN ; Was it handled? - rlwinm. r4,r0,0,MSR_PR_BIT,MSR_PR_BIT ; Are we trapping from supervisor state? - beq++ cr1,EatRupt ; Yeah, just blast back to the user... - beq-- NoFamPf - mfsprg r2,0 ; Get back per_proc - lwz r1,spcFlags(r2) ; Load spcFlags - rlwinm r1,r1,1+FamVMmodebit,30,31 ; Extract FamVMenabit and FamVMmodebit - cmpi cr0,r1,2 ; Check FamVMena set without FamVMmode - bne-- cr0,NoFamPf - lwz r6,FAMintercept(r2) ; Load exceptions mask to intercept - li r5,0 ; Clear - srwi r1,r11,2 ; divide r11 by 4 - oris r5,r5,0x8000 ; Set r5 to 0x80000000 - srw r1,r5,r1 ; Set bit for current exception - and. r1,r1,r6 ; And current exception with the intercept mask - beq++ NoFamPf ; Is it FAM intercept - bl EXT(vmm_fam_pf) - b EatRupt - -NoFamPf: andi. r4,r0,lo16(MASK(MSR_RI)) ; See if the recover bit is on - lis r0,0x8000 ; Get 0xFFFFFFFF80000000 - add r0,r0,r0 ; Get 0xFFFFFFFF00000000 - beq++ PassUpTrap ; Not on, normal case... -; -; Here is where we handle the "recovery mode" stuff. -; This is set by an emulation routine to trap any faults when it is fetching data or -; instructions. -; -; If we get a fault, we turn off RI, set CR0_EQ to false, bump the PC, and set R0 -; and R1 to the DAR and DSISR, respectively. -; - lwz r3,savesrr0(r13) ; Get the failing instruction address - lwz r4,savesrr0+4(r13) ; Get the failing instruction address - lwz r5,savecr(r13) ; Get the condition register - or r4,r4,r0 ; Fill the high part with foxes - lwz r0,savedar(r13) ; Get the DAR - addic r4,r4,4 ; Skip failing instruction - lwz r6,savedar+4(r13) ; Get the DAR - addze r3,r3 ; Propagate carry - rlwinm r5,r5,0,3,1 ; Clear CR0_EQ to let emulation code know we failed - lwz r7,savedsisr(r13) ; Grab the DSISR - stw r3,savesrr0(r13) ; Save resume address - stw r4,savesrr0+4(r13) ; Save resume address - stw r5,savecr(r13) ; And the resume CR - stw r0,saver0(r13) ; Pass back the DAR - stw r6,saver0+4(r13) ; Pass back the DAR - stw r7,saver1+4(r13) ; Pass back the DSISR - b EatRupt ; Resume emulated code - -; -; Here is where we handle the context switch firmware call. The old -; context has been saved. The new savearea is in kind of hokey, the high order -; half is stored in saver7 and the low half is in saver3. We will just -; muck around with the savearea pointers, and then join the exit routine -; - - .align 5 - -conswtch: - li r0,0xFFF ; Get page boundary - mr r29,r13 ; Save the save - andc r30,r13,r0 ; Round down to page boundary (64-bit safe) - lwz r5,saver3+4(r13) ; Switch to the new savearea - bf-- pf64Bitb,xcswNo64 ; Not 64-bit... - lwz r6,saver7+4(r13) ; Get the high order half - sldi r6,r6,32 ; Position high half - or r5,r5,r6 ; Merge them - -xcswNo64: lwz r30,SACvrswap+4(r30) ; get real to virtual translation - mr r13,r5 ; Switch saveareas - li r0,0 ; Clear this - xor r27,r29,r30 ; Flip to virtual - stw r0,saver3(r5) ; Push the new virtual savearea to the switch to routine - stw r27,saver3+4(r5) ; Push the new virtual savearea to the switch to routine - b EatRupt ; Start it up... - -; -; Handle machine check here. -; -; ? -; - - .align 5 - -MachineCheck: - - bt++ pf64Bitb,mck64 ; ? - - lwz r27,savesrr1+4(r13) ; Pick up srr1 - -; -; Check if the failure was in -; ml_probe_read. If so, this is expected, so modify the PC to -; ml_proble_read_mck and then eat the exception. -; - lwz r30,savesrr0+4(r13) ; Get the failing PC - lis r28,hi16(EXT(ml_probe_read_mck)) ; High order part - lis r27,hi16(EXT(ml_probe_read)) ; High order part - ori r28,r28,lo16(EXT(ml_probe_read_mck)) ; Get the low part - ori r27,r27,lo16(EXT(ml_probe_read)) ; Get the low part - cmplw r30,r28 ; Check highest possible - cmplw cr1,r30,r27 ; Check lowest - bge- PassUpTrap ; Outside of range - blt- cr1,PassUpTrap ; Outside of range -; -; We need to fix up the BATs here because the probe -; routine messed them all up... As long as we are at it, -; fix up to return directly to caller of probe. -; - - lis r11,hi16(EXT(shadow_BAT)+shdDBAT) ; Get shadow address - ori r11,r11,lo16(EXT(shadow_BAT)+shdDBAT) ; Get shadow address - - lwz r30,0(r11) ; Pick up DBAT 0 high - lwz r28,4(r11) ; Pick up DBAT 0 low - lwz r27,8(r11) ; Pick up DBAT 1 high - lwz r18,16(r11) ; Pick up DBAT 2 high - lwz r11,24(r11) ; Pick up DBAT 3 high - - sync - mtdbatu 0,r30 ; Restore DBAT 0 high - mtdbatl 0,r28 ; Restore DBAT 0 low - mtdbatu 1,r27 ; Restore DBAT 1 high - mtdbatu 2,r18 ; Restore DBAT 2 high - mtdbatu 3,r11 ; Restore DBAT 3 high - sync - - lwz r28,savelr+4(r13) ; Get return point - lwz r27,saver0+4(r13) ; Get the saved MSR - li r30,0 ; Get a failure RC - stw r28,savesrr0+4(r13) ; Set the return point - stw r27,savesrr1+4(r13) ; Set the continued MSR - stw r30,saver3+4(r13) ; Set return code - b EatRupt ; Yum, yum, eat it all up... - -; -; 64-bit machine checks -; - -mck64: - -; -; NOTE: WE NEED TO RETHINK RECOVERABILITY A BIT - radar 3167190 -; - - ld r23,savesrr0(r13) ; Grab the SRR0 in case we need bad instruction - ld r20,savesrr1(r13) ; Grab the SRR1 so we can decode the thing - lwz r21,savedsisr(r13) ; We might need this in a bit - ld r22,savedar(r13) ; We might need this in a bit - - lis r8,AsyMCKSrc ; Get the Async MCK Source register address - mfsprg r19,2 ; Get the feature flags - ori r8,r8,0x8000 ; Set to read data - rlwinm. r0,r19,0,pfSCOMFixUpb,pfSCOMFixUpb ; Do we need to fix the SCOM data? - - sync - - mtspr scomc,r8 ; Request the MCK source - mfspr r24,scomd ; Get the source - mfspr r8,scomc ; Get back the status (we just ignore it) - sync - isync - - lis r8,AsyMCKRSrc ; Get the Async MCK Source AND mask address - li r9,0 ; Get and AND mask of 0 - - sync - - mtspr scomd,r9 ; Set the AND mask to 0 - mtspr scomc,r8 ; Write the AND mask and clear conditions - mfspr r8,scomc ; Get back the status (we just ignore it) - sync - isync - - lis r8,cFIR ; Get the Core FIR register address - ori r8,r8,0x8000 ; Set to read data - - sync - - mtspr scomc,r8 ; Request the Core FIR - mfspr r25,scomd ; Get the source - mfspr r8,scomc ; Get back the status (we just ignore it) - sync - isync - - lis r8,cFIRrst ; Get the Core FIR AND mask address - - sync - - mtspr scomd,r9 ; Set the AND mask to 0 - mtspr scomc,r8 ; Write the AND mask and clear conditions - mfspr r8,scomc ; Get back the status (we just ignore it) - sync - isync - - lis r8,l2FIR ; Get the L2 FIR register address - ori r8,r8,0x8000 ; Set to read data - - sync - - mtspr scomc,r8 ; Request the L2 FIR - mfspr r26,scomd ; Get the source - mfspr r8,scomc ; Get back the status (we just ignore it) - sync - isync - - lis r8,l2FIRrst ; Get the L2 FIR AND mask address - - sync - - mtspr scomd,r9 ; Set the AND mask to 0 - mtspr scomc,r8 ; Write the AND mask and clear conditions - mfspr r8,scomc ; Get back the status (we just ignore it) - sync - isync - - lis r8,busFIR ; Get the Bus FIR register address - ori r8,r8,0x8000 ; Set to read data - - sync - - mtspr scomc,r8 ; Request the Bus FIR - mfspr r27,scomd ; Get the source - mfspr r8,scomc ; Get back the status (we just ignore it) - sync - isync - - lis r8,busFIRrst ; Get the Bus FIR AND mask address - - sync - - mtspr scomd,r9 ; Set the AND mask to 0 - mtspr scomc,r8 ; Write the AND mask and clear conditions - mfspr r8,scomc ; Get back the status (we just ignore it) - sync - isync - -; Note: bug in early chips where scom reads are shifted right by 1. We fix that here. -; Also note that we will lose bit 63 - - beq++ mckNoFix ; No fix up is needed - sldi r24,r24,1 ; Shift left 1 - sldi r25,r25,1 ; Shift left 1 - sldi r26,r26,1 ; Shift left 1 - sldi r27,r27,1 ; Shift left 1 - -mckNoFix: std r24,savexdat0(r13) ; Save the MCK source in case we pass the error - std r25,savexdat1(r13) ; Save the Core FIR in case we pass the error - std r26,savexdat2(r13) ; Save the L2 FIR in case we pass the error - std r27,savexdat3(r13) ; Save the BUS FIR in case we pass the error - - rlwinm. r0,r20,0,mckIFUE-32,mckIFUE-32 ; Is this some kind of uncorrectable? - bne mckUE ; Yeah... - - rlwinm. r0,r20,0,mckLDST-32,mckLDST-32 ; Some kind of load/store error? - bne mckHandleLDST ; Yes... - - rldicl. r0,r20,46,62 ; Get the error cause code - beq mckNotSure ; We need some more checks for this one... - - cmplwi r0,2 ; Check for TLB parity error - blt mckSLBparity ; This is an SLB parity error... - bgt mckhIFUE ; This is an IFetch tablewalk reload UE... - -; IFetch TLB parity error - - isync - tlbiel r23 ; Locally invalidate TLB entry for iaddr - sync ; Wait for it - b ceMck ; All recovered... - -; SLB parity error. This could be software caused. We get one if there is -; more than 1 valid SLBE with a matching ESID. That one we do not want to -; try to recover from. Search for it and if we get it, panic. - -mckSLBparity: - crclr cr0_eq ; Make sure we are not equal so we take correct exit - - la r3,emvr0(r2) ; Use this to keep track of valid ESIDs we find - li r5,0 ; Start with index 0 - -mckSLBck: la r4,emvr0(r2) ; Use this to keep track of valid ESIDs we find - slbmfee r6,r5 ; Get the next SLBE - andis. r0,r6,0x0800 ; See if valid bit is on - beq mckSLBnx ; Skip invalid and go to next - -mckSLBck2: cmpld r4,r3 ; Have we reached the end of the table? - beq mckSLBne ; Yes, go enter this one... - ld r7,0(r4) ; Pick up the saved ESID - cmpld r6,r7 ; Is this a match? - beq mckSLBrec ; Whoops, I did bad, recover and pass up... - addi r4,r4,8 ; Next table entry - b mckSLBck2 ; Check the next... - -mckSLBnx: addi r5,r5,1 ; Point to next SLBE - cmplwi r5,64 ; Have we checked all of them? - bne++ mckSLBck ; Not yet, check again... - b mckSLBrec ; We looked at them all, go recover... - -mckSLBne: std r6,0(r3) ; Save this ESID - addi r3,r3,8 ; Point to the new slot - b mckSLBnx ; Go do the next SLBE... - -; Recover an SLB error - -mckSLBrec: li r0,0 ; Set an SLB slot index of 0 - slbia ; Trash all SLB entries (except for entry 0 that is) - slbmfee r7,r0 ; Get the entry that is in SLB index 0 - rldicr r7,r7,0,35 ; Clear the valid bit and the rest - slbie r7 ; Invalidate it - - li r3,0 ; Set the first SLBE - -mckSLBclr: slbmte r0,r3 ; Clear the whole entry to 0s - addi r3,r3,1 ; Bump index - cmplwi cr1,r3,64 ; Have we done them all? - bne++ cr1,mckSLBclr ; Yup.... - - sth r3,ppInvSeg(r2) ; Store non-zero to trigger SLB reload - bne++ ceMck ; This was not a programming error, all recovered... - b ueMck ; Pass the software error up... - -; -; Handle a load/store unit error. We need to decode the DSISR -; - -mckHandleLDST: - rlwinm. r0,r21,0,mckL1DCPE,mckL1DCPE ; An L1 data cache parity error? - bne++ mckL1D ; Yeah, we dealt with this back in the vector... - - rlwinm. r0,r21,0,mckL1DTPE,mckL1DTPE ; An L1 tag error? - bne++ mckL1T ; Yeah, we dealt with this back in the vector... - - rlwinm. r0,r21,0,mckUEdfr,mckUEdfr ; Is the a "deferred" UE? - bne mckDUE ; Yeah, go see if expected... - - rlwinm. r0,r21,0,mckUETwDfr,mckUETwDfr ; Is the a "deferred" tablewalk UE? - bne mckDTW ; Yeah, no recovery... - - rlwinm. r0,r21,0,mckSLBPE,mckSLBPE ; SLB parity error? - bne mckSLBparity ; Yeah, go attempt recovery.... - -; This is a recoverable D-ERAT or TLB error - - la r9,hwMckERCPE(r2) ; Get DERAT parity error count - -mckInvDAR: isync - tlbiel r22 ; Locally invalidate the TLB entry - sync - - lwz r21,0(r9) ; Get count - addi r21,r21,1 ; Count this one - stw r21,0(r9) ; Stick it back - - b ceMck ; All recovered... - -; -; When we come here, we are not quite sure what the error is. We need to -; dig a bit further. -; -; R24 is interrupt source -; R25 is Core FIR -; -; Note that both have been cleared already. -; - -mckNotSure: - rldicl. r0,r24,AsyMCKfir+1,63 ; Something in the FIR? - bne-- mckFIR ; Yup, go check some more... - - rldicl. r0,r24,AsyMCKhri+1,63 ; Hang recovery? - bne-- mckHangRcvr ; Yup... - - rldicl. r0,r24,AsyMCKext+1,63 ; External signal? - bne-- mckExtMck ; Yup... - -; -; We really do not know what this one is or what to do with it... -; - -mckUnk: lwz r21,hwMckUnk(r2) ; Get unknown error count - addi r21,r21,1 ; Count it - stw r21,hwMckUnk(r2) ; Stuff it - b ueMck ; Go south, young man... - -; -; Hang recovery. This is just a notification so we only count. -; - -mckHangRcrvr: - lwz r21,hwMckHang(r2) ; Get hang recovery count - addi r21,r21,1 ; Count this one - stw r21,hwMckHang(r2) ; Stick it back - b ceMck ; All recovered... - -; -; Externally signaled MCK. No recovery for the moment, but we this may be -; where we handle ml_probe_read problems eventually. -; -mckExtMck: - lwz r21,hwMckHang(r2) ; Get hang recovery count - addi r21,r21,1 ; Count this one - stw r21,hwMckHang(r2) ; Stick it back - b ceMck ; All recovered... - -; -; Machine check cause is in a FIR. Suss it out here. -; Core FIR is in R25 and has been cleared in HW. -; - -mckFIR: rldicl. r0,r25,cFIRICachePE+1,63 ; I-Cache parity error? - la r19,hwMckICachePE(r2) ; Point to counter - bne mckInvICache ; Go invalidate I-Cache... - - rldicl. r0,r25,cFIRITagPE0+1,63 ; I-Cache tag parity error? - la r19,hwMckITagPE(r2) ; Point to counter - bne mckInvICache ; Go invalidate I-Cache... - - rldicl. r0,r25,cFIRITagPE1+1,63 ; I-Cache tag parity error? - la r19,hwMckITagPE(r2) ; Point to counter - bne mckInvICache ; Go invalidate I-Cache... - - rldicl. r0,r25,cFIRIEratPE+1,63 ; IERAT parity error? - la r19,hwMckIEratPE(r2) ; Point to counter - bne mckInvERAT ; Go invalidate ERATs... - - rldicl. r0,r25,cFIRIFUL2UE+1,63 ; IFetch got L2 UE? - bne mckhIFUE ; Go count and pass up... - - rldicl. r0,r25,cFIRDCachePE+1,63 ; D-Cache PE? - bne mckL1D ; Handled, just go count... - - rldicl. r0,r25,cFIRDTagPE+1,63 ; D-Cache tag PE? - bne mckL1T ; Handled, just go count... - - rldicl. r0,r25,cFIRDEratPE+1,63 ; DERAT PE? - la r19,hwMckDEratPE(r2) ; Point to counter - bne mckInvERAT ; Go invalidate ERATs... - - rldicl. r0,r25,cFIRTLBPE+1,63 ; TLB PE? - la r9,hwMckTLBPE(r2) ; Get TLB parity error count - bne mckInvDAR ; Go recover... - - rldicl. r0,r25,cFIRSLBPE+1,63 ; SLB PE? - bne mckSLBparity ; Cope with it... - - b mckUnk ; Have not a clue... - -; -; General recovery for I-Cache errors. Just flush it completely. -; - - .align 7 ; Force into cache line - -mckInvICache: - lis r0,0x0080 ; Get a 0x0080 (bit 9 >> 32) - mfspr r21,hid1 ; Get the current HID1 - sldi r0,r0,32 ; Get the "forced ICBI match" bit - or r0,r0,r21 ; Set forced match - - isync - mtspr hid1,r0 ; Stick it - mtspr hid1,r0 ; Stick it again - isync - - li r6,0 ; Start at 0 - -mckIcbi: icbi 0,r6 ; Kill I$ - addi r6,r6,128 ; Next line - andis. r5,r6,1 ; Have we done them all? - beq++ mckIcbi ; Not yet... - - isync - mtspr hid1,r21 ; Restore original HID1 - mtspr hid1,r21 ; Stick it again - isync - - lwz r5,0(r19) ; Get the counter - addi r5,r5,1 ; Count it - stw r5,0(r19) ; Stuff it back - b ceMck ; All recovered... - - -; General recovery for ERAT problems - handled in exception vector already - -mckInvERAT: lwz r21,0(r19) ; Get the exception count spot - addi r21,r21,1 ; Count this one - stw r21,0(r19) ; Save count - b ceMck ; All recovered... - -; General hang recovery - this is a notification only, just count. - -mckHangRcvr: - lwz r21,hwMckHang(r2) ; Get hang recovery count - addi r21,r21,1 ; Count this one - stw r21,hwMckHang(r2) ; Stick it back - b ceMck ; All recovered... - - -; -; These are the uncorrectable errors, just count them then pass it along. -; - -mckUE: lwz r21,hwMckUE(r2) ; Get general uncorrectable error count - addi r21,r21,1 ; Count it - stw r21,hwMckUE(r2) ; Stuff it - b ueMck ; Go south, young man... - -mckhIFUE: lwz r21,hwMckIUEr(r2) ; Get I-Fetch TLB reload uncorrectable error count - addi r21,r21,1 ; Count it - stw r21,hwMckIUEr(r2) ; Stuff it - b ueMck ; Go south, young man... - -mckDUE: lwz r21,hwMckDUE(r2) ; Get deferred uncorrectable error count - addi r21,r21,1 ; Count it - stw r21,hwMckDUE(r2) ; Stuff it - -; -; Right here is where we end up after a failure on a ml_probe_read_64. -; We will check if that is the case, and if so, fix everything up and -; return from it. - - lis r8,hi16(EXT(ml_probe_read_64)) ; High of start - lis r9,hi16(EXT(ml_probe_read_mck_64)) ; High of end - ori r8,r8,lo16(EXT(ml_probe_read_64)) ; Low of start - ori r9,r9,lo16(EXT(ml_probe_read_mck_64)) ; Low of end - cmpld r23,r8 ; Too soon? - cmpld cr1,r23,r9 ; Too late? - - cror cr0_lt,cr0_lt,cr1_gt ; Too soon or too late? - ld r3,saver12(r13) ; Get the original MSR - ld r5,savelr(r13) ; Get the return address - li r4,0 ; Get fail code - blt-- ueMck ; This is a normal machine check, just pass up... - std r5,savesrr0(r13) ; Set the return MSR - - std r3,savesrr1(r13) ; Set the return address - std r4,saver3(r13) ; Set failure return code - b ceMck ; All recovered... - -mckDTW: lwz r21,hwMckDTW(r2) ; Get deferred tablewalk uncorrectable error count - addi r21,r21,1 ; Count it - stw r21,hwMckDTW(r2) ; Stuff it - b ueMck ; Go south, young man... - -mckL1D: lwz r21,hwMckL1DPE(r2) ; Get data cache parity error count - addi r21,r21,1 ; Count it - stw r21,hwMckL1DPE(r2) ; Stuff it - b ceMck ; All recovered... - -mckL1T: lwz r21,hwMckL1TPE(r2) ; Get TLB parity error count - addi r21,r21,1 ; Count it - stw r21,hwMckL1TPE(r2) ; Stuff it - -ceMck: li r0,1 ; Set the recovered flag before passing up - stw r0,savemisc3(r13) ; Set it - b PassUpTrap ; Go up and log error... - -ueMck: li r0,0 ; Set the unrecovered flag before passing up - stw r0,savemisc3(r13) ; Set it - b PassUpTrap ; Go up and log error and probably panic - - -/* - * Here's where we come back from some instruction emulator. If we come back with - * T_IN_VAIN, the emulation is done and we should just reload state and directly - * go back to the interrupted code. Otherwise, we'll check to see if - * we need to redrive with a different interrupt, i.e., DSI. - * Note that this we are actually not redriving the rupt, rather changing it - * into a different one. Thus we clear the redrive bit. - */ - - .align 5 - .globl EXT(EmulExit) - -LEXT(EmulExit) - - cmplwi cr1,r11,T_IN_VAIN ; Was it emulated? - lis r1,hi16(SAVredrive) ; Get redrive request - beq++ cr1,EatRupt ; Yeah, just blast back to the user... - lwz r4,SAVflags(r13) ; Pick up the flags - - and. r0,r4,r1 ; Check if redrive requested - - beq++ PassUpTrap ; No redrive, just keep on going... - - b Redrive ; Redrive the exception... - -; -; Jump into main handler code switching on VM at the same time. -; -; We assume kernel data is mapped contiguously in physical -; memory, otherwise we would need to switch on (at least) virtual data. -; SRs are already set up. -; - - .align 5 - -PassUpTrap: lis r20,hi16(EXT(thandler)) ; Get thandler address - ori r20,r20,lo16(EXT(thandler)) ; Get thandler address - b PassUp ; Go pass it up... - -PassUpRupt: lis r20,hi16(EXT(ihandler)) ; Get ihandler address - ori r20,r20,lo16(EXT(ihandler)) ; Get ihandler address - b PassUp ; Go pass it up... - - .align 5 - -PassUpFPU: lis r20,hi16(EXT(fpu_switch)) ; Get FPU switcher address - ori r20,r20,lo16(EXT(fpu_switch)) ; Get FPU switcher address - b PassUp ; Go pass it up... - -PassUpVMX: lis r20,hi16(EXT(vec_switch)) ; Get VMX switcher address - ori r20,r20,lo16(EXT(vec_switch)) ; Get VMX switcher address - bt++ featAltivec,PassUp ; We have VMX on this CPU... - li r11,T_PROGRAM ; Say that it is a program exception - li r20,8 ; Set invalid instruction - stw r11,saveexception(r13) ; Set the new the exception code - sth r20,savesrr1+4(r13) ; Set the invalid instruction SRR code - - b PassUpTrap ; Go pass it up... - - .align 5 - -PassUpAbend: - lis r20,hi16(EXT(chandler)) ; Get choke handler address - ori r20,r20,lo16(EXT(chandler)) ; Get choke handler address - b PassUp ; Go pass it up... - - .align 5 - -PassUp: -#if INSTRUMENT - mfspr r29,pmc1 ; INSTRUMENT - saveinstr[11] - Take stamp at passup or eatrupt - stw r29,0x6100+(11*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r29,pmc2 ; INSTRUMENT - Get stamp - stw r29,0x6100+(11*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r29,pmc3 ; INSTRUMENT - Get stamp - stw r29,0x6100+(11*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r29,pmc4 ; INSTRUMENT - Get stamp - stw r29,0x6100+(11*16)+0xC(0) ; INSTRUMENT - Save it -#endif - - lwz r10,SAVflags(r13) ; Pick up the flags - - li r0,0xFFF ; Get a page mask - li r2,MASK(MSR_BE)|MASK(MSR_SE) ; Get the mask to save trace bits - andc r5,r13,r0 ; Back off to the start of savearea block - mfmsr r3 ; Get our MSR - rlwinm r10,r10,0,SAVredriveb+1,SAVredriveb-1 ; Clear the redrive before we pass it up - li r21,MSR_SUPERVISOR_INT_OFF ; Get our normal MSR value - and r3,r3,r2 ; Clear all but trace - lwz r5,SACvrswap+4(r5) ; Get real to virtual conversion - or r21,r21,r3 ; Keep the trace bits if they are on - stw r10,SAVflags(r13) ; Set the flags with the cleared redrive flag - mr r3,r11 ; Pass the exception code in the paramter reg - xor r4,r13,r5 ; Pass up the virtual address of context savearea - mfsprg r29,0 ; Get the per_proc block back - rlwinm r4,r4,0,0,31 ; Clean top half of virtual savearea if 64-bit - - mr r3,r21 ; Pass in the MSR we will go to - bl EXT(switchSegs) ; Go handle the segment registers/STB - -#if INSTRUMENT - mfspr r30,pmc1 ; INSTRUMENT - saveinstr[7] - Take stamp afer switchsegs - stw r30,0x6100+(7*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r30,pmc2 ; INSTRUMENT - Get stamp - stw r30,0x6100+(7*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r30,pmc3 ; INSTRUMENT - Get stamp - stw r30,0x6100+(7*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r30,pmc4 ; INSTRUMENT - Get stamp - stw r30,0x6100+(7*16)+0xC(0) ; INSTRUMENT - Save it -#endif - lwz r3,saveexception(r13) ; Recall the exception code - - mtsrr0 r20 ; Set up the handler address - mtsrr1 r21 ; Set up our normal MSR value - - bt++ pf64Bitb,puLaunch ; Handle 64-bit machine... - - rfi ; Launch the exception handler - -puLaunch: rfid ; Launch the exception handler - -/* - * This routine is the main place where we return from an interruption. - * - * This is also where we release the quickfret list. These are saveareas - * that were released as part of the exception exit path in hw_exceptions. - * In order to save an atomic operation (which actually will not work - * properly on a 64-bit machine) we use holdQFret to indicate that the list - * is in flux and should not be looked at here. This comes into play only - * when we take a PTE miss when we are queuing a savearea onto qfret. - * Quite rare but could happen. If the flag is set, this code does not - * release the list and waits until next time. - * - * All we need to remember here is that R13 must point to the savearea - * that has the context we need to load up. Translation and interruptions - * must be disabled. - * - * This code always loads the context in the savearea pointed to - * by R13. In the process, it throws away the savearea. If there - * is any tomfoolery with savearea stacks, it must be taken care of - * before we get here. - * - */ - - .align 5 - -EatRupt: mfsprg r29,0 ; Get the per_proc block back - mr r31,r13 ; Move the savearea pointer to the far end of the register set - mfsprg r27,2 ; Get the processor features - - lwz r3,holdQFret(r29) ; Get the release hold off flag - - bt++ pf64Bitb,eat64a ; Skip down to the 64-bit version of this - -; -; This starts the 32-bit version -; - - mr. r3,r3 ; Should we hold off the quick release? - lwz r30,quickfret+4(r29) ; Pick up the quick fret list, if any - la r21,saver0(r31) ; Point to the first thing we restore - bne- ernoqfret ; Hold off set, do not release just now... - -erchkfret: mr. r3,r30 ; Any savearea to quickly release? - beq+ ernoqfret ; No quickfrets... - lwz r30,SAVprev+4(r30) ; Chain back now - - bl EXT(save_ret_phys) ; Put it on the free list - stw r30,quickfret+4(r29) ; Dequeue previous guy (really, it is ok to wait until after the release) - b erchkfret ; Try the next one... - - .align 5 - -ernoqfret: -#if INSTRUMENT - mfspr r30,pmc1 ; INSTRUMENT - saveinstr[5] - Take stamp at saveareas released - stw r30,0x6100+(5*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r30,pmc2 ; INSTRUMENT - Get stamp - stw r30,0x6100+(5*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r30,pmc3 ; INSTRUMENT - Get stamp - stw r30,0x6100+(5*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r30,pmc4 ; INSTRUMENT - Get stamp - stw r30,0x6100+(5*16)+0xC(0) ; INSTRUMENT - Save it -#endif - - dcbt 0,r21 ; Touch in the first thing we need - -; -; Here we release the savearea. -; -; Important!!!! The savearea is released before we are done with it. When the -; local free savearea list (anchored at lclfree) gets too long, save_ret_phys -; will trim the list, making the extra saveareas allocatable by another processor -; The code in there must ALWAYS leave our savearea on the local list, otherwise -; we could be very, very unhappy. The code there always queues the "just released" -; savearea to the head of the local list. Then, if it needs to trim, it will -; start with the SECOND savearea, leaving ours intact. -; -; - - mr r3,r31 ; Get the exiting savearea in parm register - bl EXT(save_ret_phys) ; Put it on the free list -#if INSTRUMENT - mfspr r3,pmc1 ; INSTRUMENT - saveinstr[6] - Take stamp afer savearea released - stw r3,0x6100+(6*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r3,pmc2 ; INSTRUMENT - Get stamp - stw r3,0x6100+(6*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r3,pmc3 ; INSTRUMENT - Get stamp - stw r3,0x6100+(6*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r3,pmc4 ; INSTRUMENT - Get stamp - stw r3,0x6100+(6*16)+0xC(0) ; INSTRUMENT - Save it -#endif - - lwz r3,savesrr1+4(r31) ; Pass in the MSR we are going to - bl EXT(switchSegs) ; Go handle the segment registers/STB -#if INSTRUMENT - mfspr r30,pmc1 ; INSTRUMENT - saveinstr[10] - Take stamp afer switchsegs - stw r30,0x6100+(10*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r30,pmc2 ; INSTRUMENT - Get stamp - stw r30,0x6100+(10*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r30,pmc3 ; INSTRUMENT - Get stamp - stw r30,0x6100+(10*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r30,pmc4 ; INSTRUMENT - Get stamp - stw r30,0x6100+(10*16)+0xC(0) ; INSTRUMENT - Save it -#endif - li r3,savesrr1+4 ; Get offset to the srr1 value - - lhz r9,PP_CPU_FLAGS(r29) ; Get the processor flags - lwarx r26,r3,r31 ; Get destination MSR and take reservation along the way (just so we can blow it away) - - rlwinm r25,r26,27,22,22 ; Move PR bit to BE - - cmplw cr3,r14,r14 ; Set that we do not need to stop streams - - rlwinm r9,r9,(((31-MSR_BE_BIT)+(traceBEb+16+1))&31),MSR_BE_BIT,MSR_BE_BIT ; Set BE bit if special trace is on - li r21,emfp0 ; Point to the fp savearea - and r9,r9,r25 ; Clear BE if supervisor state - or r26,r26,r9 ; Flip on the BE bit for special trace if needed - stwcx. r26,r3,r31 ; Blow away any reservations we hold (and set BE) - - lwz r25,savesrr0+4(r31) ; Get the SRR0 to use - - la r28,saver4(r31) ; Point to the 32-byte line with r4-r7 - dcbz r21,r29 ; Clear a work area - lwz r0,saver0+4(r31) ; Restore R0 - dcbt 0,r28 ; Touch in r4-r7 - lwz r1,saver1+4(r31) ; Restore R1 - lwz r2,saver2+4(r31) ; Restore R2 - la r28,saver8(r31) ; Point to the 32-byte line with r8-r11 - lwz r3,saver3+4(r31) ; Restore R3 - andis. r6,r27,hi16(pfAltivec) ; Do we have altivec on the machine? - dcbt 0,r28 ; touch in r8-r11 - lwz r4,saver4+4(r31) ; Restore R4 - la r28,saver12(r31) ; Point to the 32-byte line with r12-r15 - mtsrr0 r25 ; Restore the SRR0 now - lwz r5,saver5+4(r31) ; Restore R5 - mtsrr1 r26 ; Restore the SRR1 now - lwz r6,saver6+4(r31) ; Restore R6 - - dcbt 0,r28 ; touch in r12-r15 - la r28,saver16(r31) - - lwz r7,saver7+4(r31) ; Restore R7 - lwz r8,saver8+4(r31) ; Restore R8 - lwz r9,saver9+4(r31) ; Restore R9 - - dcbt 0,r28 ; touch in r16-r19 - la r28,saver20(r31) - - lwz r10,saver10+4(r31) ; Restore R10 - lwz r11,saver11+4(r31) ; Restore R11 - - dcbt 0,r28 ; touch in r20-r23 - la r28,savevscr(r31) ; Point to the status area - - lwz r12,saver12+4(r31) ; Restore R12 - lwz r13,saver13+4(r31) ; Restore R13 - - la r14,savectr+4(r31) - dcbt 0,r28 ; Touch in VSCR and FPSCR - dcbt 0,r14 ; touch in CTR, DAR, DSISR, VRSAVE, and Exception code - - lwz r26,next_savearea+4(r29) ; Get the exception save area - la r28,saver24(r31) - - lwz r14,saver14+4(r31) ; Restore R14 - lwz r15,saver15+4(r31) ; Restore R15 - - - stfd f0,emfp0(r29) ; Save FP0 - lwz r27,savevrsave(r31) ; Get the vrsave - dcbt 0,r28 ; touch in r24-r27 - la r28,savevscr(r31) ; Point to the status area - lfd f0,savefpscrpad(r31) ; Get the fpscr - la r22,saver28(r31) - mtfsf 0xFF,f0 ; Restore fpscr - lfd f0,emfp0(r29) ; Restore the used register - - beq noavec3 ; No Altivec on this CPU... - - stvxl v0,r21,r29 ; Save a vector register - lvxl v0,0,r28 ; Get the vector status - mtspr vrsave,r27 ; Set the vrsave - mtvscr v0 ; Set the vector status - lvxl v0,r21,r29 ; Restore work vector register - -noavec3: dcbt 0,r22 ; touch in r28-r31 - - lwz r23,spcFlags(r29) ; Get the special flags from per_proc - la r17,savesrr0(r31) - la r26,saver0(r26) ; Point to the first part of the next savearea - dcbt 0,r17 ; touch in SRR0, SRR1, CR, XER, LR - lhz r28,pfrptdProc(r29) ; Get the reported processor type - - lwz r16,saver16+4(r31) ; Restore R16 - lwz r17,saver17+4(r31) ; Restore R17 - lwz r18,saver18+4(r31) ; Restore R18 - lwz r19,saver19+4(r31) ; Restore R19 - lwz r20,saver20+4(r31) ; Restore R20 - lwz r21,saver21+4(r31) ; Restore R21 - lwz r22,saver22+4(r31) ; Restore R22 - - cmpwi cr1,r28,CPU_SUBTYPE_POWERPC_750 ; G3? - - dcbz 0,r26 ; Clear and allocate next savearea we use in the off chance it is still in when we next interrupt - - andis. r23,r23,hi16(perfMonitor) ; Is the performance monitor enabled? - lwz r23,saver23+4(r31) ; Restore R23 - cmpwi cr2,r28,CPU_SUBTYPE_POWERPC_7400 ; Yer standard G4? - lwz r24,saver24+4(r31) ; Restore R24 - lwz r25,saver25+4(r31) ; Restore R25 - lwz r26,saver26+4(r31) ; Restore R26 - lwz r27,saver27+4(r31) ; Restore R27 - - beq+ noPerfMonRestore32 ; No perf monitor... - - beq- cr1,perfMonRestore32_750 ; This is a G3... - beq- cr2,perfMonRestore32_7400 ; Standard G4... - - lwz r28,savepmc+16(r31) - lwz r29,savepmc+20(r31) - mtspr pmc5,r28 ; Restore PMC5 - mtspr pmc6,r29 ; Restore PMC6 - -perfMonRestore32_7400: - lwz r28,savemmcr2+4(r31) - mtspr mmcr2,r28 ; Restore MMCR2 - -perfMonRestore32_750: - lwz r28,savepmc+0(r31) - lwz r29,savepmc+4(r31) - mtspr pmc1,r28 ; Restore PMC1 - mtspr pmc2,r29 ; Restore PMC2 - lwz r28,savepmc+8(r31) - lwz r29,savepmc+12(r31) - mtspr pmc3,r28 ; Restore PMC3 - mtspr pmc4,r29 ; Restore PMC4 - lwz r28,savemmcr1+4(r31) - lwz r29,savemmcr0+4(r31) - mtspr mmcr1,r28 ; Restore MMCR1 - mtspr mmcr0,r29 ; Restore MMCR0 - -noPerfMonRestore32: - lwz r28,savecr(r31) ; Get CR to restore - lwz r29,savexer+4(r31) ; Get XER to restore - mtcr r28 ; Restore the CR - lwz r28,savelr+4(r31) ; Get LR to restore - mtxer r29 ; Restore the XER - lwz r29,savectr+4(r31) ; Get the CTR to restore - mtlr r28 ; Restore the LR - lwz r28,saver30+4(r31) ; Get R30 - mtctr r29 ; Restore the CTR - lwz r29,saver31+4(r31) ; Get R31 - mtsprg 2,r28 ; Save R30 for later - lwz r28,saver28+4(r31) ; Restore R28 - mtsprg 3,r29 ; Save R31 for later - lwz r29,saver29+4(r31) ; Restore R29 - - mfsprg r31,0 ; Get per_proc - mfsprg r30,2 ; Restore R30 - lwz r31,pfAvailable(r31) ; Get the feature flags - mtsprg 2,r31 ; Set the feature flags - mfsprg r31,3 ; Restore R31 - - rfi ; Click heels three times and think very hard that there is no place like home... - - .long 0 ; Leave this here - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - - -; -; This starts the 64-bit version -; - - .align 7 - -eat64a: ld r30,quickfret(r29) ; Pick up the quick fret list, if any - - mr. r3,r3 ; Should we hold off the quick release? - la r21,saver0(r31) ; Point to the first thing we restore - bne-- ernoqfre64 ; Hold off set, do not release just now... - -erchkfre64: mr. r3,r30 ; Any savearea to quickly release? - beq+ ernoqfre64 ; No quickfrets... - ld r30,SAVprev(r30) ; Chain back now - - bl EXT(save_ret_phys) ; Put it on the free list - - std r30,quickfret(r29) ; Dequeue previous guy (really, it is ok to wait until after the release) - b erchkfre64 ; Try the next one... - - .align 7 - -ernoqfre64: dcbt 0,r21 ; Touch in the first thing we need - -; -; Here we release the savearea. -; -; Important!!!! The savearea is released before we are done with it. When the -; local free savearea list (anchored at lclfree) gets too long, save_ret_phys -; will trim the list, making the extra saveareas allocatable by another processor -; The code in there must ALWAYS leave our savearea on the local list, otherwise -; we could be very, very unhappy. The code there always queues the "just released" -; savearea to the head of the local list. Then, if it needs to trim, it will -; start with the SECOND savearea, leaving ours intact. -; -; - - li r3,lgKillResv ; Get spot to kill reservation - stdcx. r3,0,r3 ; Blow away any reservations we hold - - mr r3,r31 ; Get the exiting savearea in parm register - bl EXT(save_ret_phys) ; Put it on the free list - - lwz r3,savesrr1+4(r31) ; Pass in the MSR we will be going to - bl EXT(switchSegs) ; Go handle the segment registers/STB - - lhz r9,PP_CPU_FLAGS(r29) ; Get the processor flags - ld r26,savesrr1(r31) ; Get destination MSR - cmplw cr3,r14,r14 ; Set that we do not need to stop streams - rlwinm r25,r26,27,22,22 ; Move PR bit to BE - - rlwinm r9,r9,(((31-MSR_BE_BIT)+(traceBEb+16+1))&31),MSR_BE_BIT,MSR_BE_BIT ; Set BE bit if special trace is on - li r21,emfp0 ; Point to a workarea - and r9,r9,r25 ; Clear BE if supervisor state - or r26,r26,r9 ; Flip on the BE bit for special trace if needed - - ld r25,savesrr0(r31) ; Get the SRR0 to use - la r28,saver16(r31) ; Point to the 128-byte line with r16-r31 - dcbz128 r21,r29 ; Clear a work area - ld r0,saver0(r31) ; Restore R0 - dcbt 0,r28 ; Touch in r16-r31 - ld r1,saver1(r31) ; Restore R1 - ld r2,saver2(r31) ; Restore R2 - ld r3,saver3(r31) ; Restore R3 - mtcrf 0x80,r27 ; Get facility availability flags (do not touch CR1-7) - ld r4,saver4(r31) ; Restore R4 - mtsrr0 r25 ; Restore the SRR0 now - ld r5,saver5(r31) ; Restore R5 - mtsrr1 r26 ; Restore the SRR1 now - ld r6,saver6(r31) ; Restore R6 - - ld r7,saver7(r31) ; Restore R7 - ld r8,saver8(r31) ; Restore R8 - ld r9,saver9(r31) ; Restore R9 - - la r28,savevscr(r31) ; Point to the status area - - ld r10,saver10(r31) ; Restore R10 - ld r11,saver11(r31) ; Restore R11 - ld r12,saver12(r31) ; Restore R12 - ld r13,saver13(r31) ; Restore R13 - - ld r26,next_savearea(r29) ; Get the exception save area - - ld r14,saver14(r31) ; Restore R14 - ld r15,saver15(r31) ; Restore R15 - lwz r27,savevrsave(r31) ; Get the vrsave - - bf-- pfAltivecb,noavec2s ; Skip if no VMX... - - stvxl v0,r21,r29 ; Save a vector register - lvxl v0,0,r28 ; Get the vector status - mtvscr v0 ; Set the vector status - - lvxl v0,r21,r29 ; Restore work vector register - -noavec2s: mtspr vrsave,r27 ; Set the vrsave - - lwz r28,saveexception(r31) ; Get exception type - stfd f0,emfp0(r29) ; Save FP0 - lfd f0,savefpscrpad(r31) ; Get the fpscr - mtfsf 0xFF,f0 ; Restore fpscr - lfd f0,emfp0(r29) ; Restore the used register - ld r16,saver16(r31) ; Restore R16 - lwz r30,spcFlags(r29) ; Get the special flags from per_proc - ld r17,saver17(r31) ; Restore R17 - ld r18,saver18(r31) ; Restore R18 - cmplwi cr1,r28,T_RESET ; Are we returning from a reset? - ld r19,saver19(r31) ; Restore R19 - ld r20,saver20(r31) ; Restore R20 - li r27,0 ; Get a zero - ld r21,saver21(r31) ; Restore R21 - la r26,saver0(r26) ; Point to the first part of the next savearea - andis. r30,r30,hi16(perfMonitor) ; Is the performance monitor enabled? - ld r22,saver22(r31) ; Restore R22 - ld r23,saver23(r31) ; Restore R23 - bne++ cr1,er64rrst ; We are not returning from a reset... - stw r27,lo16(EXT(ResetHandler)-EXT(ExceptionVectorsStart)+RESETHANDLER_TYPE)(br0) ; Allow resets again - -er64rrst: ld r24,saver24(r31) ; Restore R24 - - dcbz128 0,r26 ; Clear and allocate next savearea we use in the off chance it is still in when we next interrupt - - ld r25,saver25(r31) ; Restore R25 - ld r26,saver26(r31) ; Restore R26 - ld r27,saver27(r31) ; Restore R27 - - beq++ noPerfMonRestore64 ; Nope... - - lwz r28,savepmc+0(r31) - lwz r29,savepmc+4(r31) - mtspr pmc1_gp,r28 ; Restore PMC1 - mtspr pmc2_gp,r29 ; Restore PMC2 - lwz r28,savepmc+8(r31) - lwz r29,savepmc+12(r31) - mtspr pmc3_gp,r28 ; Restore PMC3 - mtspr pmc4_gp,r29 ; Restore PMC4 - lwz r28,savepmc+16(r31) - lwz r29,savepmc+20(r31) - mtspr pmc5_gp,r28 ; Restore PMC5 - mtspr pmc6_gp,r29 ; Restore PMC6 - lwz r28,savepmc+24(r31) - lwz r29,savepmc+28(r31) - mtspr pmc7_gp,r28 ; Restore PMC7 - mtspr pmc8_gp,r29 ; Restore PMC8 - ld r28,savemmcr1(r31) - ld r29,savemmcr2(r31) - mtspr mmcr1_gp,r28 ; Restore MMCR1 - mtspr mmcra_gp,r29 ; Restore MMCRA - ld r28,savemmcr0(r31) - - mtspr mmcr0_gp,r28 ; Restore MMCR0 - -noPerfMonRestore64: - mfsprg r30,0 ; Get per_proc - lwz r28,savecr(r31) ; Get CR to restore - ld r29,savexer(r31) ; Get XER to restore - mtcr r28 ; Restore the CR - ld r28,savelr(r31) ; Get LR to restore - mtxer r29 ; Restore the XER - ld r29,savectr(r31) ; Get the CTR to restore - mtlr r28 ; Restore the LR - ld r28,saver30(r31) ; Get R30 - mtctr r29 ; Restore the CTR - ld r29,saver31(r31) ; Get R31 - mtspr hsprg0,r28 ; Save R30 for later - ld r28,saver28(r31) ; Restore R28 - mtsprg 3,r29 ; Save R31 for later - ld r29,saver29(r31) ; Restore R29 - - lwz r31,pfAvailable(r30) ; Get the feature flags - lwz r30,UAW(r30) ; Get the User Assist Word - mtsprg 2,r31 ; Set the feature flags - mfsprg r31,3 ; Restore R31 - mtsprg 3,r30 ; Set the UAW - mfspr r30,hsprg0 ; Restore R30 - - rfid ; Click heels three times and think very hard that there is no place like home... - - - -/* - * exception_exit(savearea *) - * - * - * ENTRY : IR and/or DR and/or interruptions can be on - * R3 points to the virtual address of a savearea - */ - - .align 5 - .globl EXT(exception_exit) - -LEXT(exception_exit) - - mfsprg r29,2 ; Get feature flags - mr r31,r3 ; Get the savearea in the right register - mtcrf 0x04,r29 ; Set the features - li r0,1 ; Get this just in case - mtcrf 0x02,r29 ; Set the features - lis r30,hi16(MASK(MSR_VEC)|MASK(MSR_FP)|MASK(MSR_ME)) ; Set up the MSR we will use throughout. Note that ME come on here if MCK - rlwinm r4,r3,0,0,19 ; Round down to savearea block base - lis r1,hi16(SAVredrive) ; Get redrive request - mfsprg r2,0 ; Get the per_proc block - ori r30,r30,lo16(MASK(MSR_VEC)|MASK(MSR_FP)|MASK(MSR_ME)) ; Rest of MSR - bt++ pf64Bitb,eeSixtyFour ; We are 64-bit... - - lwz r4,SACvrswap+4(r4) ; Get the virtual to real translation - - bt pfNoMSRirb,eeNoMSR ; No MSR... - - mtmsr r30 ; Translation and all off - isync ; Toss prefetch - b eeNoMSRx - - .align 5 - -eeSixtyFour: - ld r4,SACvrswap(r4) ; Get the virtual to real translation - rldimi r30,r0,63,MSR_SF_BIT ; Set SF bit (bit 0) - mtmsrd r30 ; Set 64-bit mode, turn off EE, DR, and IR - isync ; Toss prefetch - b eeNoMSRx - - .align 5 - -eeNoMSR: li r0,loadMSR ; Get the MSR setter SC - mr r3,r30 ; Get new MSR - sc ; Set it - -eeNoMSRx: xor r31,r31,r4 ; Convert the savearea to physical addressing - lwz r4,SAVflags(r31) ; Pick up the flags - mr r13,r31 ; Put savearea here also - -#if INSTRUMENT - mfspr r5,pmc1 ; INSTRUMENT - saveinstr[8] - stamp exception exit - stw r5,0x6100+(8*16)+0x0(0) ; INSTRUMENT - Save it - mfspr r5,pmc2 ; INSTRUMENT - Get stamp - stw r5,0x6100+(8*16)+0x4(0) ; INSTRUMENT - Save it - mfspr r5,pmc3 ; INSTRUMENT - Get stamp - stw r5,0x6100+(8*16)+0x8(0) ; INSTRUMENT - Save it - mfspr r5,pmc4 ; INSTRUMENT - Get stamp - stw r5,0x6100+(8*16)+0xC(0) ; INSTRUMENT - Save it -#endif - - - and. r0,r4,r1 ; Check if redrive requested - - dcbt br0,r2 ; We will need this in just a sec - - beq+ EatRupt ; No redrive, just exit... - - lwz r11,saveexception(r13) ; Restore exception code - b Redrive ; Redrive the exception... - - - - .align 12 ; Force page alignment - - .globl EXT(ExceptionVectorsEnd) -EXT(ExceptionVectorsEnd): /* Used if relocating the exception vectors */ - - - - -; -; Here is where we keep the low memory globals -; - - . = 0x5000 - .globl EXT(lowGlo) - -EXT(lowGlo): - - .ascii "Hagfish " ; 5000 Unique eyecatcher - .long 0 ; 5008 Zero - .long 0 ; 500C Zero cont... - .long EXT(per_proc_info) ; 5010 pointer to per_procs - .long EXT(chudxnu_fn_table) ; 5014 pointer to chudxnu function glue table - .long 0 ; 5018 reserved - .long 0 ; 501C reserved - .long 0 ; 5020 reserved - .long 0 ; 5024 reserved - .long 0 ; 5028 reserved - .long 0 ; 502C reserved - .long 0 ; 5030 reserved - .long 0 ; 5034 reserved - .long 0 ; 5038 reserved - .long 0 ; 503C reserved - .long 0 ; 5040 reserved - .long 0 ; 5044 reserved - .long 0 ; 5048 reserved - .long 0 ; 504C reserved - .long 0 ; 5050 reserved - .long 0 ; 5054 reserved - .long 0 ; 5058 reserved - .long 0 ; 505C reserved - .long 0 ; 5060 reserved - .long 0 ; 5064 reserved - .long 0 ; 5068 reserved - .long 0 ; 506C reserved - .long 0 ; 5070 reserved - .long 0 ; 5074 reserved - .long 0 ; 5078 reserved - .long 0 ; 507C reserved - - .globl EXT(trcWork) -EXT(trcWork): - .long 0 ; 5080 The next trace entry to use -#if DEBUG - .long 0xFFFFFFFF ; 5084 All enabled -#else - .long 0x00000000 ; 5084 All disabled on non-debug systems -#endif - .long 0 ; 5088 Start of the trace table - .long 0 ; 508C End (wrap point) of the trace - .long 0 ; 5090 Saved mask while in debugger - .long 0 ; 5094 Size of trace table (1 - 256 pages) - .long 0 ; 5098 traceGas[0] - .long 0 ; 509C traceGas[1] - - .long 0 ; 50A0 reserved - .long 0 ; 50A4 reserved - .long 0 ; 50A8 reserved - .long 0 ; 50AC reserved - .long 0 ; 50B0 reserved - .long 0 ; 50B4 reserved - .long 0 ; 50B8 reserved - .long 0 ; 50BC reserved - .long 0 ; 50C0 reserved - .long 0 ; 50C4 reserved - .long 0 ; 50C8 reserved - .long 0 ; 50CC reserved - .long 0 ; 50D0 reserved - .long 0 ; 50D4 reserved - .long 0 ; 50D8 reserved - .long 0 ; 50DC reserved - .long 0 ; 50E0 reserved - .long 0 ; 50E4 reserved - .long 0 ; 50E8 reserved - .long 0 ; 50EC reserved - .long 0 ; 50F0 reserved - .long 0 ; 50F4 reserved - .long 0 ; 50F8 reserved - .long 0 ; 50FC reserved - - .globl EXT(saveanchor) - -EXT(saveanchor): ; 5100 saveanchor - .set .,.+SVsize - - .long 0 ; 5140 reserved - .long 0 ; 5144 reserved - .long 0 ; 5148 reserved - .long 0 ; 514C reserved - .long 0 ; 5150 reserved - .long 0 ; 5154 reserved - .long 0 ; 5158 reserved - .long 0 ; 515C reserved - .long 0 ; 5160 reserved - .long 0 ; 5164 reserved - .long 0 ; 5168 reserved - .long 0 ; 516C reserved - .long 0 ; 5170 reserved - .long 0 ; 5174 reserved - .long 0 ; 5178 reserved - .long 0 ; 517C reserved - - .long 0 ; 5180 tlbieLock - - .long 0 ; 5184 reserved - .long 0 ; 5188 reserved - .long 0 ; 518C reserved - .long 0 ; 5190 reserved - .long 0 ; 5194 reserved - .long 0 ; 5198 reserved - .long 0 ; 519C reserved - .long 0 ; 51A0 reserved - .long 0 ; 51A4 reserved - .long 0 ; 51A8 reserved - .long 0 ; 51AC reserved - .long 0 ; 51B0 reserved - .long 0 ; 51B4 reserved - .long 0 ; 51B8 reserved - .long 0 ; 51BC reserved - .long 0 ; 51C0 reserved - .long 0 ; 51C4 reserved - .long 0 ; 51C8 reserved - .long 0 ; 51CC reserved - .long 0 ; 51D0 reserved - .long 0 ; 51D4 reserved - .long 0 ; 51D8 reserved - .long 0 ; 51DC reserved - .long 0 ; 51E0 reserved - .long 0 ; 51E4 reserved - .long 0 ; 51E8 reserved - .long 0 ; 51EC reserved - .long 0 ; 51F0 reserved - .long 0 ; 51F4 reserved - .long 0 ; 51F8 reserved - .long 0 ; 51FC reserved - - .globl EXT(dgWork) - -EXT(dgWork): - - .long 0 ; 5200 dgLock - .long 0 ; 5204 dgFlags - .long 0 ; 5208 dgMisc0 - .long 0 ; 520C dgMisc1 - .long 0 ; 5210 dgMisc2 - .long 0 ; 5214 dgMisc3 - .long 0 ; 5218 dgMisc4 - .long 0 ; 521C dgMisc5 - - .long 0 ; 5220 reserved - .long 0 ; 5224 reserved - .long 0 ; 5228 reserved - .long 0 ; 522C reserved - .long 0 ; 5230 reserved - .long 0 ; 5234 reserved - .long 0 ; 5238 reserved - .long 0 ; 523C reserved - .long 0 ; 5240 reserved - .long 0 ; 5244 reserved - .long 0 ; 5248 reserved - .long 0 ; 524C reserved - .long 0 ; 5250 reserved - .long 0 ; 5254 reserved - .long 0 ; 5258 reserved - .long 0 ; 525C reserved - .long 0 ; 5260 reserved - .long 0 ; 5264 reserved - .long 0 ; 5268 reserved - .long 0 ; 526C reserved - .long 0 ; 5270 reserved - .long 0 ; 5274 reserved - .long 0 ; 5278 reserved - .long 0 ; 527C reserved - - .long 0 ; 5280 reserved - .long 0 ; 5284 reserved - .long 0 ; 5288 reserved - .long 0 ; 528C reserved - .long 0 ; 5290 reserved - .long 0 ; 5294 reserved - .long 0 ; 5298 reserved - .long 0 ; 529C reserved - .long 0 ; 52A0 reserved - .long 0 ; 52A4 reserved - .long 0 ; 52A8 reserved - .long 0 ; 52AC reserved - .long 0 ; 52B0 reserved - .long 0 ; 52B4 reserved - .long 0 ; 52B8 reserved - .long 0 ; 52BC reserved - .long 0 ; 52C0 reserved - .long 0 ; 52C4 reserved - .long 0 ; 52C8 reserved - .long 0 ; 52CC reserved - .long 0 ; 52D0 reserved - .long 0 ; 52D4 reserved - .long 0 ; 52D8 reserved - .long 0 ; 52DC reserved - .long 0 ; 52E0 reserved - .long 0 ; 52E4 reserved - .long 0 ; 52E8 reserved - .long 0 ; 52EC reserved - .long 0 ; 52F0 reserved - .long 0 ; 52F4 reserved - .long 0 ; 52F8 reserved - .long 0 ; 52FC reserved - - .globl EXT(killresv) -EXT(killresv): - - .long 0 ; 5300 Used to kill reservations - .long 0 ; 5304 Used to kill reservations - .long 0 ; 5308 Used to kill reservations - .long 0 ; 530C Used to kill reservations - .long 0 ; 5310 Used to kill reservations - .long 0 ; 5314 Used to kill reservations - .long 0 ; 5318 Used to kill reservations - .long 0 ; 531C Used to kill reservations - .long 0 ; 5320 Used to kill reservations - .long 0 ; 5324 Used to kill reservations - .long 0 ; 5328 Used to kill reservations - .long 0 ; 532C Used to kill reservations - .long 0 ; 5330 Used to kill reservations - .long 0 ; 5334 Used to kill reservations - .long 0 ; 5338 Used to kill reservations - .long 0 ; 533C Used to kill reservations - .long 0 ; 5340 Used to kill reservations - .long 0 ; 5344 Used to kill reservations - .long 0 ; 5348 Used to kill reservations - .long 0 ; 534C Used to kill reservations - .long 0 ; 5350 Used to kill reservations - .long 0 ; 5354 Used to kill reservations - .long 0 ; 5358 Used to kill reservations - .long 0 ; 535C Used to kill reservations - .long 0 ; 5360 Used to kill reservations - .long 0 ; 5364 Used to kill reservations - .long 0 ; 5368 Used to kill reservations - .long 0 ; 536C Used to kill reservations - .long 0 ; 5370 Used to kill reservations - .long 0 ; 5374 Used to kill reservations - .long 0 ; 5378 Used to kill reservations - .long 0 ; 537C Used to kill reservations - - .long 0 ; 5380 reserved - .long 0 ; 5384 reserved - .long 0 ; 5388 reserved - .long 0 ; 538C reserved - .long 0 ; 5390 reserved - .long 0 ; 5394 reserved - .long 0 ; 5398 reserved - .long 0 ; 539C reserved - .long 0 ; 53A0 reserved - .long 0 ; 53A4 reserved - .long 0 ; 53A8 reserved - .long 0 ; 53AC reserved - .long 0 ; 53B0 reserved - .long 0 ; 53B4 reserved - .long 0 ; 53B8 reserved - .long 0 ; 53BC reserved - .long 0 ; 53C0 reserved - .long 0 ; 53C4 reserved - .long 0 ; 53C8 reserved - .long 0 ; 53CC reserved - .long 0 ; 53D0 reserved - .long 0 ; 53D4 reserved - .long 0 ; 53D8 reserved - .long 0 ; 53DC reserved - .long 0 ; 53E0 reserved - .long 0 ; 53E4 reserved - .long 0 ; 53E8 reserved - .long 0 ; 53EC reserved - .long 0 ; 53F0 reserved - .long 0 ; 53F4 reserved - .long 0 ; 53F8 reserved - .long 0 ; 53FC reserved - - -; -; The "shared page" is used for low-level debugging -; - - . = 0x6000 - .globl EXT(sharedPage) - -EXT(sharedPage): ; Per processor data area - .long 0xC24BC195 ; Comm Area validity value - .long 0x87859393 ; Comm Area validity value - .long 0xE681A2C8 ; Comm Area validity value - .long 0x8599855A ; Comm Area validity value - .long 0xD74BD296 ; Comm Area validity value - .long 0x8388E681 ; Comm Area validity value - .long 0xA2C88599 ; Comm Area validity value - .short 0x855A ; Comm Area validity value - .short 1 ; Comm Area version number - .fill 1016*4,1,0 ; (filled with 0s) - - .data - .align ALIGN - .globl EXT(exception_end) -EXT(exception_end): - .long EXT(ExceptionVectorsEnd) -EXT(ExceptionVectorsStart) /* phys fn */ - - - diff --git a/osfmk/ppc/machine_cpu.h b/osfmk/ppc/machine_cpu.h index 98dd13a77..d0dfac592 100644 --- a/osfmk/ppc/machine_cpu.h +++ b/osfmk/ppc/machine_cpu.h @@ -45,4 +45,7 @@ void cpu_sleep( void cpu_signal_handler( void); +void cpu_exit_wait( + int); + #endif /* _PPC_MACHINE_CPU_H_ */ diff --git a/osfmk/ppc/machine_routines.c b/osfmk/ppc/machine_routines.c index 00fbfc6af..8118d1adc 100644 --- a/osfmk/ppc/machine_routines.c +++ b/osfmk/ppc/machine_routines.c @@ -34,6 +34,9 @@ unsigned int LockTimeOut = 12500000; unsigned int MutexSpin = 0; extern int forcenap; +decl_simple_lock_data(, spsLock); +unsigned int spsLockInit = 0; + #define MAX_CPUS_SET 0x1 #define MAX_CPUS_WAIT 0x2 @@ -237,7 +240,11 @@ ml_processor_register( int donap; if (processor_info->boot_cpu == FALSE) { - if (cpu_register(&target_cpu) != KERN_SUCCESS) + if (spsLockInit == 0) { + spsLockInit = 1; + simple_lock_init(&spsLock, 0); + } + if (cpu_register(&target_cpu) != KERN_SUCCESS) return KERN_FAILURE; } else { /* boot_cpu is always 0 */ @@ -392,6 +399,92 @@ ml_enable_cache_level(int cache_level, int enable) return -1; } +/* + * Routine: ml_set_processor_speed + * Function: + */ +void +ml_set_processor_speed(unsigned long speed) +{ + struct per_proc_info *proc_info; + uint32_t powerModes, cpu; + kern_return_t result; + boolean_t current_state; + unsigned int i; + + extern void ml_set_processor_speed_slave(unsigned long speed); + extern void ml_set_processor_speed_dpll(unsigned long speed); + extern void ml_set_processor_speed_dfs(unsigned long speed); + extern void ml_set_processor_speed_powertune(unsigned long speed); + + powerModes = per_proc_info[0].pf.pfPowerModes; + + if (powerModes & pmDualPLL) { + + ml_set_processor_speed_dpll(speed); + + } else if (powerModes & pmDFS) { + + for (cpu = 0; cpu < real_ncpus; cpu++) { + /* + * cpu_signal() returns after .5ms if it fails to signal a running cpu + * retry cpu_signal() for .1s to deal with long interrupt latency at boot + */ + for (i=200; i>0; i--) { + current_state = ml_set_interrupts_enabled(FALSE); + if (cpu != cpu_number()) { + if(!((machine_slot[cpu].running) && + (per_proc_info[cpu].cpu_flags & SignalReady))) + /* + * Target cpu is off-line, skip + */ + result = KERN_SUCCESS; + else { + simple_lock(&spsLock); + result = cpu_signal(cpu, SIGPcpureq, CPRQsps, speed); + if (result == KERN_SUCCESS) + thread_sleep_simple_lock(&spsLock, &spsLock, THREAD_UNINT); + simple_unlock(&spsLock); + } + } else { + ml_set_processor_speed_dfs(speed); + result = KERN_SUCCESS; + } + (void) ml_set_interrupts_enabled(current_state); + if (result == KERN_SUCCESS) + break; + } + if (result != KERN_SUCCESS) + panic("ml_set_processor_speed(): Fail to set cpu%d speed\n", cpu); + } + + } else if (powerModes & pmPowerTune) { + + ml_set_processor_speed_powertune(speed); + + } +} + +/* + * Routine: ml_set_processor_speed_slave + * Function: + */ +void +ml_set_processor_speed_slave(unsigned long speed) +{ + extern void ml_set_processor_speed_dfs(unsigned long speed); + + ml_set_processor_speed_dfs(speed); + + simple_lock(&spsLock); + thread_wakeup(&spsLock); + simple_unlock(&spsLock); +} + +/* + * Routine: ml_init_lock_timeout + * Function: + */ void ml_init_lock_timeout(void) { diff --git a/osfmk/ppc/machine_routines_asm.s b/osfmk/ppc/machine_routines_asm.s index e0d376d44..075436263 100644 --- a/osfmk/ppc/machine_routines_asm.s +++ b/osfmk/ppc/machine_routines_asm.s @@ -783,8 +783,9 @@ LEXT(machine_idle_ppc) lis r4,hi16(dozem) ; Assume we can doze bt pfCanDozeb,yesnap ; We can sleep or doze one this machine... - + ori r3,r3,lo16(MASK(MSR_EE)) ; Flip on EE + mtmsr r3 ; Turn interruptions back on blr ; Leave... @@ -792,8 +793,7 @@ yesnap: mftbu r9 ; Get the upper timebase mftb r7 ; Get the lower timebase mftbu r8 ; Get the upper one again cmplw r9,r8 ; Did the top tick? - bne- yesnap ; Yeah, need to get it again... - + bne-- yesnap ; Yeah, need to get it again... stw r8,napStamp(r12) ; Set high order time stamp stw r7,napStamp+4(r12) ; Set low order nap stamp @@ -804,12 +804,12 @@ yesnap: mftbu r9 ; Get the upper timebase lwz r8,napStamp(r12) ; Reload high order time stamp clearpipe: cmplw r8,r8 - bne- clearpipe + bne- clearpipe isync minovec: rlwinm. r7,r11,0,pfNoL2PFNapb,pfNoL2PFNapb ; Turn off L2 Prefetch before nap? - beq miL2PFok + beq miL2PFok mfspr r7,msscr0 ; Get currect MSSCR0 value rlwinm r7,r7,0,0,l2pfes-1 ; Disable L2 Prefetch @@ -817,24 +817,23 @@ minovec: sync isync -miL2PFok: - rlwinm. r7,r11,0,pfSlowNapb,pfSlowNapb ; Should nap at slow speed? - beq minoslownap +miL2PFok: rlwinm. r7,r11,0,pfSlowNapb,pfSlowNapb ; Should nap at slow speed? + beq minoslownap mfspr r7,hid1 ; Get current HID1 value oris r7,r7,hi16(hid1psm) ; Select PLL1 mtspr hid1,r7 ; Update HID1 value -minoslownap: ; ; We have to open up interruptions here because book 4 says that we should -; turn on only the POW bit and that we should have interrupts enabled +; turn on only the POW bit and that we should have interrupts enabled. ; The interrupt handler will detect that nap or doze is set if an interrupt ; is taken and set everything up to return directly to machine_idle_ret. ; So, make sure everything we need there is already set up... ; +minoslownap: lis r10,hi16(dozem|napm|sleepm) ; Mask of power management bits bf-- pf64Bitb,mipNSF1 ; skip if 32-bit... @@ -842,12 +841,13 @@ minoslownap: sldi r4,r4,32 ; Position the flags sldi r10,r10,32 ; Position the masks - -mipNSF1: andc r6,r6,r10 ; Clean up the old power bits - - ori r7,r5,lo16(MASK(MSR_EE)) ; Flip on EE +mipNSF1: li r2,lo16(MASK(MSR_DR)|MASK(MSR_IR)) ; Get the translation mask + andc r6,r6,r10 ; Clean up the old power bits + ori r7,r5,lo16(MASK(MSR_EE)) ; Flip on EE to make exit msr + andc r5,r5,r2 ; Clear IR and DR from current MSR or r6,r6,r4 ; Set nap or doze - oris r5,r7,hi16(MASK(MSR_POW)) ; Turn on power management in next MSR + ori r5,r5,lo16(MASK(MSR_EE)) ; Flip on EE to make nap msr + oris r2,r5,hi16(MASK(MSR_POW)) ; Turn on power management in next MSR sync mtspr hid0,r6 ; Set up the HID for nap/doze @@ -858,22 +858,33 @@ mipNSF1: andc r6,r6,r10 ; Clean up the old power bits mfspr r6,hid0 ; Yes, this is a duplicate, keep it here mfspr r6,hid0 ; Yes, this is a duplicate, keep it here isync ; Make sure it is set - - mtmsr r7 ; Enable for interrupts - bf-- pf64Bitb,mipowloop ; skip if 32-bit... +; +; Turn translation off to nap +; + + bt pfNoMSRirb,miNoMSR ; Jump if we need to use SC for this... + mtmsr r5 ; Turn translation off, interrupts on + isync ; Wait for it + b miNoMSRx ; Jump back in line... - li r3,0x10 ; Fancy nap threashold is 0x10 ticks +miNoMSR: mr r3,r5 ; Pass in the new MSR value + li r0,loadMSR ; MSR setter ultrafast + sc ; Do it to it like you never done before... + +miNoMSRx: bf-- pf64Bitb,mipowloop ; skip if 32-bit... + + li r3,0x10 ; Fancy nap threshold is 0x10 ticks mftb r8 ; Get the low half of the time base mfdec r4 ; Get the decrementer ticks - cmplw r4,r3 ; Less than threashold? + cmplw r4,r3 ; Less than threshold? blt mipowloop - mtdec r3 ; Load decrimenter with threshold + mtdec r3 ; Load decrementer with threshold isync ; and make sure, mfdec r3 ; really sure, it gets there - rlwinm r6,r5,0,MSR_EE_BIT+1,MSR_EE_BIT-1 ; Clear out the EE bit + rlwinm r6,r2,0,MSR_EE_BIT+1,MSR_EE_BIT-1 ; Clear out the EE bit sync ; Make sure queues are clear mtmsr r6 ; Set MSR with EE off but POW on isync ; Make sure this takes before we proceed @@ -882,13 +893,13 @@ mipNSF1: andc r6,r6,r10 ; Clean up the old power bits sub r9,r9,r8 ; Get the number of ticks spent waiting sub r4,r4,r9 ; Adjust the decrementer value - mtdec r4 ; Load decrimenter with the rest of the timeout + mtdec r4 ; Load decrementer with the rest of the timeout isync ; and make sure, mfdec r4 ; really sure, it gets there mipowloop: sync ; Make sure queues are clear - mtmsr r5 ; Nap or doze, MSR with POW and EE set + mtmsr r2 ; Nap or doze, MSR with POW, EE set, translation off isync ; Make sure this takes before we proceed b mipowloop ; loop if POW does not take @@ -1894,14 +1905,14 @@ LEXT(ml_sense_nmi) blr ; Leave... /* -** ml_set_processor_speed() +** ml_set_processor_speed_powertunw() ** */ ; Force a line boundry here .align 5 - .globl EXT(ml_set_processor_speed) + .globl EXT(ml_set_processor_speed_powertune) -LEXT(ml_set_processor_speed) +LEXT(ml_set_processor_speed_powertune) mflr r0 ; Save the link register stwu r1, -(FM_ALIGN(4*4)+FM_SIZE)(r1) ; Make some space on the stack stw r28, FM_ARG0+0x00(r1) ; Save a register @@ -1914,58 +1925,6 @@ LEXT(ml_set_processor_speed) lwz r30, pfPowerModes(r31) ; Get the supported power modes - rlwinm. r0, r30, 0, pmDualPLLb, pmDualPLLb ; Is DualPLL supported? - bne spsDPLL - - rlwinm. r0, r30, 0, pmDFSb, pmDFSb ; Is DFS supported? - bne spsDFS - - rlwinm. r0, r30, 0, pmPowerTuneb, pmPowerTuneb ; Is PowerTune supported? - bne spsPowerTune - - b spsDone ; No supported power modes - -spsDPLL: - cmpli cr0, r3, 0 ; Turn off BTIC before low speed - beq spsDPLL1 - mfspr r4, hid0 ; Get the current hid0 value - rlwinm r4, r4, 0, btic+1, btic-1 ; Clear the BTIC bit - sync - mtspr hid0, r4 ; Set the new hid0 value - isync - sync - -spsDPLL1: - mfspr r4, hid1 ; Get the current PLL settings - rlwimi r4, r3, 31-hid1ps, hid1ps, hid1ps ; Copy the PLL Select bit - stw r4, pfHID1(r31) ; Save the new hid1 value - mtspr hid1, r4 ; Select desired PLL - - cmpli cr0, r3, 0 ; Restore BTIC after high speed - bne spsDone - lwz r4, pfHID0(r31) ; Load the hid0 value - sync - mtspr hid0, r4 ; Set the hid0 value - isync - sync - b spsDone - -spsDFS: - cmplwi r3, 0 ; full speed? - mfspr r3, hid1 ; Get the current HID1 - rlwinm r3, r3, 0, hid1dfs1+1, hid1dfs0-1 ; assume full speed, clear dfs bits - beq spsDFS1 - oris r3, r3, hi16(hid1dfs1m) ; slow, set half speed dfs1 bit - -spsDFS1: - stw r3, pfHID1(r31) ; Save the new hid1 value - sync - mtspr hid1, r3 ; Set the new HID1 - sync - isync - b spsDone - -spsPowerTune: rlwinm r28, r3, 31-dnap, dnap, dnap ; Shift the 1 bit to the dnap+32 bit rlwinm r3, r3, 2, 29, 29 ; Shift the 1 to a 4 and mask addi r3, r3, pfPowerTune0 ; Add in the pfPowerTune0 offset @@ -2026,9 +1985,6 @@ spsPowerTuneDone: mfspr r28, hid0 ; Yes, this is a duplicate, keep it here isync ; Make sure it is set - b spsDone - -spsDone: lwz r0, (FM_ALIGN(4*4)+FM_SIZE+FM_LR_SAVE)(r1) ; Get the return lwz r28, FM_ARG0+0x00(r1) ; Restore a register lwz r29, FM_ARG0+0x04(r1) ; Restore a register @@ -2038,6 +1994,69 @@ spsDone: mtlr r0 blr +/* +** ml_set_processor_speed_dpll() +** +*/ +; Force a line boundry here + .align 5 + .globl EXT(ml_set_processor_speed_dpll) + +LEXT(ml_set_processor_speed_dpll) + mfsprg r5, 0 ; Get the per_proc_info + + cmplwi r3, 0 ; Turn off BTIC before low speed + beq spsDPLL1 + mfspr r4, hid0 ; Get the current hid0 value + rlwinm r4, r4, 0, btic+1, btic-1 ; Clear the BTIC bit + sync + mtspr hid0, r4 ; Set the new hid0 value + isync + sync + +spsDPLL1: + mfspr r4, hid1 ; Get the current PLL settings + rlwimi r4, r3, 31-hid1ps, hid1ps, hid1ps ; Copy the PLL Select bit + stw r4, pfHID1(r5) ; Save the new hid1 value + mtspr hid1, r4 ; Select desired PLL + + cmplwi r3, 0 ; Restore BTIC after high speed + bne spsDPLL2 + lwz r4, pfHID0(r5) ; Load the hid0 value + sync + mtspr hid0, r4 ; Set the hid0 value + isync + sync +spsDPLL2: + blr + + +/* +** ml_set_processor_speed_dfs() +** +*/ +; Force a line boundry here + .align 5 + .globl EXT(ml_set_processor_speed_dfs) + +LEXT(ml_set_processor_speed_dfs) + mfsprg r5, 0 ; Get the per_proc_info + + cmplwi r3, 0 ; full speed? + mfspr r3, hid1 ; Get the current HID1 + rlwinm r3, r3, 0, hid1dfs1+1, hid1dfs0-1 ; assume full speed, clear dfs bits + beq spsDFS + oris r3, r3, hi16(hid1dfs1m) ; slow, set half speed dfs1 bit + +spsDFS: + stw r3, pfHID1(r5) ; Save the new hid1 value + sync + mtspr hid1, r3 ; Set the new HID1 + sync + isync + blr + + /* ** ml_set_processor_voltage() ** diff --git a/osfmk/ppc/start.s b/osfmk/ppc/start.s index 970a6b824..583baf34d 100644 --- a/osfmk/ppc/start.s +++ b/osfmk/ppc/start.s @@ -825,20 +825,48 @@ init970nb: mfspr r11,hid0 ; Get it isync - ld r11,pfHID1(r30) ; Get it + ld r20,pfHID1(r30) ; Get it isync - mtspr hid1,r11 ; Stick it - mtspr hid1,r11 ; Stick it again + mtspr hid1,r20 ; Stick it + mtspr hid1,r20 ; Stick it again isync ld r11,pfHID4(r30) ; Get it sync mtspr hid4,r11 ; Stick it isync + + lis r11,0xE000 ; Get the unlikeliest ESID possible + srdi r11,r11,1 ; Make 0x7FFFFFFFF0000000 + slbie r11 ; Make sure the ERAT is cleared ld r11,pfHID5(r30) ; Get it mtspr hid5,r11 ; Set it isync +; +; May have changed dcbz mode so kill icache +; + + eqv r13,r13,r13 ; Get a constant -1 + mr r14,r20 ; Save HID1 + rldimi r14,r13,54,9 ; Set force icbi match mode + + li r11,0 ; Set start if ICBI range + isync + mtspr hid1,r14 ; Stick it + mtspr hid1,r14 ; Stick it again + isync + +inin970ki: icbi 0,r11 ; Kill I$ + addi r11,r11,128 ; Next line + andis. r0,r11,1 ; Have we done them all? + beq++ inin970ki ; Not yet... + + isync + mtspr hid1,r20 ; Stick it + mtspr hid1,r20 ; Stick it again + isync + blr ; Leave... diff --git a/osfmk/vm/vm_map.c b/osfmk/vm/vm_map.c index c678ad108..a999db700 100644 --- a/osfmk/vm/vm_map.c +++ b/osfmk/vm/vm_map.c @@ -1951,6 +1951,14 @@ vm_map_protect( current = current->vme_next; } + /* coalesce the map entries, if possible */ + current = entry; + while (current != vm_map_to_entry(map) && + current->vme_start <= end) { + vm_map_simplify_entry(map, current); + current = current->vme_next; + } + vm_map_unlock(map); return(KERN_SUCCESS); } @@ -7820,92 +7828,73 @@ vm_region_count_obj_refs( * at allocation time because the adjacent entry * is often wired down. */ +void +vm_map_simplify_entry( + vm_map_t map, + vm_map_entry_t this_entry) +{ + vm_map_entry_t prev_entry; + + prev_entry = this_entry->vme_prev; + + if ((this_entry != vm_map_to_entry(map)) && + (prev_entry != vm_map_to_entry(map)) && + + (prev_entry->vme_end == this_entry->vme_start) && + + (prev_entry->is_sub_map == FALSE) && + (this_entry->is_sub_map == FALSE) && + + (prev_entry->object.vm_object == this_entry->object.vm_object) && + ((prev_entry->offset + (prev_entry->vme_end - + prev_entry->vme_start)) + == this_entry->offset) && + + (prev_entry->inheritance == this_entry->inheritance) && + (prev_entry->protection == this_entry->protection) && + (prev_entry->max_protection == this_entry->max_protection) && + (prev_entry->behavior == this_entry->behavior) && + (prev_entry->alias == this_entry->alias) && + (prev_entry->wired_count == this_entry->wired_count) && + (prev_entry->user_wired_count == this_entry->user_wired_count) && + (prev_entry->needs_copy == this_entry->needs_copy) && + + (prev_entry->use_pmap == FALSE) && + (this_entry->use_pmap == FALSE) && + (prev_entry->in_transition == FALSE) && + (this_entry->in_transition == FALSE) && + (prev_entry->needs_wakeup == FALSE) && + (this_entry->needs_wakeup == FALSE) && + (prev_entry->is_shared == FALSE) && + (this_entry->is_shared == FALSE) + ) { + _vm_map_entry_unlink(&map->hdr, prev_entry); + this_entry->vme_start = prev_entry->vme_start; + this_entry->offset = prev_entry->offset; + vm_object_deallocate(prev_entry->object.vm_object); + vm_map_entry_dispose(map, prev_entry); + SAVE_HINT(map, this_entry); + counter(c_vm_map_entry_simplified++); + } + counter(c_vm_map_simplify_entry_called++); +} + void vm_map_simplify( vm_map_t map, vm_offset_t start) { vm_map_entry_t this_entry; - vm_map_entry_t prev_entry; - vm_map_entry_t next_entry; vm_map_lock(map); - if ( - (vm_map_lookup_entry(map, start, &this_entry)) && - ((prev_entry = this_entry->vme_prev) != vm_map_to_entry(map)) && - - (prev_entry->vme_end == this_entry->vme_start) && - - (prev_entry->is_shared == FALSE) && - (prev_entry->is_sub_map == FALSE) && - - (this_entry->is_shared == FALSE) && - (this_entry->is_sub_map == FALSE) && - - (prev_entry->inheritance == this_entry->inheritance) && - (prev_entry->protection == this_entry->protection) && - (prev_entry->max_protection == this_entry->max_protection) && - (prev_entry->behavior == this_entry->behavior) && - (prev_entry->wired_count == this_entry->wired_count) && - (prev_entry->user_wired_count == this_entry->user_wired_count)&& - (prev_entry->in_transition == FALSE) && - (this_entry->in_transition == FALSE) && - - (prev_entry->needs_copy == this_entry->needs_copy) && - - (prev_entry->object.vm_object == this_entry->object.vm_object)&& - ((prev_entry->offset + - (prev_entry->vme_end - prev_entry->vme_start)) - == this_entry->offset) - ) { - SAVE_HINT(map, prev_entry); - vm_map_entry_unlink(map, this_entry); - prev_entry->vme_end = this_entry->vme_end; - UPDATE_FIRST_FREE(map, map->first_free); - vm_object_deallocate(this_entry->object.vm_object); - vm_map_entry_dispose(map, this_entry); - counter(c_vm_map_simplified_lower++); - } - if ( - (vm_map_lookup_entry(map, start, &this_entry)) && - ((next_entry = this_entry->vme_next) != vm_map_to_entry(map)) && - - (next_entry->vme_start == this_entry->vme_end) && - - (next_entry->is_shared == FALSE) && - (next_entry->is_sub_map == FALSE) && - - (next_entry->is_shared == FALSE) && - (next_entry->is_sub_map == FALSE) && - - (next_entry->inheritance == this_entry->inheritance) && - (next_entry->protection == this_entry->protection) && - (next_entry->max_protection == this_entry->max_protection) && - (next_entry->behavior == this_entry->behavior) && - (next_entry->wired_count == this_entry->wired_count) && - (next_entry->user_wired_count == this_entry->user_wired_count)&& - (this_entry->in_transition == FALSE) && - (next_entry->in_transition == FALSE) && - - (next_entry->needs_copy == this_entry->needs_copy) && - - (next_entry->object.vm_object == this_entry->object.vm_object)&& - ((this_entry->offset + - (this_entry->vme_end - this_entry->vme_start)) - == next_entry->offset) - ) { - vm_map_entry_unlink(map, next_entry); - this_entry->vme_end = next_entry->vme_end; - UPDATE_FIRST_FREE(map, map->first_free); - vm_object_deallocate(next_entry->object.vm_object); - vm_map_entry_dispose(map, next_entry); - counter(c_vm_map_simplified_upper++); + if (vm_map_lookup_entry(map, start, &this_entry)) { + vm_map_simplify_entry(map, this_entry); + vm_map_simplify_entry(map, this_entry->vme_next); } counter(c_vm_map_simplify_called++); vm_map_unlock(map); } - /* * Routine: vm_map_machine_attribute * Purpose: diff --git a/osfmk/vm/vm_map.h b/osfmk/vm/vm_map.h index dc62c39cd..ffbccd036 100644 --- a/osfmk/vm/vm_map.h +++ b/osfmk/vm/vm_map.h @@ -693,6 +693,9 @@ extern vm_object_t vm_submap_object; /* simplify map entries */ +extern void vm_map_simplify_entry( + vm_map_t map, + vm_map_entry_t this_entry); extern void vm_map_simplify( vm_map_t map, vm_offset_t start); diff --git a/pexpert/conf/version.minor b/pexpert/conf/version.minor index 7f8f011eb..45a4fb75d 100644 --- a/pexpert/conf/version.minor +++ b/pexpert/conf/version.minor @@ -1 +1 @@ -7 +8 -- 2.45.2