62 skills found · Page 1 of 3
zszszszsz / .config# # Automatically generated file; DO NOT EDIT. # OpenWrt Configuration # CONFIG_MODULES=y CONFIG_HAVE_DOT_CONFIG=y # CONFIG_TARGET_sunxi is not set # CONFIG_TARGET_apm821xx is not set # CONFIG_TARGET_ath25 is not set CONFIG_TARGET_ar71xx=y # CONFIG_TARGET_ath79 is not set # CONFIG_TARGET_bcm27xx is not set # CONFIG_TARGET_bcm53xx is not set # CONFIG_TARGET_brcm47xx is not set # CONFIG_TARGET_brcm63xx is not set # CONFIG_TARGET_cns3xxx is not set # CONFIG_TARGET_octeon is not set # CONFIG_TARGET_gemini is not set # CONFIG_TARGET_mpc85xx is not set # CONFIG_TARGET_imx6 is not set # CONFIG_TARGET_mxs is not set # CONFIG_TARGET_ixp4xx is not set # CONFIG_TARGET_lantiq is not set # CONFIG_TARGET_malta is not set # CONFIG_TARGET_pistachio is not set # CONFIG_TARGET_mvebu is not set # CONFIG_TARGET_kirkwood is not set # CONFIG_TARGET_mediatek is not set # CONFIG_TARGET_ramips is not set # CONFIG_TARGET_at91 is not set # CONFIG_TARGET_rb532 is not set # CONFIG_TARGET_tegra is not set # CONFIG_TARGET_layerscape is not set # CONFIG_TARGET_octeontx is not set # CONFIG_TARGET_oxnas is not set # CONFIG_TARGET_armvirt is not set # CONFIG_TARGET_ipq40xx is not set # CONFIG_TARGET_ipq806x is not set # CONFIG_TARGET_ipq807x is not set # CONFIG_TARGET_samsung is not set # CONFIG_TARGET_arc770 is not set # CONFIG_TARGET_archs38 is not set # CONFIG_TARGET_ar7 is not set # CONFIG_TARGET_omap is not set # CONFIG_TARGET_uml is not set # CONFIG_TARGET_zynq is not set # CONFIG_TARGET_x86 is not set CONFIG_TARGET_ar71xx_generic=y # CONFIG_TARGET_ar71xx_tiny is not set # CONFIG_TARGET_ar71xx_nand is not set # CONFIG_TARGET_ar71xx_mikrotik is not set # CONFIG_TARGET_MULTI_PROFILE is not set # CONFIG_TARGET_ar71xx_generic_Default is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_carambola2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_lima is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ALFAAP120C is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ap121f is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ap91-5g is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ALFAAP96 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_HORNETUB is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_HORNETUBx2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ALFANX is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_n5q is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_r36a is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_TUBE2H16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_TUBE2H8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_fritz4020 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_fritz300e is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_fritz450e is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_sc1750 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_sc300m is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_sc450 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_c-55 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ALL0258N is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ALL0305 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ALL0315N is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_antminer-s1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_antminer-s3 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_antrouter-r1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_arduino-yun is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP121_16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP121_8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP132 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP135 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP136_010 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP136_020 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP96 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_DB120 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_PB42 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_PB44 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_BXU2000N2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WZR450HP2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WZR600DHP is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WZRHPAG300H is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WZRHPG300NH is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WZRHPG300NH2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WZRHPG450H is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e316n-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e320n-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e355ac-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e355ac-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e375ac is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e380ac-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e380ac-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e385ac is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e520n is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cf-e530n is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WP543_16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WP543_8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WPE72_16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WPE72_8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wpj342 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wpj344 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wpj531 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wpj558 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wpj563 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dap-1330-a1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dap-2695-a1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_DGL5500A1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_DHP1565A1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_DIR505A1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_DIR825B1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_DIR825C1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_DIR835A1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dir-869-a1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dragino2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_el-m150 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_el-mini is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ew-balin is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ew-dorin is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ew-dorin-router is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_EAP300V2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ens202ext is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_EPG5000 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ESR1750 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ESR900 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-inet-6408A-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-inet-6416A-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-domino is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-ar150 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-ar300 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-ar300m is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-ar750 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-ar750s is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-mifi is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_gl-usb150 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_SGRW500N85BV2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_minibox-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_oolite-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_oolite-v5.2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_oolite-v5.2-dev is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_lan-turtle is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_packet-squirrel is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wifi-pineapple-nano is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_hiwifi-hc6361 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP147_010 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WRT160NL is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WRT400N is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_mr12 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_mr16 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_mc-mac1200r is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_mc-mw4530r is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_smart-300 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WNDAP360 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wndr3700 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wndr3700v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wndr3800 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wndr3800ch is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wndrmac is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wndrmacv2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_WNR2200 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_koala is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_omy-g1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_omy-x1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_onion-omega is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_som9331 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_A60 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_MR1750 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_MR600 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_MR900 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_OM2P is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_OM5PAC is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_OM5P is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cpe505n is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_r602n is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ts-d084 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_pqi-air-pen is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_k2t is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_MZKW04NU is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_MZKW300NH is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cap324 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cr3000 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cr5000 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_DLRTDEV01 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_qihoo-c301 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP143_16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP143_8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_AP152_16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e1700ac-v2-16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e1700ac-v2-8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e558-v2-16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e558-v2-8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e600g-v2-16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e600g-v2-8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e600gac-v2-16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e600gac-v2-8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e750a-v4-16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e750a-v4-8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e750g-v8-16M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_e750g-v8-8M is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ap531b0 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wam250 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_CAP4200AG is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_EAP7660D is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wlr8100 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_bsb is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c25-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c5-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c58-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c59-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c59-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c60-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c60-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c7-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c7-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c7-v2-il is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr7500-v3 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c7-v4 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_archer-c7-v5 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cpe210-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cpe210-220-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cpe510-520-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_eap120-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_re355-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_re450-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-mr6400-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr3227-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr3500-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr3600-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr4300-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr4300-v1-il is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr4310-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr4900-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr5800-v1 is not set CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr6500-v2=y # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr6500-v6 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wdr8500-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wpa8630-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr1043n-v5 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr1043nd-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr1043nd-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr1043nd-v3 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr1043nd-v4 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr2041n-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr2041n-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr2543-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr710n-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr710n-v2.1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr810n-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr810n-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr842n-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr842n-v2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr842n-v3 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr880n-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr881n-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr902ac-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr941n-v7 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tl-wr942n-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wbs210-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wbs510-v1 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_TEW673GRU is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_TEW732BR is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_TEW823DRU is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_tellstick-znet-lite is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_rut900 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-air-gateway is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-air-gateway-pro is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-airrouter is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-bullet-m is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-ls-sr71 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-lbe-m5 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-loco-m-xw is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-nano-m-xw is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-nano-m is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_rw2458n is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-rocket-m-ti is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-rocket-m-xw is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-rocket-m is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-rs is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-rspro is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-uap-pro is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-unifi is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-unifiac-lite is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-unifiac-mesh is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-unifiac-pro is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-unifi-outdoor is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubnt-unifi-outdoor-plus is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ubdev01 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_wrtnode2q is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dr342 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dr531 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_weio is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_mynet-n600 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_mynet-n750 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_MYNETREXT is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ap90q is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cpe830 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_cpe870 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_sr3200 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_t830 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_xd3200 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ZCN1523H28 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_ZCN1523H516 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_NBG6616 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dLAN_Hotspot is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dLAN_pro_1200_ac is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_dLAN_pro_500_wp is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_rme-eg200 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_JA76PF is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_JA76PF2 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_JWAP003 is not set # CONFIG_TARGET_ar71xx_generic_DEVICE_jwap230 is not set CONFIG_HAS_SUBTARGETS=y CONFIG_HAS_DEVICES=y CONFIG_TARGET_BOARD="ar71xx" CONFIG_TARGET_SUBTARGET="generic" CONFIG_TARGET_PROFILE="DEVICE_tl-wdr6500-v2" CONFIG_TARGET_ARCH_PACKAGES="mips_24kc" CONFIG_DEFAULT_TARGET_OPTIMIZATION="-Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc" CONFIG_CPU_TYPE="24kc" CONFIG_LINUX_4_9=y CONFIG_DEFAULT_ath10k-firmware-qca988x=y CONFIG_DEFAULT_base-files=y CONFIG_DEFAULT_block-mount=y CONFIG_DEFAULT_busybox=y CONFIG_DEFAULT_ca-certificates=y CONFIG_DEFAULT_coremark=y CONFIG_DEFAULT_ddns-scripts_aliyun=y CONFIG_DEFAULT_ddns-scripts_dnspod=y CONFIG_DEFAULT_default-settings=y CONFIG_DEFAULT_dnsmasq-full=y CONFIG_DEFAULT_dropbear=y CONFIG_DEFAULT_firewall=y CONFIG_DEFAULT_fstools=y CONFIG_DEFAULT_iptables=y CONFIG_DEFAULT_kmod-ath10k=y CONFIG_DEFAULT_kmod-ath9k=y CONFIG_DEFAULT_kmod-gpio-button-hotplug=y CONFIG_DEFAULT_kmod-ipt-offload=y CONFIG_DEFAULT_kmod-ipt-raw=y CONFIG_DEFAULT_kmod-nf-nathelper=y CONFIG_DEFAULT_kmod-nf-nathelper-extra=y CONFIG_DEFAULT_kmod-tcp-bbr=y CONFIG_DEFAULT_kmod-usb-core=y CONFIG_DEFAULT_kmod-usb-ledtrig-usbport=y CONFIG_DEFAULT_kmod-usb2=y CONFIG_DEFAULT_libc=y CONFIG_DEFAULT_libgcc=y CONFIG_DEFAULT_libustream-openssl=y CONFIG_DEFAULT_logd=y CONFIG_DEFAULT_luci=y CONFIG_DEFAULT_luci-app-accesscontrol=y CONFIG_DEFAULT_luci-app-adbyby-plus=y CONFIG_DEFAULT_luci-app-arpbind=y CONFIG_DEFAULT_luci-app-autoreboot=y CONFIG_DEFAULT_luci-app-cpufreq=y CONFIG_DEFAULT_luci-app-ddns=y CONFIG_DEFAULT_luci-app-filetransfer=y CONFIG_DEFAULT_luci-app-flowoffload=y CONFIG_DEFAULT_luci-app-nlbwmon=y CONFIG_DEFAULT_luci-app-ramfree=y CONFIG_DEFAULT_luci-app-sfe=y CONFIG_DEFAULT_luci-app-ssr-plus=y CONFIG_DEFAULT_luci-app-unblockmusic=y CONFIG_DEFAULT_luci-app-upnp=y CONFIG_DEFAULT_luci-app-vlmcsd=y CONFIG_DEFAULT_luci-app-vsftpd=y CONFIG_DEFAULT_luci-app-wol=y CONFIG_DEFAULT_mtd=y CONFIG_DEFAULT_netifd=y CONFIG_DEFAULT_opkg=y CONFIG_DEFAULT_ppp=y CONFIG_DEFAULT_ppp-mod-pppoe=y CONFIG_DEFAULT_swconfig=y CONFIG_DEFAULT_uboot-envtools=y CONFIG_DEFAULT_uci=y CONFIG_DEFAULT_uclient-fetch=y CONFIG_DEFAULT_urandom-seed=y CONFIG_DEFAULT_urngd=y CONFIG_DEFAULT_wget=y CONFIG_DEFAULT_wpad-openssl=y CONFIG_AUDIO_SUPPORT=y CONFIG_GPIO_SUPPORT=y CONFIG_PCI_SUPPORT=y CONFIG_USB_SUPPORT=y CONFIG_USB_GADGET_SUPPORT=y CONFIG_BIG_ENDIAN=y CONFIG_USES_SQUASHFS=y CONFIG_SMALL_FLASH=y CONFIG_HAS_MIPS16=y CONFIG_mips=y CONFIG_ARCH="mips" # # Target Images # # CONFIG_TARGET_ROOTFS_INITRAMFS is not set CONFIG_EXTERNAL_CPIO="" # # Root filesystem archives # # CONFIG_TARGET_ROOTFS_CPIOGZ is not set # CONFIG_TARGET_ROOTFS_TARGZ is not set # # Root filesystem images # # CONFIG_TARGET_ROOTFS_EXT4FS is not set CONFIG_TARGET_ROOTFS_SQUASHFS=y CONFIG_TARGET_SQUASHFS_BLOCK_SIZE=1024 CONFIG_TARGET_UBIFS_FREE_SPACE_FIXUP=y CONFIG_TARGET_UBIFS_JOURNAL_SIZE="" # # Image Options # # # Global build settings # # CONFIG_JSON_ADD_IMAGE_INFO is not set # CONFIG_ALL_NONSHARED is not set # CONFIG_ALL_KMODS is not set # CONFIG_ALL is not set # CONFIG_BUILDBOT is not set # CONFIG_SIGNED_PACKAGES is not set # CONFIG_SIGNATURE_CHECK is not set # # General build options # # CONFIG_DISPLAY_SUPPORT is not set CONFIG_BUILD_PATENTED=y # CONFIG_BUILD_NLS is not set CONFIG_SHADOW_PASSWORDS=y # CONFIG_CLEAN_IPKG is not set # CONFIG_INCLUDE_CONFIG is not set # CONFIG_COLLECT_KERNEL_DEBUG is not set # # Kernel build options # CONFIG_KERNEL_BUILD_USER="" CONFIG_KERNEL_BUILD_DOMAIN="" CONFIG_KERNEL_PRINTK=y CONFIG_KERNEL_CRASHLOG=y # CONFIG_KERNEL_SWAP is not set CONFIG_KERNEL_DEBUG_FS=y CONFIG_KERNEL_MIPS_FPU_EMULATOR=y # CONFIG_KERNEL_PERF_EVENTS is not set # CONFIG_KERNEL_PROFILING is not set # CONFIG_KERNEL_TASKSTATS is not set # CONFIG_KERNEL_KALLSYMS is not set # CONFIG_KERNEL_FTRACE is not set # CONFIG_KERNEL_DEBUG_KERNEL is not set # CONFIG_KERNEL_DEBUG_INFO is not set # CONFIG_KERNEL_DYNAMIC_DEBUG is not set # CONFIG_KERNEL_KPROBES is not set # CONFIG_KERNEL_AIO is not set # CONFIG_KERNEL_FHANDLE is not set # CONFIG_KERNEL_FANOTIFY is not set # CONFIG_KERNEL_BLK_DEV_BSG is not set CONFIG_KERNEL_MAGIC_SYSRQ=y # CONFIG_KERNEL_DEBUG_PINCTRL is not set # CONFIG_KERNEL_DEBUG_GPIO is not set # CONFIG_KERNEL_ELF_CORE is not set # CONFIG_KERNEL_PROVE_LOCKING is not set CONFIG_KERNEL_PRINTK_TIME=y # CONFIG_KERNEL_SLABINFO is not set # CONFIG_KERNEL_PROC_PAGE_MONITOR is not set # CONFIG_KERNEL_KEXEC is not set # CONFIG_USE_RFKILL is not set # CONFIG_USE_SPARSE is not set # CONFIG_KERNEL_DEVTMPFS is not set CONFIG_KERNEL_KEYS=y # CONFIG_KERNEL_PERSISTENT_KEYRINGS is not set # CONFIG_KERNEL_BIG_KEYS is not set # CONFIG_KERNEL_ENCRYPTED_KEYS is not set CONFIG_KERNEL_CGROUPS=y # CONFIG_KERNEL_CGROUP_DEBUG is not set CONFIG_KERNEL_FREEZER=y CONFIG_KERNEL_CGROUP_FREEZER=y CONFIG_KERNEL_CGROUP_DEVICE=y CONFIG_KERNEL_CGROUP_PIDS=y CONFIG_KERNEL_CPUSETS=y # CONFIG_KERNEL_PROC_PID_CPUSET is not set CONFIG_KERNEL_CGROUP_CPUACCT=y # CONFIG_KERNEL_RESOURCE_COUNTERS is not set CONFIG_KERNEL_MM_OWNER=y CONFIG_KERNEL_MEMCG=y # CONFIG_KERNEL_MEMCG_SWAP is not set # CONFIG_KERNEL_MEMCG_KMEM is not set # CONFIG_KERNEL_CGROUP_PERF is not set CONFIG_KERNEL_CGROUP_SCHED=y # CONFIG_KERNEL_FAIR_GROUP_SCHED is not set # CONFIG_KERNEL_RT_GROUP_SCHED is not set CONFIG_KERNEL_BLK_CGROUP=y # CONFIG_KERNEL_CFQ_GROUP_IOSCHED is not set # CONFIG_KERNEL_BLK_DEV_THROTTLING is not set # CONFIG_KERNEL_DEBUG_BLK_CGROUP is not set CONFIG_KERNEL_NET_CLS_CGROUP=y CONFIG_KERNEL_NETPRIO_CGROUP=y CONFIG_KERNEL_NAMESPACES=y CONFIG_KERNEL_UTS_NS=y CONFIG_KERNEL_IPC_NS=y CONFIG_KERNEL_USER_NS=y CONFIG_KERNEL_PID_NS=y CONFIG_KERNEL_NET_NS=y CONFIG_KERNEL_DEVPTS_MULTIPLE_INSTANCES=y CONFIG_KERNEL_POSIX_MQUEUE=y # CONFIG_KERNEL_SECCOMP_FILTER is not set # CONFIG_KERNEL_SECCOMP is not set CONFIG_KERNEL_IP_MROUTE=y CONFIG_KERNEL_IPV6=y CONFIG_KERNEL_IPV6_MULTIPLE_TABLES=y CONFIG_KERNEL_IPV6_SUBTREES=y CONFIG_KERNEL_IPV6_MROUTE=y # CONFIG_KERNEL_IPV6_PIMSM_V2 is not set # CONFIG_KERNEL_IP_PNP is not set # # Filesystem ACL and attr support options # # CONFIG_USE_FS_ACL_ATTR is not set # CONFIG_KERNEL_FS_POSIX_ACL is not set # CONFIG_KERNEL_BTRFS_FS_POSIX_ACL is not set # CONFIG_KERNEL_EXT4_FS_POSIX_ACL is not set # CONFIG_KERNEL_F2FS_FS_POSIX_ACL is not set # CONFIG_KERNEL_JFFS2_FS_POSIX_ACL is not set # CONFIG_KERNEL_TMPFS_POSIX_ACL is not set # CONFIG_KERNEL_CIFS_ACL is not set # CONFIG_KERNEL_HFS_FS_POSIX_ACL is not set # CONFIG_KERNEL_HFSPLUG_FS_POSIX_ACL is not set # CONFIG_KERNEL_NFS_ACL_SUPPORT is not set # CONFIG_KERNEL_NFS_V3_ACL_SUPPORT is not set # CONFIG_KERNEL_NFSD_V2_ACL_SUPPORT is not set # CONFIG_KERNEL_NFSD_V3_ACL_SUPPORT is not set # CONFIG_KERNEL_REISER_FS_POSIX_ACL is not set # CONFIG_KERNEL_XFS_POSIX_ACL is not set # CONFIG_KERNEL_JFS_POSIX_ACL is not set # CONFIG_KERNEL_DEVMEM is not set # CONFIG_KERNEL_DEVKMEM is not set CONFIG_KERNEL_SQUASHFS_FRAGMENT_CACHE_SIZE=2 # CONFIG_KERNEL_CC_OPTIMIZE_FOR_PERFORMANCE is not set CONFIG_KERNEL_CC_OPTIMIZE_FOR_SIZE=y # # Package build options # # CONFIG_DEBUG is not set CONFIG_IPV6=y # # Stripping options # # CONFIG_NO_STRIP is not set # CONFIG_USE_STRIP is not set CONFIG_USE_SSTRIP=y # CONFIG_STRIP_KERNEL_EXPORTS is not set # CONFIG_USE_MKLIBS is not set CONFIG_USE_UCLIBCXX=y # CONFIG_USE_LIBCXX is not set # CONFIG_USE_LIBSTDCXX is not set # # Hardening build options # CONFIG_PKG_CHECK_FORMAT_SECURITY=y CONFIG_PKG_ASLR_PIE_NONE=y # CONFIG_PKG_ASLR_PIE_REGULAR is not set # CONFIG_PKG_ASLR_PIE_ALL is not set # CONFIG_PKG_CC_STACKPROTECTOR_NONE is not set CONFIG_PKG_CC_STACKPROTECTOR_REGULAR=y # CONFIG_KERNEL_CC_STACKPROTECTOR_NONE is not set CONFIG_KERNEL_CC_STACKPROTECTOR_REGULAR=y # CONFIG_KERNEL_CC_STACKPROTECTOR_STRONG is not set CONFIG_KERNEL_STACKPROTECTOR=y # CONFIG_KERNEL_STACKPROTECTOR_STRONG is not set # CONFIG_PKG_FORTIFY_SOURCE_NONE is not set CONFIG_PKG_FORTIFY_SOURCE_1=y # CONFIG_PKG_FORTIFY_SOURCE_2 is not set # CONFIG_PKG_RELRO_NONE is not set # CONFIG_PKG_RELRO_PARTIAL is not set CONFIG_PKG_RELRO_FULL=y # CONFIG_DEVEL is not set # CONFIG_BROKEN is not set CONFIG_BINARY_FOLDER="" CONFIG_DOWNLOAD_FOLDER="" CONFIG_LOCALMIRROR="" CONFIG_AUTOREBUILD=y # CONFIG_AUTOREMOVE is not set CONFIG_BUILD_SUFFIX="" CONFIG_TARGET_ROOTFS_DIR="" # CONFIG_CCACHE is not set CONFIG_EXTERNAL_KERNEL_TREE="" CONFIG_KERNEL_GIT_CLONE_URI="" CONFIG_EXTRA_OPTIMIZATION="-fno-caller-saves -fno-plt" CONFIG_TARGET_OPTIMIZATION="-Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc" CONFIG_SOFT_FLOAT=y CONFIG_USE_MIPS16=y # CONFIG_EXTRA_TARGET_ARCH is not set CONFIG_EXTRA_BINUTILS_CONFIG_OPTIONS="" CONFIG_EXTRA_GCC_CONFIG_OPTIONS="" # CONFIG_GCC_DEFAULT_PIE is not set # CONFIG_GCC_DEFAULT_SSP is not set # CONFIG_SJLJ_EXCEPTIONS is not set # CONFIG_INSTALL_GFORTRAN is not set CONFIG_GDB=y CONFIG_USE_MUSL=y CONFIG_SSP_SUPPORT=y CONFIG_BINUTILS_VERSION_2_31_1=y CONFIG_BINUTILS_VERSION="2.31.1" # CONFIG_GCC_USE_EMBEDDED_PATH_REMAP is not set CONFIG_GCC_VERSION="7.5.0" CONFIG_LIBC="musl" CONFIG_TARGET_SUFFIX="musl" # CONFIG_IB is not set # CONFIG_SDK is not set # CONFIG_MAKE_TOOLCHAIN is not set # CONFIG_IMAGEOPT is not set # CONFIG_PREINITOPT is not set CONFIG_TARGET_PREINIT_SUPPRESS_STDERR=y # CONFIG_TARGET_PREINIT_DISABLE_FAILSAFE is not set CONFIG_TARGET_PREINIT_TIMEOUT=2 # CONFIG_TARGET_PREINIT_SHOW_NETMSG is not set # CONFIG_TARGET_PREINIT_SUPPRESS_FAILSAFE_NETMSG is not set CONFIG_TARGET_PREINIT_IFNAME="" CONFIG_TARGET_PREINIT_IP="192.168.1.1" CONFIG_TARGET_PREINIT_NETMASK="255.255.255.0" CONFIG_TARGET_PREINIT_BROADCAST="192.168.1.255" # CONFIG_INITOPT is not set CONFIG_TARGET_INIT_PATH="/usr/sbin:/usr/bin:/sbin:/bin" CONFIG_TARGET_INIT_ENV="" CONFIG_TARGET_INIT_CMD="/sbin/init" CONFIG_TARGET_INIT_SUPPRESS_STDERR=y # CONFIG_VERSIONOPT is not set CONFIG_PER_FEED_REPO=y CONFIG_FEED_packages=y CONFIG_FEED_luci=y CONFIG_FEED_routing=y # # Base system # # CONFIG_PACKAGE_attendedsysupgrade-common is not set # CONFIG_PACKAGE_auc is not set CONFIG_PACKAGE_base-files=y CONFIG_PACKAGE_block-mount=y # CONFIG_PACKAGE_blockd is not set # CONFIG_PACKAGE_bridge is not set CONFIG_PACKAGE_busybox=y # CONFIG_BUSYBOX_CUSTOM is not set CONFIG_BUSYBOX_DEFAULT_HAVE_DOT_CONFIG=y # CONFIG_BUSYBOX_DEFAULT_DESKTOP is not set # CONFIG_BUSYBOX_DEFAULT_EXTRA_COMPAT is not set # CONFIG_BUSYBOX_DEFAULT_FEDORA_COMPAT is not set CONFIG_BUSYBOX_DEFAULT_INCLUDE_SUSv2=y CONFIG_BUSYBOX_DEFAULT_LONG_OPTS=y CONFIG_BUSYBOX_DEFAULT_SHOW_USAGE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE_USAGE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_COMPRESS_USAGE=y CONFIG_BUSYBOX_DEFAULT_LFS=y # CONFIG_BUSYBOX_DEFAULT_PAM is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_DEVPTS=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_UTMP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_WTMP is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDFILE=y CONFIG_BUSYBOX_DEFAULT_PID_FILE_PATH="/var/run" # CONFIG_BUSYBOX_DEFAULT_BUSYBOX is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SHOW_SCRIPT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INSTALLER is not set # CONFIG_BUSYBOX_DEFAULT_INSTALL_NO_USR is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID_CONFIG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID_CONFIG_QUIET is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_PREFER_APPLETS=y CONFIG_BUSYBOX_DEFAULT_BUSYBOX_EXEC_PATH="/proc/self/exe" # CONFIG_BUSYBOX_DEFAULT_SELINUX is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CLEAN_UP is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOG=y CONFIG_BUSYBOX_DEFAULT_PLATFORM_LINUX=y # CONFIG_BUSYBOX_DEFAULT_STATIC is not set # CONFIG_BUSYBOX_DEFAULT_PIE is not set # CONFIG_BUSYBOX_DEFAULT_NOMMU is not set # CONFIG_BUSYBOX_DEFAULT_BUILD_LIBBUSYBOX is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LIBBUSYBOX_STATIC is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INDIVIDUAL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SHARED_BUSYBOX is not set CONFIG_BUSYBOX_DEFAULT_CROSS_COMPILER_PREFIX="" CONFIG_BUSYBOX_DEFAULT_SYSROOT="" CONFIG_BUSYBOX_DEFAULT_EXTRA_CFLAGS="" CONFIG_BUSYBOX_DEFAULT_EXTRA_LDFLAGS="" CONFIG_BUSYBOX_DEFAULT_EXTRA_LDLIBS="" # CONFIG_BUSYBOX_DEFAULT_USE_PORTABLE_CODE is not set # CONFIG_BUSYBOX_DEFAULT_STACK_OPTIMIZATION_386 is not set CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS=y # CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_HARDLINKS is not set # CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_SCRIPT_WRAPPERS is not set # CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_DONT is not set # CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SYMLINK is not set # CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_HARDLINK is not set # CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set CONFIG_BUSYBOX_DEFAULT_PREFIX="./_install" # CONFIG_BUSYBOX_DEFAULT_DEBUG is not set # CONFIG_BUSYBOX_DEFAULT_DEBUG_PESSIMIZE is not set # CONFIG_BUSYBOX_DEFAULT_DEBUG_SANITIZE is not set # CONFIG_BUSYBOX_DEFAULT_UNIT_TEST is not set # CONFIG_BUSYBOX_DEFAULT_WERROR is not set CONFIG_BUSYBOX_DEFAULT_NO_DEBUG_LIB=y # CONFIG_BUSYBOX_DEFAULT_DMALLOC is not set # CONFIG_BUSYBOX_DEFAULT_EFENCE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_BSS_TAIL is not set # CONFIG_BUSYBOX_DEFAULT_FLOAT_DURATION is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_RTMINMAX is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_RTMINMAX_USE_LIBC_DEFINITIONS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_USE_MALLOC is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_ON_STACK=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_IN_BSS is not set CONFIG_BUSYBOX_DEFAULT_PASSWORD_MINLEN=6 CONFIG_BUSYBOX_DEFAULT_MD5_SMALL=1 CONFIG_BUSYBOX_DEFAULT_SHA3_SMALL=1 CONFIG_BUSYBOX_DEFAULT_FEATURE_FAST_TOP=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_ETC_NETWORKS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_ETC_SERVICES is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING=y CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_MAX_LEN=512 # CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_VI is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_HISTORY=256 # CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_SAVEHISTORY is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_SAVE_ON_EXIT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_REVERSE_SEARCH is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_TAB_COMPLETION=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_USERNAME_COMPLETION is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_FANCY_PROMPT=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_WINCH is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_ASK_TERMINAL is not set # CONFIG_BUSYBOX_DEFAULT_LOCALE_SUPPORT is not set # CONFIG_BUSYBOX_DEFAULT_UNICODE_SUPPORT is not set # CONFIG_BUSYBOX_DEFAULT_UNICODE_USING_LOCALE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_UNICODE_IN_ENV is not set CONFIG_BUSYBOX_DEFAULT_SUBST_WCHAR=0 CONFIG_BUSYBOX_DEFAULT_LAST_SUPPORTED_WCHAR=0 # CONFIG_BUSYBOX_DEFAULT_UNICODE_COMBINING_WCHARS is not set # CONFIG_BUSYBOX_DEFAULT_UNICODE_WIDE_WCHARS is not set # CONFIG_BUSYBOX_DEFAULT_UNICODE_BIDI_SUPPORT is not set # CONFIG_BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE is not set # CONFIG_BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_NON_POSIX_CP=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE_CP_MESSAGE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_COPYBUF_KB=4 # CONFIG_BUSYBOX_DEFAULT_FEATURE_SKIP_ROOTFS is not set # CONFIG_BUSYBOX_DEFAULT_MONOTONIC_SYSCALL is not set CONFIG_BUSYBOX_DEFAULT_IOCTL_HEX2STR_ERROR=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_HWIB is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_XZ is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_LZMA is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_BZ2 is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_GZ=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_Z is not set # CONFIG_BUSYBOX_DEFAULT_AR is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_AR_LONG_FILENAMES is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_AR_CREATE is not set # CONFIG_BUSYBOX_DEFAULT_UNCOMPRESS is not set CONFIG_BUSYBOX_DEFAULT_GUNZIP=y CONFIG_BUSYBOX_DEFAULT_ZCAT=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_GUNZIP_LONG_OPTIONS is not set CONFIG_BUSYBOX_DEFAULT_BUNZIP2=y CONFIG_BUSYBOX_DEFAULT_BZCAT=y # CONFIG_BUSYBOX_DEFAULT_UNLZMA is not set # CONFIG_BUSYBOX_DEFAULT_LZCAT is not set # CONFIG_BUSYBOX_DEFAULT_LZMA is not set # CONFIG_BUSYBOX_DEFAULT_UNXZ is not set # CONFIG_BUSYBOX_DEFAULT_XZCAT is not set # CONFIG_BUSYBOX_DEFAULT_XZ is not set # CONFIG_BUSYBOX_DEFAULT_BZIP2 is not set CONFIG_BUSYBOX_DEFAULT_BZIP2_SMALL=0 CONFIG_BUSYBOX_DEFAULT_FEATURE_BZIP2_DECOMPRESS=y # CONFIG_BUSYBOX_DEFAULT_CPIO is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CPIO_O is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CPIO_P is not set # CONFIG_BUSYBOX_DEFAULT_DPKG is not set # CONFIG_BUSYBOX_DEFAULT_DPKG_DEB is not set CONFIG_BUSYBOX_DEFAULT_GZIP=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_GZIP_LONG_OPTIONS is not set CONFIG_BUSYBOX_DEFAULT_GZIP_FAST=0 # CONFIG_BUSYBOX_DEFAULT_FEATURE_GZIP_LEVELS is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_GZIP_DECOMPRESS=y # CONFIG_BUSYBOX_DEFAULT_LZOP is not set # CONFIG_BUSYBOX_DEFAULT_UNLZOP is not set # CONFIG_BUSYBOX_DEFAULT_LZOPCAT is not set # CONFIG_BUSYBOX_DEFAULT_LZOP_COMPR_HIGH is not set # CONFIG_BUSYBOX_DEFAULT_RPM is not set # CONFIG_BUSYBOX_DEFAULT_RPM2CPIO is not set CONFIG_BUSYBOX_DEFAULT_TAR=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_LONG_OPTIONS is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_CREATE=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_AUTODETECT is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_FROM=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_GNU_EXTENSIONS=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_TO_COMMAND is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_UNAME_GNAME is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_NOPRESERVE_TIME is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_SELINUX is not set # CONFIG_BUSYBOX_DEFAULT_UNZIP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UNZIP_CDF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UNZIP_BZIP2 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UNZIP_LZMA is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UNZIP_XZ is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LZMA_FAST is not set CONFIG_BUSYBOX_DEFAULT_BASENAME=y CONFIG_BUSYBOX_DEFAULT_CAT=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_CATN is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CATV is not set CONFIG_BUSYBOX_DEFAULT_CHGRP=y CONFIG_BUSYBOX_DEFAULT_CHMOD=y CONFIG_BUSYBOX_DEFAULT_CHOWN=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHOWN_LONG_OPTIONS is not set CONFIG_BUSYBOX_DEFAULT_CHROOT=y # CONFIG_BUSYBOX_DEFAULT_CKSUM is not set # CONFIG_BUSYBOX_DEFAULT_COMM is not set CONFIG_BUSYBOX_DEFAULT_CP=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_CP_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CP_REFLINK is not set CONFIG_BUSYBOX_DEFAULT_CUT=y CONFIG_BUSYBOX_DEFAULT_DATE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_ISOFMT=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_NANO is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_COMPAT is not set CONFIG_BUSYBOX_DEFAULT_DD=y CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_SIGNAL_HANDLING=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_THIRD_STATUS_LINE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_IBS_OBS=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_STATUS is not set CONFIG_BUSYBOX_DEFAULT_DF=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_DF_FANCY is not set CONFIG_BUSYBOX_DEFAULT_DIRNAME=y # CONFIG_BUSYBOX_DEFAULT_DOS2UNIX is not set # CONFIG_BUSYBOX_DEFAULT_UNIX2DOS is not set CONFIG_BUSYBOX_DEFAULT_DU=y CONFIG_BUSYBOX_DEFAULT_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y CONFIG_BUSYBOX_DEFAULT_ECHO=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_ECHO=y CONFIG_BUSYBOX_DEFAULT_ENV=y # CONFIG_BUSYBOX_DEFAULT_EXPAND is not set # CONFIG_BUSYBOX_DEFAULT_UNEXPAND is not set CONFIG_BUSYBOX_DEFAULT_EXPR=y CONFIG_BUSYBOX_DEFAULT_EXPR_MATH_SUPPORT_64=y # CONFIG_BUSYBOX_DEFAULT_FACTOR is not set CONFIG_BUSYBOX_DEFAULT_FALSE=y # CONFIG_BUSYBOX_DEFAULT_FOLD is not set CONFIG_BUSYBOX_DEFAULT_FSYNC=y CONFIG_BUSYBOX_DEFAULT_HEAD=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_HEAD=y # CONFIG_BUSYBOX_DEFAULT_HOSTID is not set CONFIG_BUSYBOX_DEFAULT_ID=y # CONFIG_BUSYBOX_DEFAULT_GROUPS is not set # CONFIG_BUSYBOX_DEFAULT_INSTALL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INSTALL_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_LINK is not set CONFIG_BUSYBOX_DEFAULT_LN=y # CONFIG_BUSYBOX_DEFAULT_LOGNAME is not set CONFIG_BUSYBOX_DEFAULT_LS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_FILETYPES=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_FOLLOWLINKS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_RECURSIVE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_WIDTH=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_SORTFILES=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_TIMESTAMPS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_USERNAME=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_COLOR=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_COLOR_IS_DEFAULT=y CONFIG_BUSYBOX_DEFAULT_MD5SUM=y # CONFIG_BUSYBOX_DEFAULT_SHA1SUM is not set CONFIG_BUSYBOX_DEFAULT_SHA256SUM=y # CONFIG_BUSYBOX_DEFAULT_SHA512SUM is not set # CONFIG_BUSYBOX_DEFAULT_SHA3SUM is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_MD5_SHA1_SUM_CHECK=y CONFIG_BUSYBOX_DEFAULT_MKDIR=y CONFIG_BUSYBOX_DEFAULT_MKFIFO=y CONFIG_BUSYBOX_DEFAULT_MKNOD=y CONFIG_BUSYBOX_DEFAULT_MKTEMP=y CONFIG_BUSYBOX_DEFAULT_MV=y CONFIG_BUSYBOX_DEFAULT_NICE=y # CONFIG_BUSYBOX_DEFAULT_NL is not set # CONFIG_BUSYBOX_DEFAULT_NOHUP is not set # CONFIG_BUSYBOX_DEFAULT_NPROC is not set # CONFIG_BUSYBOX_DEFAULT_OD is not set # CONFIG_BUSYBOX_DEFAULT_PASTE is not set # CONFIG_BUSYBOX_DEFAULT_PRINTENV is not set CONFIG_BUSYBOX_DEFAULT_PRINTF=y CONFIG_BUSYBOX_DEFAULT_PWD=y CONFIG_BUSYBOX_DEFAULT_READLINK=y CONFIG_BUSYBOX_DEFAULT_FEATURE_READLINK_FOLLOW=y # CONFIG_BUSYBOX_DEFAULT_REALPATH is not set CONFIG_BUSYBOX_DEFAULT_RM=y CONFIG_BUSYBOX_DEFAULT_RMDIR=y CONFIG_BUSYBOX_DEFAULT_SEQ=y # CONFIG_BUSYBOX_DEFAULT_SHRED is not set # CONFIG_BUSYBOX_DEFAULT_SHUF is not set CONFIG_BUSYBOX_DEFAULT_SLEEP=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_SLEEP=y CONFIG_BUSYBOX_DEFAULT_SORT=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_SORT_BIG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SORT_OPTIMIZE_MEMORY is not set # CONFIG_BUSYBOX_DEFAULT_SPLIT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SPLIT_FANCY is not set # CONFIG_BUSYBOX_DEFAULT_STAT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM is not set # CONFIG_BUSYBOX_DEFAULT_STTY is not set # CONFIG_BUSYBOX_DEFAULT_SUM is not set CONFIG_BUSYBOX_DEFAULT_SYNC=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_SYNC_FANCY is not set # CONFIG_BUSYBOX_DEFAULT_TAC is not set CONFIG_BUSYBOX_DEFAULT_TAIL=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_TAIL=y CONFIG_BUSYBOX_DEFAULT_TEE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_TEE_USE_BLOCK_IO=y CONFIG_BUSYBOX_DEFAULT_TEST=y CONFIG_BUSYBOX_DEFAULT_TEST1=y CONFIG_BUSYBOX_DEFAULT_TEST2=y CONFIG_BUSYBOX_DEFAULT_FEATURE_TEST_64=y # CONFIG_BUSYBOX_DEFAULT_TIMEOUT is not set CONFIG_BUSYBOX_DEFAULT_TOUCH=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TOUCH_NODEREF is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_TOUCH_SUSV3=y CONFIG_BUSYBOX_DEFAULT_TR=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TR_CLASSES is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TR_EQUIV is not set CONFIG_BUSYBOX_DEFAULT_TRUE=y # CONFIG_BUSYBOX_DEFAULT_TRUNCATE is not set # CONFIG_BUSYBOX_DEFAULT_TTY is not set CONFIG_BUSYBOX_DEFAULT_UNAME=y CONFIG_BUSYBOX_DEFAULT_UNAME_OSNAME="GNU/Linux" # CONFIG_BUSYBOX_DEFAULT_BB_ARCH is not set CONFIG_BUSYBOX_DEFAULT_UNIQ=y # CONFIG_BUSYBOX_DEFAULT_UNLINK is not set # CONFIG_BUSYBOX_DEFAULT_USLEEP is not set # CONFIG_BUSYBOX_DEFAULT_UUDECODE is not set # CONFIG_BUSYBOX_DEFAULT_BASE64 is not set # CONFIG_BUSYBOX_DEFAULT_UUENCODE is not set CONFIG_BUSYBOX_DEFAULT_WC=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_WC_LARGE is not set # CONFIG_BUSYBOX_DEFAULT_WHO is not set # CONFIG_BUSYBOX_DEFAULT_W is not set # CONFIG_BUSYBOX_DEFAULT_USERS is not set # CONFIG_BUSYBOX_DEFAULT_WHOAMI is not set CONFIG_BUSYBOX_DEFAULT_YES=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_PRESERVE_HARDLINKS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_HUMAN_READABLE=y # CONFIG_BUSYBOX_DEFAULT_CHVT is not set CONFIG_BUSYBOX_DEFAULT_CLEAR=y # CONFIG_BUSYBOX_DEFAULT_DEALLOCVT is not set # CONFIG_BUSYBOX_DEFAULT_DUMPKMAP is not set # CONFIG_BUSYBOX_DEFAULT_FGCONSOLE is not set # CONFIG_BUSYBOX_DEFAULT_KBD_MODE is not set # CONFIG_BUSYBOX_DEFAULT_LOADFONT is not set # CONFIG_BUSYBOX_DEFAULT_SETFONT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SETFONT_TEXTUAL_MAP is not set CONFIG_BUSYBOX_DEFAULT_DEFAULT_SETFONT_DIR="" # CONFIG_BUSYBOX_DEFAULT_FEATURE_LOADFONT_PSF2 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LOADFONT_RAW is not set # CONFIG_BUSYBOX_DEFAULT_LOADKMAP is not set # CONFIG_BUSYBOX_DEFAULT_OPENVT is not set CONFIG_BUSYBOX_DEFAULT_RESET=y # CONFIG_BUSYBOX_DEFAULT_RESIZE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_RESIZE_PRINT is not set # CONFIG_BUSYBOX_DEFAULT_SETCONSOLE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SETCONSOLE_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_SETKEYCODES is not set # CONFIG_BUSYBOX_DEFAULT_SETLOGCONS is not set # CONFIG_BUSYBOX_DEFAULT_SHOWKEY is not set # CONFIG_BUSYBOX_DEFAULT_PIPE_PROGRESS is not set # CONFIG_BUSYBOX_DEFAULT_RUN_PARTS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_RUN_PARTS_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_RUN_PARTS_FANCY is not set CONFIG_BUSYBOX_DEFAULT_START_STOP_DAEMON=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_FANCY is not set CONFIG_BUSYBOX_DEFAULT_WHICH=y # CONFIG_BUSYBOX_DEFAULT_MINIPS is not set # CONFIG_BUSYBOX_DEFAULT_NUKE is not set # CONFIG_BUSYBOX_DEFAULT_RESUME is not set # CONFIG_BUSYBOX_DEFAULT_RUN_INIT is not set CONFIG_BUSYBOX_DEFAULT_AWK=y CONFIG_BUSYBOX_DEFAULT_FEATURE_AWK_LIBM=y CONFIG_BUSYBOX_DEFAULT_FEATURE_AWK_GNU_EXTENSIONS=y CONFIG_BUSYBOX_DEFAULT_CMP=y # CONFIG_BUSYBOX_DEFAULT_DIFF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_DIFF_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_DIFF_DIR is not set # CONFIG_BUSYBOX_DEFAULT_ED is not set # CONFIG_BUSYBOX_DEFAULT_PATCH is not set CONFIG_BUSYBOX_DEFAULT_SED=y CONFIG_BUSYBOX_DEFAULT_VI=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_MAX_LEN=1024 # CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_8BIT is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_COLON=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_YANKMARK=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SEARCH=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_REGEX_SEARCH is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_USE_SIGNALS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_DOT_CMD=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_READONLY=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SETOPTS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SET=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_WIN_RESIZE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_ASK_TERMINAL=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO_QUEUE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO_QUEUE_MAX=0 CONFIG_BUSYBOX_DEFAULT_FEATURE_ALLOW_EXEC=y CONFIG_BUSYBOX_DEFAULT_FIND=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PRINT0=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MTIME=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MMIN is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PERM=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_TYPE=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_EXECUTABLE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_XDEV=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MAXDEPTH=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_NEWER=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_INUM is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_EXEC=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_EXEC_PLUS is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_USER=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_GROUP=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_NOT=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_DEPTH=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PAREN=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_SIZE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PRUNE=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_QUIT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_DELETE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PATH=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_REGEX=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_CONTEXT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_LINKS is not set CONFIG_BUSYBOX_DEFAULT_GREP=y CONFIG_BUSYBOX_DEFAULT_EGREP=y CONFIG_BUSYBOX_DEFAULT_FGREP=y CONFIG_BUSYBOX_DEFAULT_FEATURE_GREP_CONTEXT=y CONFIG_BUSYBOX_DEFAULT_XARGS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_CONFIRMATION=y CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_QUOTES=y CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_TERMOPT=y CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_ZERO_TERM=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_REPL_STR is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_PARALLEL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_ARGS_FILE is not set # CONFIG_BUSYBOX_DEFAULT_BOOTCHARTD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_CONFIG_FILE is not set CONFIG_BUSYBOX_DEFAULT_HALT=y CONFIG_BUSYBOX_DEFAULT_POWEROFF=y CONFIG_BUSYBOX_DEFAULT_REBOOT=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_WAIT_FOR_INIT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CALL_TELINIT is not set CONFIG_BUSYBOX_DEFAULT_TELINIT_PATH="" # CONFIG_BUSYBOX_DEFAULT_INIT is not set # CONFIG_BUSYBOX_DEFAULT_LINUXRC is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_INITTAB is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_KILL_REMOVED is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_KILL_DELAY=0 # CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_SCTTY is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_SYSLOG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_QUIET is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS is not set CONFIG_BUSYBOX_DEFAULT_INIT_TERMINAL_TYPE="" # CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_MODIFY_CMDLINE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_SHADOWPASSWDS=y # CONFIG_BUSYBOX_DEFAULT_USE_BB_PWD_GRP is not set # CONFIG_BUSYBOX_DEFAULT_USE_BB_SHADOW is not set # CONFIG_BUSYBOX_DEFAULT_USE_BB_CRYPT is not set # CONFIG_BUSYBOX_DEFAULT_USE_BB_CRYPT_SHA is not set # CONFIG_BUSYBOX_DEFAULT_ADD_SHELL is not set # CONFIG_BUSYBOX_DEFAULT_REMOVE_SHELL is not set # CONFIG_BUSYBOX_DEFAULT_ADDGROUP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_ADDUSER_TO_GROUP is not set # CONFIG_BUSYBOX_DEFAULT_ADDUSER is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_NAMES is not set CONFIG_BUSYBOX_DEFAULT_LAST_ID=0 CONFIG_BUSYBOX_DEFAULT_FIRST_SYSTEM_ID=0 CONFIG_BUSYBOX_DEFAULT_LAST_SYSTEM_ID=0 # CONFIG_BUSYBOX_DEFAULT_CHPASSWD is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_DEFAULT_PASSWD_ALGO="md5" # CONFIG_BUSYBOX_DEFAULT_CRYPTPW is not set # CONFIG_BUSYBOX_DEFAULT_MKPASSWD is not set # CONFIG_BUSYBOX_DEFAULT_DELUSER is not set # CONFIG_BUSYBOX_DEFAULT_DELGROUP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_DEL_USER_FROM_GROUP is not set # CONFIG_BUSYBOX_DEFAULT_GETTY is not set CONFIG_BUSYBOX_DEFAULT_LOGIN=y CONFIG_BUSYBOX_DEFAULT_LOGIN_SESSION_AS_CHILD=y # CONFIG_BUSYBOX_DEFAULT_LOGIN_SCRIPTS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_NOLOGIN is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SECURETTY is not set CONFIG_BUSYBOX_DEFAULT_PASSWD=y CONFIG_BUSYBOX_DEFAULT_FEATURE_PASSWD_WEAK_CHECK=y # CONFIG_BUSYBOX_DEFAULT_SU is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SU_SYSLOG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SU_CHECKS_SHELLS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY is not set # CONFIG_BUSYBOX_DEFAULT_SULOGIN is not set # CONFIG_BUSYBOX_DEFAULT_VLOCK is not set # CONFIG_BUSYBOX_DEFAULT_CHATTR is not set # CONFIG_BUSYBOX_DEFAULT_FSCK is not set # CONFIG_BUSYBOX_DEFAULT_LSATTR is not set # CONFIG_BUSYBOX_DEFAULT_TUNE2FS is not set # CONFIG_BUSYBOX_DEFAULT_MODPROBE_SMALL is not set # CONFIG_BUSYBOX_DEFAULT_DEPMOD is not set # CONFIG_BUSYBOX_DEFAULT_INSMOD is not set # CONFIG_BUSYBOX_DEFAULT_LSMOD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set # CONFIG_BUSYBOX_DEFAULT_MODINFO is not set # CONFIG_BUSYBOX_DEFAULT_MODPROBE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MODPROBE_BLACKLIST is not set # CONFIG_BUSYBOX_DEFAULT_RMMOD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CMDLINE_MODULE_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_2_4_MODULES is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_VERSION_CHECKING is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOADINKMEM is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOAD_MAP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOAD_MAP_FULL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_TAINTED_MODULE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_TRY_MMAP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MODUTILS_ALIAS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MODUTILS_SYMBOLS is not set CONFIG_BUSYBOX_DEFAULT_DEFAULT_MODULES_DIR="" CONFIG_BUSYBOX_DEFAULT_DEFAULT_DEPMOD_FILE="" # CONFIG_BUSYBOX_DEFAULT_ACPID is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_ACPID_COMPAT is not set # CONFIG_BUSYBOX_DEFAULT_BLKDISCARD is not set # CONFIG_BUSYBOX_DEFAULT_BLKID is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_BLKID_TYPE is not set # CONFIG_BUSYBOX_DEFAULT_BLOCKDEV is not set # CONFIG_BUSYBOX_DEFAULT_CAL is not set # CONFIG_BUSYBOX_DEFAULT_CHRT is not set CONFIG_BUSYBOX_DEFAULT_DMESG=y CONFIG_BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY=y # CONFIG_BUSYBOX_DEFAULT_EJECT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_EJECT_SCSI is not set # CONFIG_BUSYBOX_DEFAULT_FALLOCATE is not set # CONFIG_BUSYBOX_DEFAULT_FATATTR is not set # CONFIG_BUSYBOX_DEFAULT_FBSET is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FBSET_FANCY is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE is not set # CONFIG_BUSYBOX_DEFAULT_FDFORMAT is not set # CONFIG_BUSYBOX_DEFAULT_FDISK is not set # CONFIG_BUSYBOX_DEFAULT_FDISK_SUPPORT_LARGE_DISKS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FDISK_WRITABLE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_AIX_LABEL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SGI_LABEL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SUN_LABEL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_OSF_LABEL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_GPT_LABEL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FDISK_ADVANCED is not set # CONFIG_BUSYBOX_DEFAULT_FINDFS is not set CONFIG_BUSYBOX_DEFAULT_FLOCK=y # CONFIG_BUSYBOX_DEFAULT_FDFLUSH is not set # CONFIG_BUSYBOX_DEFAULT_FREERAMDISK is not set # CONFIG_BUSYBOX_DEFAULT_FSCK_MINIX is not set # CONFIG_BUSYBOX_DEFAULT_FSFREEZE is not set # CONFIG_BUSYBOX_DEFAULT_FSTRIM is not set # CONFIG_BUSYBOX_DEFAULT_GETOPT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_GETOPT_LONG is not set CONFIG_BUSYBOX_DEFAULT_HEXDUMP=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE is not set # CONFIG_BUSYBOX_DEFAULT_HD is not set # CONFIG_BUSYBOX_DEFAULT_XXD is not set CONFIG_BUSYBOX_DEFAULT_HWCLOCK=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_HWCLOCK_ADJTIME_FHS is not set # CONFIG_BUSYBOX_DEFAULT_IONICE is not set # CONFIG_BUSYBOX_DEFAULT_IPCRM is not set # CONFIG_BUSYBOX_DEFAULT_IPCS is not set # CONFIG_BUSYBOX_DEFAULT_LAST is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LAST_FANCY is not set # CONFIG_BUSYBOX_DEFAULT_LOSETUP is not set # CONFIG_BUSYBOX_DEFAULT_LSPCI is not set # CONFIG_BUSYBOX_DEFAULT_LSUSB is not set # CONFIG_BUSYBOX_DEFAULT_MDEV is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_CONF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE is not set # CONFIG_BUSYBOX_DEFAULT_MESG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MESG_ENABLE_ONLY_GROUP is not set # CONFIG_BUSYBOX_DEFAULT_MKE2FS is not set # CONFIG_BUSYBOX_DEFAULT_MKFS_EXT2 is not set # CONFIG_BUSYBOX_DEFAULT_MKFS_MINIX is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MINIX2 is not set # CONFIG_BUSYBOX_DEFAULT_MKFS_REISER is not set # CONFIG_BUSYBOX_DEFAULT_MKDOSFS is not set # CONFIG_BUSYBOX_DEFAULT_MKFS_VFAT is not set CONFIG_BUSYBOX_DEFAULT_MKSWAP=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_MKSWAP_UUID is not set # CONFIG_BUSYBOX_DEFAULT_MORE is not set CONFIG_BUSYBOX_DEFAULT_MOUNT=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB is not set # CONFIG_BUSYBOX_DEFAULT_MOUNTPOINT is not set # CONFIG_BUSYBOX_DEFAULT_NOLOGIN is not set # CONFIG_BUSYBOX_DEFAULT_NOLOGIN_DEPENDENCIES is not set # CONFIG_BUSYBOX_DEFAULT_NSENTER is not set CONFIG_BUSYBOX_DEFAULT_PIVOT_ROOT=y # CONFIG_BUSYBOX_DEFAULT_RDATE is not set # CONFIG_BUSYBOX_DEFAULT_RDEV is not set # CONFIG_BUSYBOX_DEFAULT_READPROFILE is not set # CONFIG_BUSYBOX_DEFAULT_RENICE is not set # CONFIG_BUSYBOX_DEFAULT_REV is not set # CONFIG_BUSYBOX_DEFAULT_RTCWAKE is not set # CONFIG_BUSYBOX_DEFAULT_SCRIPT is not set # CONFIG_BUSYBOX_DEFAULT_SCRIPTREPLAY is not set # CONFIG_BUSYBOX_DEFAULT_SETARCH is not set # CONFIG_BUSYBOX_DEFAULT_LINUX32 is not set # CONFIG_BUSYBOX_DEFAULT_LINUX64 is not set # CONFIG_BUSYBOX_DEFAULT_SETPRIV is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SETPRIV_DUMP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SETPRIV_CAPABILITIES is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SETPRIV_CAPABILITY_NAMES is not set # CONFIG_BUSYBOX_DEFAULT_SETSID is not set # CONFIG_BUSYBOX_DEFAULT_SWAPON is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SWAPON_PRI is not set # CONFIG_BUSYBOX_DEFAULT_SWAPOFF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SWAPONOFF_LABEL is not set CONFIG_BUSYBOX_DEFAULT_SWITCH_ROOT=y # CONFIG_BUSYBOX_DEFAULT_TASKSET is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY is not set # CONFIG_BUSYBOX_DEFAULT_UEVENT is not set CONFIG_BUSYBOX_DEFAULT_UMOUNT=y CONFIG_BUSYBOX_DEFAULT_FEATURE_UMOUNT_ALL=y # CONFIG_BUSYBOX_DEFAULT_UNSHARE is not set # CONFIG_BUSYBOX_DEFAULT_WALL is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP_CREATE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MTAB_SUPPORT is not set # CONFIG_BUSYBOX_DEFAULT_VOLUMEID is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BCACHE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BTRFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_CRAMFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXFAT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_F2FS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_FAT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_HFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_ISO9660 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_JFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LINUXRAID is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LINUXSWAP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LUKS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_MINIX is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_NILFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_NTFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_OCFS2 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_REISERFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_ROMFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SQUASHFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SYSV is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UBIFS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UDF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_XFS is not set # CONFIG_BUSYBOX_DEFAULT_ADJTIMEX is not set # CONFIG_BUSYBOX_DEFAULT_BBCONFIG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_COMPRESS_BBCONFIG is not set # CONFIG_BUSYBOX_DEFAULT_BC is not set # CONFIG_BUSYBOX_DEFAULT_DC is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_DC_BIG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_DC_LIBM is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_BC_INTERACTIVE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_BC_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_BEEP is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_BEEP_FREQ=0 CONFIG_BUSYBOX_DEFAULT_FEATURE_BEEP_LENGTH_MS=0 # CONFIG_BUSYBOX_DEFAULT_CHAT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_NOFAIL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_TTY_HIFI is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_IMPLICIT_CR is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_SWALLOW_OPTS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_SEND_ESCAPES is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_VAR_ABORT_LEN is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_CLR_ABORT is not set # CONFIG_BUSYBOX_DEFAULT_CONSPY is not set CONFIG_BUSYBOX_DEFAULT_CROND=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_D is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_CALL_SENDMAIL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_SPECIAL_TIMES is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_DIR="/etc" CONFIG_BUSYBOX_DEFAULT_CRONTAB=y # CONFIG_BUSYBOX_DEFAULT_DEVFSD is not set # CONFIG_BUSYBOX_DEFAULT_DEVFSD_MODLOAD is not set # CONFIG_BUSYBOX_DEFAULT_DEVFSD_FG_NP is not set # CONFIG_BUSYBOX_DEFAULT_DEVFSD_VERBOSE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_DEVFS is not set # CONFIG_BUSYBOX_DEFAULT_DEVMEM is not set # CONFIG_BUSYBOX_DEFAULT_FBSPLASH is not set # CONFIG_BUSYBOX_DEFAULT_FLASH_ERASEALL is not set # CONFIG_BUSYBOX_DEFAULT_FLASH_LOCK is not set # CONFIG_BUSYBOX_DEFAULT_FLASH_UNLOCK is not set # CONFIG_BUSYBOX_DEFAULT_FLASHCP is not set # CONFIG_BUSYBOX_DEFAULT_HDPARM is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_GET_IDENTITY is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_GETSET_DMA is not set # CONFIG_BUSYBOX_DEFAULT_HEXEDIT is not set # CONFIG_BUSYBOX_DEFAULT_I2CGET is not set # CONFIG_BUSYBOX_DEFAULT_I2CSET is not set # CONFIG_BUSYBOX_DEFAULT_I2CDUMP is not set # CONFIG_BUSYBOX_DEFAULT_I2CDETECT is not set # CONFIG_BUSYBOX_DEFAULT_INOTIFYD is not set CONFIG_BUSYBOX_DEFAULT_LESS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_MAXLINES=9999999 # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_BRACKETS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_FLAGS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_TRUNCATE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_MARKS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_REGEXP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_WINCH is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_ASK_TERMINAL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_DASHCMD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_RAW is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_ENV is not set CONFIG_BUSYBOX_DEFAULT_LOCK=y # CONFIG_BUSYBOX_DEFAULT_LSSCSI is not set # CONFIG_BUSYBOX_DEFAULT_MAKEDEVS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MAKEDEVS_LEAF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_MAKEDEVS_TABLE is not set # CONFIG_BUSYBOX_DEFAULT_MAN is not set # CONFIG_BUSYBOX_DEFAULT_MICROCOM is not set # CONFIG_BUSYBOX_DEFAULT_MT is not set # CONFIG_BUSYBOX_DEFAULT_NANDWRITE is not set # CONFIG_BUSYBOX_DEFAULT_NANDDUMP is not set # CONFIG_BUSYBOX_DEFAULT_PARTPROBE is not set # CONFIG_BUSYBOX_DEFAULT_RAIDAUTORUN is not set # CONFIG_BUSYBOX_DEFAULT_READAHEAD is not set # CONFIG_BUSYBOX_DEFAULT_RFKILL is not set # CONFIG_BUSYBOX_DEFAULT_RUNLEVEL is not set # CONFIG_BUSYBOX_DEFAULT_RX is not set # CONFIG_BUSYBOX_DEFAULT_SETFATTR is not set # CONFIG_BUSYBOX_DEFAULT_SETSERIAL is not set CONFIG_BUSYBOX_DEFAULT_STRINGS=y CONFIG_BUSYBOX_DEFAULT_TIME=y # CONFIG_BUSYBOX_DEFAULT_TTYSIZE is not set # CONFIG_BUSYBOX_DEFAULT_UBIATTACH is not set # CONFIG_BUSYBOX_DEFAULT_UBIDETACH is not set # CONFIG_BUSYBOX_DEFAULT_UBIMKVOL is not set # CONFIG_BUSYBOX_DEFAULT_UBIRMVOL is not set # CONFIG_BUSYBOX_DEFAULT_UBIRSVOL is not set # CONFIG_BUSYBOX_DEFAULT_UBIUPDATEVOL is not set # CONFIG_BUSYBOX_DEFAULT_UBIRENAME is not set # CONFIG_BUSYBOX_DEFAULT_VOLNAME is not set # CONFIG_BUSYBOX_DEFAULT_WATCHDOG is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_IPV6=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_UNIX_LOCAL is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_PREFER_IPV4_ADDRESS=y CONFIG_BUSYBOX_DEFAULT_VERBOSE_RESOLUTION_ERRORS=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TLS_SHA1 is not set # CONFIG_BUSYBOX_DEFAULT_ARP is not set # CONFIG_BUSYBOX_DEFAULT_ARPING is not set CONFIG_BUSYBOX_DEFAULT_BRCTL=y CONFIG_BUSYBOX_DEFAULT_FEATURE_BRCTL_FANCY=y CONFIG_BUSYBOX_DEFAULT_FEATURE_BRCTL_SHOW=y # CONFIG_BUSYBOX_DEFAULT_DNSD is not set # CONFIG_BUSYBOX_DEFAULT_ETHER_WAKE is not set # CONFIG_BUSYBOX_DEFAULT_FTPD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPD_WRITE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPD_AUTHENTICATION is not set # CONFIG_BUSYBOX_DEFAULT_FTPGET is not set # CONFIG_BUSYBOX_DEFAULT_FTPPUT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPGETPUT_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_HOSTNAME is not set # CONFIG_BUSYBOX_DEFAULT_DNSDOMAINNAME is not set # CONFIG_BUSYBOX_DEFAULT_HTTPD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_RANGES is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_SETUID is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_BASIC_AUTH is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_AUTH_MD5 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_CGI is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_ENCODE_URL_STR is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_ERROR_PAGES is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_PROXY is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_GZIP is not set CONFIG_BUSYBOX_DEFAULT_IFCONFIG=y CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_STATUS=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_SLIP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_HW=y CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_BROADCAST_PLUS=y # CONFIG_BUSYBOX_DEFAULT_IFENSLAVE is not set # CONFIG_BUSYBOX_DEFAULT_IFPLUGD is not set # CONFIG_BUSYBOX_DEFAULT_IFUP is not set # CONFIG_BUSYBOX_DEFAULT_IFDOWN is not set CONFIG_BUSYBOX_DEFAULT_IFUPDOWN_IFSTATE_PATH="" # CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV4 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV6 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_MAPPING is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set # CONFIG_BUSYBOX_DEFAULT_INETD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_RPC is not set CONFIG_BUSYBOX_DEFAULT_IP=y # CONFIG_BUSYBOX_DEFAULT_IPADDR is not set # CONFIG_BUSYBOX_DEFAULT_IPLINK is not set # CONFIG_BUSYBOX_DEFAULT_IPROUTE is not set # CONFIG_BUSYBOX_DEFAULT_IPTUNNEL is not set # CONFIG_BUSYBOX_DEFAULT_IPRULE is not set # CONFIG_BUSYBOX_DEFAULT_IPNEIGH is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_ADDRESS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_LINK=y CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_ROUTE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_ROUTE_DIR="/etc/iproute2" # CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_TUNNEL is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_RULE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_NEIGH=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_RARE_PROTOCOLS is not set # CONFIG_BUSYBOX_DEFAULT_IPCALC is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_IPCALC_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_IPCALC_FANCY is not set # CONFIG_BUSYBOX_DEFAULT_FAKEIDENTD is not set # CONFIG_BUSYBOX_DEFAULT_NAMEIF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED is not set # CONFIG_BUSYBOX_DEFAULT_NBDCLIENT is not set CONFIG_BUSYBOX_DEFAULT_NC=y # CONFIG_BUSYBOX_DEFAULT_NETCAT is not set # CONFIG_BUSYBOX_DEFAULT_NC_SERVER is not set # CONFIG_BUSYBOX_DEFAULT_NC_EXTRA is not set # CONFIG_BUSYBOX_DEFAULT_NC_110_COMPAT is not set CONFIG_BUSYBOX_DEFAULT_NETMSG=y CONFIG_BUSYBOX_DEFAULT_NETSTAT=y CONFIG_BUSYBOX_DEFAULT_FEATURE_NETSTAT_WIDE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_NETSTAT_PRG=y # CONFIG_BUSYBOX_DEFAULT_NSLOOKUP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_NSLOOKUP_BIG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_NSLOOKUP_LONG_OPTIONS is not set CONFIG_BUSYBOX_DEFAULT_NSLOOKUP_OPENWRT=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_NSLOOKUP_OPENWRT_LONG_OPTIONS is not set CONFIG_BUSYBOX_DEFAULT_NTPD=y CONFIG_BUSYBOX_DEFAULT_FEATURE_NTPD_SERVER=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_NTPD_CONF is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_NTP_AUTH is not set CONFIG_BUSYBOX_DEFAULT_PING=y CONFIG_BUSYBOX_DEFAULT_PING6=y CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_PING=y # CONFIG_BUSYBOX_DEFAULT_PSCAN is not set CONFIG_BUSYBOX_DEFAULT_ROUTE=y # CONFIG_BUSYBOX_DEFAULT_SLATTACH is not set # CONFIG_BUSYBOX_DEFAULT_SSL_CLIENT is not set # CONFIG_BUSYBOX_DEFAULT_TC is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TC_INGRESS is not set # CONFIG_BUSYBOX_DEFAULT_TCPSVD is not set # CONFIG_BUSYBOX_DEFAULT_UDPSVD is not set # CONFIG_BUSYBOX_DEFAULT_TELNET is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNET_TTYPE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNET_AUTOLOGIN is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNET_WIDTH is not set # CONFIG_BUSYBOX_DEFAULT_TELNETD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNETD_STANDALONE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNETD_INETD_WAIT is not set # CONFIG_BUSYBOX_DEFAULT_TFTP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_PROGRESS_BAR is not set # CONFIG_BUSYBOX_DEFAULT_TFTPD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_GET is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_PUT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_BLOCKSIZE is not set # CONFIG_BUSYBOX_DEFAULT_TFTP_DEBUG is not set # CONFIG_BUSYBOX_DEFAULT_TLS is not set CONFIG_BUSYBOX_DEFAULT_TRACEROUTE=y CONFIG_BUSYBOX_DEFAULT_TRACEROUTE6=y CONFIG_BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_VERBOSE=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_USE_ICMP is not set # CONFIG_BUSYBOX_DEFAULT_TUNCTL is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TUNCTL_UG is not set # CONFIG_BUSYBOX_DEFAULT_VCONFIG is not set # CONFIG_BUSYBOX_DEFAULT_WGET is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_HTTPS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL is not set # CONFIG_BUSYBOX_DEFAULT_WHOIS is not set # CONFIG_BUSYBOX_DEFAULT_ZCIP is not set # CONFIG_BUSYBOX_DEFAULT_UDHCPD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set CONFIG_BUSYBOX_DEFAULT_DHCPD_LEASES_FILE="" # CONFIG_BUSYBOX_DEFAULT_DUMPLEASES is not set # CONFIG_BUSYBOX_DEFAULT_DHCPRELAY is not set CONFIG_BUSYBOX_DEFAULT_UDHCPC=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC_ARPING is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC_SANITIZEOPT is not set CONFIG_BUSYBOX_DEFAULT_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" # CONFIG_BUSYBOX_DEFAULT_UDHCPC6 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC3646 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4704 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4833 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC5970 is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_PORT is not set CONFIG_BUSYBOX_DEFAULT_UDHCP_DEBUG=0 CONFIG_BUSYBOX_DEFAULT_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_RFC3397=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_8021Q is not set CONFIG_BUSYBOX_DEFAULT_IFUPDOWN_UDHCPC_CMD_OPTIONS="" # CONFIG_BUSYBOX_DEFAULT_LPD is not set # CONFIG_BUSYBOX_DEFAULT_LPR is not set # CONFIG_BUSYBOX_DEFAULT_LPQ is not set # CONFIG_BUSYBOX_DEFAULT_MAKEMIME is not set # CONFIG_BUSYBOX_DEFAULT_POPMAILDIR is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_POPMAILDIR_DELIVERY is not set # CONFIG_BUSYBOX_DEFAULT_REFORMIME is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_REFORMIME_COMPAT is not set # CONFIG_BUSYBOX_DEFAULT_SENDMAIL is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET="" CONFIG_BUSYBOX_DEFAULT_FREE=y # CONFIG_BUSYBOX_DEFAULT_FUSER is not set # CONFIG_BUSYBOX_DEFAULT_IOSTAT is not set CONFIG_BUSYBOX_DEFAULT_KILL=y CONFIG_BUSYBOX_DEFAULT_KILLALL=y # CONFIG_BUSYBOX_DEFAULT_KILLALL5 is not set # CONFIG_BUSYBOX_DEFAULT_LSOF is not set # CONFIG_BUSYBOX_DEFAULT_MPSTAT is not set # CONFIG_BUSYBOX_DEFAULT_NMETER is not set CONFIG_BUSYBOX_DEFAULT_PGREP=y # CONFIG_BUSYBOX_DEFAULT_PKILL is not set CONFIG_BUSYBOX_DEFAULT_PIDOF=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT is not set # CONFIG_BUSYBOX_DEFAULT_PMAP is not set # CONFIG_BUSYBOX_DEFAULT_POWERTOP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_POWERTOP_INTERACTIVE is not set CONFIG_BUSYBOX_DEFAULT_PS=y CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_WIDE=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_LONG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_TIME is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS is not set # CONFIG_BUSYBOX_DEFAULT_PSTREE is not set # CONFIG_BUSYBOX_DEFAULT_PWDX is not set # CONFIG_BUSYBOX_DEFAULT_SMEMCAP is not set CONFIG_BUSYBOX_DEFAULT_BB_SYSCTL=y CONFIG_BUSYBOX_DEFAULT_TOP=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_INTERACTIVE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_SMP_CPU is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_DECIMALS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_SMP_PROCESS is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_TOPMEM is not set CONFIG_BUSYBOX_DEFAULT_UPTIME=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT is not set # CONFIG_BUSYBOX_DEFAULT_WATCH is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS is not set # CONFIG_BUSYBOX_DEFAULT_CHPST is not set # CONFIG_BUSYBOX_DEFAULT_SETUIDGID is not set # CONFIG_BUSYBOX_DEFAULT_ENVUIDGID is not set # CONFIG_BUSYBOX_DEFAULT_ENVDIR is not set # CONFIG_BUSYBOX_DEFAULT_SOFTLIMIT is not set # CONFIG_BUSYBOX_DEFAULT_RUNSV is not set # CONFIG_BUSYBOX_DEFAULT_RUNSVDIR is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_RUNSVDIR_LOG is not set # CONFIG_BUSYBOX_DEFAULT_SV is not set CONFIG_BUSYBOX_DEFAULT_SV_DEFAULT_SERVICE_DIR="" # CONFIG_BUSYBOX_DEFAULT_SVC is not set # CONFIG_BUSYBOX_DEFAULT_SVOK is not set # CONFIG_BUSYBOX_DEFAULT_SVLOGD is not set # CONFIG_BUSYBOX_DEFAULT_CHCON is not set # CONFIG_BUSYBOX_DEFAULT_GETENFORCE is not set # CONFIG_BUSYBOX_DEFAULT_GETSEBOOL is not set # CONFIG_BUSYBOX_DEFAULT_LOAD_POLICY is not set # CONFIG_BUSYBOX_DEFAULT_MATCHPATHCON is not set # CONFIG_BUSYBOX_DEFAULT_RUNCON is not set # CONFIG_BUSYBOX_DEFAULT_SELINUXENABLED is not set # CONFIG_BUSYBOX_DEFAULT_SESTATUS is not set # CONFIG_BUSYBOX_DEFAULT_SETENFORCE is not set # CONFIG_BUSYBOX_DEFAULT_SETFILES is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SETFILES_CHECK_OPTION is not set # CONFIG_BUSYBOX_DEFAULT_RESTORECON is not set # CONFIG_BUSYBOX_DEFAULT_SETSEBOOL is not set CONFIG_BUSYBOX_DEFAULT_SH_IS_ASH=y # CONFIG_BUSYBOX_DEFAULT_SH_IS_HUSH is not set # CONFIG_BUSYBOX_DEFAULT_SH_IS_NONE is not set # CONFIG_BUSYBOX_DEFAULT_BASH_IS_ASH is not set # CONFIG_BUSYBOX_DEFAULT_BASH_IS_HUSH is not set CONFIG_BUSYBOX_DEFAULT_BASH_IS_NONE=y CONFIG_BUSYBOX_DEFAULT_ASH=y # CONFIG_BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE is not set CONFIG_BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB=y CONFIG_BUSYBOX_DEFAULT_ASH_BASH_COMPAT=y # CONFIG_BUSYBOX_DEFAULT_ASH_BASH_SOURCE_CURDIR is not set # CONFIG_BUSYBOX_DEFAULT_ASH_BASH_NOT_FOUND_HOOK is not set CONFIG_BUSYBOX_DEFAULT_ASH_JOB_CONTROL=y CONFIG_BUSYBOX_DEFAULT_ASH_ALIAS=y # CONFIG_BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT is not set CONFIG_BUSYBOX_DEFAULT_ASH_EXPAND_PRMT=y # CONFIG_BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT is not set # CONFIG_BUSYBOX_DEFAULT_ASH_MAIL is not set CONFIG_BUSYBOX_DEFAULT_ASH_ECHO=y CONFIG_BUSYBOX_DEFAULT_ASH_PRINTF=y CONFIG_BUSYBOX_DEFAULT_ASH_TEST=y # CONFIG_BUSYBOX_DEFAULT_ASH_HELP is not set CONFIG_BUSYBOX_DEFAULT_ASH_GETOPTS=y CONFIG_BUSYBOX_DEFAULT_ASH_CMDCMD=y # CONFIG_BUSYBOX_DEFAULT_CTTYHACK is not set # CONFIG_BUSYBOX_DEFAULT_HUSH is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_BASH_COMPAT is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_BRACE_EXPANSION is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_LINENO_VAR is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_BASH_SOURCE_CURDIR is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_INTERACTIVE is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_SAVEHISTORY is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_JOB is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_TICK is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_IF is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_LOOPS is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_CASE is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_FUNCTIONS is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_LOCAL is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_MODE_X is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_ECHO is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_PRINTF is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_TEST is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_HELP is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_EXPORT is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_EXPORT_N is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_READONLY is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_KILL is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_WAIT is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_COMMAND is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_TRAP is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_TYPE is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_TIMES is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_READ is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_SET is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_UNSET is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_ULIMIT is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_UMASK is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_GETOPTS is not set # CONFIG_BUSYBOX_DEFAULT_HUSH_MEMLEAK is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_MATH=y CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_MATH_64=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_STANDALONE is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_NOFORK=y # CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_READ_FRAC is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_EMBEDDED_SCRIPTS is not set # CONFIG_BUSYBOX_DEFAULT_KLOGD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL is not set CONFIG_BUSYBOX_DEFAULT_LOGGER=y # CONFIG_BUSYBOX_DEFAULT_LOGREAD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_LOGREAD_REDUCED_LOCKING is not set # CONFIG_BUSYBOX_DEFAULT_SYSLOGD is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_ROTATE_LOGFILE is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_REMOTE_LOG is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_DUP is not set # CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_CFG is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_READ_BUFFER_SIZE=0 # CONFIG_BUSYBOX_DEFAULT_FEATURE_IPC_SYSLOG is not set CONFIG_BUSYBOX_DEFAULT_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0 # CONFIG_BUSYBOX_DEFAULT_FEATURE_KMSG_SYSLOG is not set # CONFIG_PACKAGE_ca-bundle is not set CONFIG_PACKAGE_ca-certificates=y # CONFIG_PACKAGE_dnsmasq is not set # CONFIG_PACKAGE_dnsmasq-dhcpv6 is not set CONFIG_PACKAGE_dnsmasq-full=y CONFIG_PACKAGE_dnsmasq_full_dhcp=y # CONFIG_PACKAGE_dnsmasq_full_dhcpv6 is not set # CONFIG_PACKAGE_dnsmasq_full_dnssec is not set # CONFIG_PACKAGE_dnsmasq_full_auth is not set CONFIG_PACKAGE_dnsmasq_full_ipset=y # CONFIG_PACKAGE_dnsmasq_full_conntrack is not set # CONFIG_PACKAGE_dnsmasq_full_noid is not set # CONFIG_PACKAGE_dnsmasq_full_broken_rtc is not set CONFIG_PACKAGE_dropbear=y # # Configuration # CONFIG_DROPBEAR_CURVE25519=y # CONFIG_DROPBEAR_ECC is not set # CONFIG_DROPBEAR_ZLIB is not set CONFIG_DROPBEAR_DBCLIENT=y # CONFIG_PACKAGE_ead is not set CONFIG_PACKAGE_firewall=y CONFIG_PACKAGE_fstools=y # CONFIG_FSTOOLS_OVL_MOUNT_FULL_ACCESS_TIME is not set # CONFIG_FSTOOLS_OVL_MOUNT_COMPRESS_ZLIB is not set CONFIG_PACKAGE_fwtool=y CONFIG_PACKAGE_getrandom=y CONFIG_PACKAGE_jsonfilter=y # CONFIG_PACKAGE_libatomic is not set CONFIG_PACKAGE_libc=y CONFIG_PACKAGE_libgcc=y # CONFIG_PACKAGE_libgomp is not set CONFIG_PACKAGE_libpthread=y CONFIG_PACKAGE_librt=y # CONFIG_PACKAGE_libstdcpp is not set CONFIG_PACKAGE_logd=y CONFIG_PACKAGE_mtd=y CONFIG_PACKAGE_netifd=y # CONFIG_PACKAGE_nft-qos is not set # CONFIG_PACKAGE_nvram is not set # CONFIG_PACKAGE_om-watchdog is not set # CONFIG_PACKAGE_openwrt-keyring is not set CONFIG_PACKAGE_opkg=y CONFIG_PACKAGE_procd=y # # Configuration # # CONFIG_PROCD_SHOW_BOOT is not set # CONFIG_PROCD_ZRAM_TMPFS is not set # CONFIG_PACKAGE_procd-ujail is not set # CONFIG_PACKAGE_qos-scripts is not set # CONFIG_PACKAGE_resolveip is not set CONFIG_PACKAGE_rpcd=y # CONFIG_PACKAGE_rpcd-mod-file is not set # CONFIG_PACKAGE_rpcd-mod-iwinfo is not set # CONFIG_PACKAGE_rpcd-mod-rpcsys is not set # CONFIG_PACKAGE_snapshot-tool is not set # CONFIG_PACKAGE_sqm-scripts is not set # CONFIG_PACKAGE_sqm-scripts-extra is not set CONFIG_PACKAGE_swconfig=y CONFIG_PACKAGE_ubox=y CONFIG_PACKAGE_ubus=y CONFIG_PACKAGE_ubusd=y # CONFIG_PACKAGE_ucert is not set # CONFIG_PACKAGE_ucert-full is not set CONFIG_PACKAGE_uci=y CONFIG_PACKAGE_urandom-seed=y CONFIG_PACKAGE_urngd=y # CONFIG_PACKAGE_usign is not set # CONFIG_PACKAGE_wireless-tools is not set # CONFIG_PACKAGE_zram-swap is not set # # Administration # # # openwisp # # CONFIG_PACKAGE_openwisp-config-cyassl is not set # CONFIG_PACKAGE_openwisp-config-mbedtls is not set # CONFIG_PACKAGE_openwisp-config-nossl is not set # CONFIG_PACKAGE_openwisp-config-openssl is not set # # zabbix # # CONFIG_PACKAGE_zabbix-agentd is not set # CONFIG_PACKAGE_zabbix-extra-mac80211 is not set # CONFIG_PACKAGE_zabbix-extra-network is not set # CONFIG_PACKAGE_zabbix-extra-wifi is not set # CONFIG_PACKAGE_zabbix-get is not set # CONFIG_PACKAGE_zabbix-proxy is not set # CONFIG_PACKAGE_zabbix-sender is not set # CONFIG_PACKAGE_zabbix-server is not set # CONFIG_PACKAGE_htop is not set # CONFIG_PACKAGE_ipmitool is not set # CONFIG_PACKAGE_monit is not set # CONFIG_PACKAGE_monit-nossl is not set # CONFIG_PACKAGE_muninlite is not set # CONFIG_PACKAGE_netdata is not set # CONFIG_PACKAGE_sudo is not set # CONFIG_PACKAGE_syslog-ng is not set # # Boot Loaders # # # Development # # # Libraries # # CONFIG_PACKAGE_libncurses-dev is not set # CONFIG_PACKAGE_libxml2-dev is not set # CONFIG_PACKAGE_zlib-dev is not set # CONFIG_PACKAGE_ar is not set # CONFIG_PACKAGE_autoconf is not set # CONFIG_PACKAGE_automake is not set # CONFIG_PACKAGE_binutils is not set # CONFIG_PACKAGE_diffutils is not set # CONFIG_PACKAGE_gcc is not set # CONFIG_PACKAGE_gdb is not set # CONFIG_PACKAGE_gdbserver is not set # CONFIG_PACKAGE_libtool-bin is not set # CONFIG_PACKAGE_lpc21isp is not set # CONFIG_PACKAGE_lttng-tools is not set # CONFIG_PACKAGE_m4 is not set # CONFIG_PACKAGE_make is not set # CONFIG_PACKAGE_meson is not set # CONFIG_PACKAGE_meson-src is not set # CONFIG_PACKAGE_ninja is not set # CONFIG_PACKAGE_objdump is not set # CONFIG_PACKAGE_patch is not set # CONFIG_PACKAGE_pkg-config is not set # CONFIG_PACKAGE_trace-cmd is not set # CONFIG_PACKAGE_trace-cmd-extra is not set # CONFIG_PACKAGE_valgrind is not set # # Extra packages # # CONFIG_PACKAGE_automount is not set # CONFIG_PACKAGE_autosamba is not set # CONFIG_PACKAGE_ipv6helper is not set # CONFIG_PACKAGE_k3wifi is not set # CONFIG_PACKAGE_wireguard-tools is not set # # Firmware # # # ath10k IPQ4019 Boarddata # # CONFIG_PACKAGE_aircard-pcmcia-firmware is not set # CONFIG_PACKAGE_amdgpu-firmware is not set # CONFIG_PACKAGE_ar3k-firmware is not set # CONFIG_PACKAGE_ath10k-firmware-qca4019 is not set # CONFIG_PACKAGE_ath10k-firmware-qca4019-ct is not set # CONFIG_PACKAGE_ath10k-firmware-qca4019-ct-htt is not set # CONFIG_PACKAGE_ath10k-firmware-qca6174 is not set # CONFIG_PACKAGE_ath10k-firmware-qca9887 is not set # CONFIG_PACKAGE_ath10k-firmware-qca9887-ct is not set # CONFIG_PACKAGE_ath10k-firmware-qca9887-ct-htt is not set # CONFIG_PACKAGE_ath10k-firmware-qca9888 is not set # CONFIG_PACKAGE_ath10k-firmware-qca9888-ct is not set # CONFIG_PACKAGE_ath10k-firmware-qca9888-ct-htt is not set CONFIG_PACKAGE_ath10k-firmware-qca988x=y # CONFIG_PACKAGE_ath10k-firmware-qca988x-ct is not set # CONFIG_PACKAGE_ath10k-firmware-qca988x-ct-htt is not set # CONFIG_PACKAGE_ath10k-firmware-qca9984 is not set # CONFIG_PACKAGE_ath10k-firmware-qca9984-ct is not set # CONFIG_PACKAGE_ath10k-firmware-qca9984-ct-htt is not set # CONFIG_PACKAGE_ath10k-firmware-qca99x0 is not set # CONFIG_PACKAGE_ath10k-firmware-qca99x0-ct is not set # CONFIG_PACKAGE_ath10k-firmware-qca99x0-ct-htt is not set # CONFIG_PACKAGE_ath6k-firmware is not set # CONFIG_PACKAGE_ath9k-htc-firmware is not set # CONFIG_PACKAGE_b43legacy-firmware is not set # CONFIG_PACKAGE_bnx2-firmware is not set # CONFIG_PACKAGE_bnx2x-firmware is not set # CONFIG_PACKAGE_brcmfmac-firmware-4329-sdio is not set # CONFIG_PACKAGE_brcmfmac-firmware-43362-sdio is not set # CONFIG_PACKAGE_brcmfmac-firmware-43430-sdio is not set # CONFIG_PACKAGE_brcmfmac-firmware-43430-sdio-rpi-3b is not set # CONFIG_PACKAGE_brcmfmac-firmware-43430-sdio-rpi-zero-w is not set # CONFIG_PACKAGE_brcmfmac-firmware-43430a0-sdio is not set # CONFIG_PACKAGE_brcmfmac-firmware-43455-sdio is not set # CONFIG_PACKAGE_brcmfmac-firmware-43455-sdio-rpi-3b-plus is not set # CONFIG_PACKAGE_brcmfmac-firmware-43455-sdio-rpi-4b is not set # CONFIG_PACKAGE_brcmfmac-firmware-43602a1-pcie is not set # CONFIG_PACKAGE_brcmfmac-firmware-4366b1-pcie is not set # CONFIG_PACKAGE_brcmfmac-firmware-4366c0-pcie is not set # CONFIG_PACKAGE_brcmfmac-firmware-usb is not set # CONFIG_PACKAGE_brcmsmac-firmware is not set # CONFIG_PACKAGE_carl9170-firmware is not set # CONFIG_PACKAGE_cypress-firmware-43012-sdio is not set # CONFIG_PACKAGE_cypress-firmware-43340-sdio is not set # CONFIG_PACKAGE_cypress-firmware-43362-sdio is not set # CONFIG_PACKAGE_cypress-firmware-4339-sdio is not set # CONFIG_PACKAGE_cypress-firmware-43430-sdio is not set # CONFIG_PACKAGE_cypress-firmware-43455-sdio is not set # CONFIG_PACKAGE_cypress-firmware-4354-sdio is not set # CONFIG_PACKAGE_cypress-firmware-4356-pcie is not set # CONFIG_PACKAGE_cypress-firmware-4356-sdio is not set # CONFIG_PACKAGE_cypress-firmware-43570-pcie is not set # CONFIG_PACKAGE_cypress-firmware-4359-pcie is not set # CONFIG_PACKAGE_cypress-firmware-4359-sdio is not set # CONFIG_PACKAGE_cypress-firmware-4373-sdio is not set # CONFIG_PACKAGE_cypress-firmware-4373-usb is not set # CONFIG_PACKAGE_cypress-firmware-89459-pcie is not set # CONFIG_PACKAGE_e100-firmware is not set # CONFIG_PACKAGE_edgeport-firmware is not set # CONFIG_PACKAGE_ibt-firmware is not set # CONFIG_PACKAGE_iwl3945-firmware is not set # CONFIG_PACKAGE_iwl4965-firmware is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl100 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl1000 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl105 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl135 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl2000 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl2030 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl3160 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl3168 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl5000 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl5150 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl6000g2 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl6000g2a is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl6000g2b is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl6050 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl7260 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl7265 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl7265d is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl8260c is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl8265 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl9000 is not set # CONFIG_PACKAGE_iwlwifi-firmware-iwl9260 is not set # CONFIG_PACKAGE_libertas-sdio-firmware is not set # CONFIG_PACKAGE_libertas-spi-firmware is not set # CONFIG_PACKAGE_libertas-usb-firmware is not set # CONFIG_PACKAGE_mt7601u-firmware is not set # CONFIG_PACKAGE_mt7622bt-firmware is not set # CONFIG_PACKAGE_mwifiex-pcie-firmware is not set # CONFIG_PACKAGE_mwifiex-sdio-firmware is not set # CONFIG_PACKAGE_mwl8k-firmware is not set # CONFIG_PACKAGE_p54-pci-firmware is not set # CONFIG_PACKAGE_p54-spi-firmware is not set # CONFIG_PACKAGE_p54-usb-firmware is not set # CONFIG_PACKAGE_prism54-firmware is not set # CONFIG_PACKAGE_r8169-firmware is not set # CONFIG_PACKAGE_radeon-firmware is not set # CONFIG_PACKAGE_rs9113-firmware is not set # CONFIG_PACKAGE_rt2800-pci-firmware is not set # CONFIG_PACKAGE_rt2800-usb-firmware is not set # CONFIG_PACKAGE_rt61-pci-firmware is not set # CONFIG_PACKAGE_rt73-usb-firmware is not set # CONFIG_PACKAGE_rtl8188eu-firmware is not set # CONFIG_PACKAGE_rtl8192ce-firmware is not set # CONFIG_PACKAGE_rtl8192cu-firmware is not set # CONFIG_PACKAGE_rtl8192de-firmware is not set # CONFIG_PACKAGE_rtl8192eu-firmware is not set # CONFIG_PACKAGE_rtl8192se-firmware is not set # CONFIG_PACKAGE_rtl8192su-firmware is not set # CONFIG_PACKAGE_rtl8723au-firmware is not set # CONFIG_PACKAGE_rtl8723bs-firmware is not set # CONFIG_PACKAGE_rtl8723bu-firmware is not set # CONFIG_PACKAGE_rtl8821ae-firmware is not set # CONFIG_PACKAGE_rtl8822be-firmware is not set # CONFIG_PACKAGE_rtl8822ce-firmware is not set # CONFIG_PACKAGE_ti-3410-firmware is not set # CONFIG_PACKAGE_ti-5052-firmware is not set CONFIG_PACKAGE_wireless-regdb=y # CONFIG_PACKAGE_wl12xx-firmware is not set # CONFIG_PACKAGE_wl18xx-firmware is not set # # Fonts # # # DejaVu # # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuMathTeXGyre is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSans is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSans-Bold is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSans-BoldOblique is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSans-ExtraLight is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSans-Oblique is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSansCondensed is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSansCondensed-Bold is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSansCondensed-BoldOblique is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSansCondensed-Oblique is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSansMono is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSansMono-Bold is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSansMono-BoldOblique is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSansMono-Oblique is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSerif is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSerif-Bold is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSerif-BoldItalic is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSerif-Italic is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSerifCondensed is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSerifCondensed-Bold is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSerifCondensed-BoldItalic is not set # CONFIG_PACKAGE_dejavu-fonts-ttf-DejaVuSerifCondensed-Italic is not set # # Kernel modules # # # Block Devices # # CONFIG_PACKAGE_kmod-aoe is not set # CONFIG_PACKAGE_kmod-ata-core is not set # CONFIG_PACKAGE_kmod-block2mtd is not set # CONFIG_PACKAGE_kmod-dm is not set # CONFIG_PACKAGE_kmod-dm-raid is not set # CONFIG_PACKAGE_kmod-loop is not set # CONFIG_PACKAGE_kmod-md-mod is not set # CONFIG_PACKAGE_kmod-nbd is not set # CONFIG_PACKAGE_kmod-scsi-cdrom is not set # CONFIG_PACKAGE_kmod-scsi-core is not set # CONFIG_PACKAGE_kmod-scsi-generic is not set # CONFIG_PACKAGE_kmod-scsi-tape is not set # # CAN Support # # CONFIG_PACKAGE_kmod-can is not set # # Cryptographic API modules # CONFIG_PACKAGE_kmod-crypto-aead=y CONFIG_PACKAGE_kmod-crypto-arc4=y CONFIG_PACKAGE_kmod-crypto-authenc=y # CONFIG_PACKAGE_kmod-crypto-cbc is not set # CONFIG_PACKAGE_kmod-crypto-ccm is not set # CONFIG_PACKAGE_kmod-crypto-cmac is not set CONFIG_PACKAGE_kmod-crypto-crc32c=y # CONFIG_PACKAGE_kmod-crypto-ctr is not set # CONFIG_PACKAGE_kmod-crypto-cts is not set # CONFIG_PACKAGE_kmod-crypto-deflate is not set # CONFIG_PACKAGE_kmod-crypto-des is not set CONFIG_PACKAGE_kmod-crypto-ecb=y # CONFIG_PACKAGE_kmod-crypto-ecdh is not set # CONFIG_PACKAGE_kmod-crypto-echainiv is not set # CONFIG_PACKAGE_kmod-crypto-fcrypt is not set # CONFIG_PACKAGE_kmod-crypto-gcm is not set # CONFIG_PACKAGE_kmod-crypto-gf128 is not set # CONFIG_PACKAGE_kmod-crypto-ghash is not set CONFIG_PACKAGE_kmod-crypto-hash=y # CONFIG_PACKAGE_kmod-crypto-hmac is not set # CONFIG_PACKAGE_kmod-crypto-hw-ccp is not set # CONFIG_PACKAGE_kmod-crypto-hw-geode is not set # CONFIG_PACKAGE_kmod-crypto-hw-hifn-795x is not set # CONFIG_PACKAGE_kmod-crypto-hw-padlock is not set # CONFIG_PACKAGE_kmod-crypto-hw-talitos is not set CONFIG_PACKAGE_kmod-crypto-manager=y # CONFIG_PACKAGE_kmod-crypto-md4 is not set # CONFIG_PACKAGE_kmod-crypto-md5 is not set # CONFIG_PACKAGE_kmod-crypto-michael-mic is not set # CONFIG_PACKAGE_kmod-crypto-misc is not set CONFIG_PACKAGE_kmod-crypto-null=y # CONFIG_PACKAGE_kmod-crypto-pcbc is not set CONFIG_PACKAGE_kmod-crypto-pcompress=y # CONFIG_PACKAGE_kmod-crypto-rmd160 is not set # CONFIG_PACKAGE_kmod-crypto-rng is not set # CONFIG_PACKAGE_kmod-crypto-seqiv is not set CONFIG_PACKAGE_kmod-crypto-sha1=y # CONFIG_PACKAGE_kmod-crypto-sha256 is not set # CONFIG_PACKAGE_kmod-crypto-sha512 is not set # CONFIG_PACKAGE_kmod-crypto-test is not set # CONFIG_PACKAGE_kmod-crypto-user is not set # CONFIG_PACKAGE_kmod-crypto-wq is not set # CONFIG_PACKAGE_kmod-crypto-xcbc is not set # CONFIG_PACKAGE_kmod-crypto-xts is not set CONFIG_PACKAGE_kmod-cryptodev=y # # Filesystems # # CONFIG_PACKAGE_kmod-fs-afs is not set # CONFIG_PACKAGE_kmod-fs-antfs is not set # CONFIG_PACKAGE_kmod-fs-autofs4 is not set # CONFIG_PACKAGE_kmod-fs-btrfs is not set # CONFIG_PACKAGE_kmod-fs-cifs is not set # CONFIG_PACKAGE_kmod-fs-configfs is not set # CONFIG_PACKAGE_kmod-fs-cramfs is not set # CONFIG_PACKAGE_kmod-fs-exfat is not set # CONFIG_PACKAGE_kmod-fs-exportfs is not set # CONFIG_PACKAGE_kmod-fs-ext4 is not set # CONFIG_PACKAGE_kmod-fs-f2fs is not set # CONFIG_PACKAGE_kmod-fs-fscache is not set # CONFIG_PACKAGE_kmod-fs-hfs is not set # CONFIG_PACKAGE_kmod-fs-hfsplus is not set # CONFIG_PACKAGE_kmod-fs-isofs is not set # CONFIG_PACKAGE_kmod-fs-jfs is not set # CONFIG_PACKAGE_kmod-fs-ksmbd is not set # CONFIG_PACKAGE_kmod-fs-minix is not set # CONFIG_PACKAGE_kmod-fs-msdos is not set # CONFIG_PACKAGE_kmod-fs-nfs is not set # CONFIG_PACKAGE_kmod-fs-nfs-common is not set # CONFIG_PACKAGE_kmod-fs-nfs-common-rpcsec is not set # CONFIG_PACKAGE_kmod-fs-nfs-v3 is not set # CONFIG_PACKAGE_kmod-fs-nfs-v4 is not set # CONFIG_PACKAGE_kmod-fs-nfsd is not set # CONFIG_PACKAGE_kmod-fs-ntfs is not set # CONFIG_PACKAGE_kmod-fs-reiserfs is not set # CONFIG_PACKAGE_kmod-fs-squashfs is not set # CONFIG_PACKAGE_kmod-fs-udf is not set # CONFIG_PACKAGE_kmod-fs-vfat is not set # CONFIG_PACKAGE_kmod-fs-xfs is not set # CONFIG_PACKAGE_kmod-fuse is not set # # FireWire support # # CONFIG_PACKAGE_kmod-firewire is not set # # Hardware Monitoring Support # CONFIG_PACKAGE_kmod-hwmon-core=y # CONFIG_PACKAGE_kmod-hwmon-adcxx is not set # CONFIG_PACKAGE_kmod-hwmon-ads1015 is not set # CONFIG_PACKAGE_kmod-hwmon-adt7410 is not set # CONFIG_PACKAGE_kmod-hwmon-adt7475 is not set # CONFIG_PACKAGE_kmod-hwmon-gpiofan is not set # CONFIG_PACKAGE_kmod-hwmon-ina209 is not set # CONFIG_PACKAGE_kmod-hwmon-ina2xx is not set # CONFIG_PACKAGE_kmod-hwmon-it87 is not set # CONFIG_PACKAGE_kmod-hwmon-lm63 is not set # CONFIG_PACKAGE_kmod-hwmon-lm75 is not set # CONFIG_PACKAGE_kmod-hwmon-lm77 is not set # CONFIG_PACKAGE_kmod-hwmon-lm85 is not set # CONFIG_PACKAGE_kmod-hwmon-lm90 is not set # CONFIG_PACKAGE_kmod-hwmon-lm92 is not set # CONFIG_PACKAGE_kmod-hwmon-lm95241 is not set # CONFIG_PACKAGE_kmod-hwmon-ltc4151 is not set # CONFIG_PACKAGE_kmod-hwmon-mcp3021 is not set # CONFIG_PACKAGE_kmod-hwmon-pwmfan is not set # CONFIG_PACKAGE_kmod-hwmon-sch5627 is not set # CONFIG_PACKAGE_kmod-hwmon-sht21 is not set # CONFIG_PACKAGE_kmod-hwmon-tmp102 is not set # CONFIG_PACKAGE_kmod-hwmon-tmp103 is not set # CONFIG_PACKAGE_kmod-hwmon-tmp421 is not set # CONFIG_PACKAGE_kmod-hwmon-vid is not set # CONFIG_PACKAGE_kmod-hwmon-w83793 is not set # CONFIG_PACKAGE_kmod-pmbus-core is not set # CONFIG_PACKAGE_kmod-pmbus-zl6100 is not set # # I2C support # # CONFIG_PACKAGE_kmod-i2c-core is not set # CONFIG_PACKAGE_kmod-i2c-gpio-custom is not set # # Industrial I/O Modules # # CONFIG_PACKAGE_kmod-iio-ad799x is not set # CONFIG_PACKAGE_kmod-iio-am2315 is not set # CONFIG_PACKAGE_kmod-iio-bh1750 is not set # CONFIG_PACKAGE_kmod-iio-bme680 is not set # CONFIG_PACKAGE_kmod-iio-bme680-i2c is not set # CONFIG_PACKAGE_kmod-iio-bme680-spi is not set # CONFIG_PACKAGE_kmod-iio-bmp280 is not set # CONFIG_PACKAGE_kmod-iio-bmp280-i2c is not set # CONFIG_PACKAGE_kmod-iio-bmp280-spi is not set # CONFIG_PACKAGE_kmod-iio-ccs811 is not set # CONFIG_PACKAGE_kmod-iio-core is not set # CONFIG_PACKAGE_kmod-iio-fxos8700 is not set # CONFIG_PACKAGE_kmod-iio-fxos8700-i2c is not set # CONFIG_PACKAGE_kmod-iio-fxos8700-spi is not set # CONFIG_PACKAGE_kmod-iio-hmc5843 is not set # CONFIG_PACKAGE_kmod-iio-htu21 is not set # CONFIG_PACKAGE_kmod-iio-kfifo-buf is not set # CONFIG_PACKAGE_kmod-iio-si7020 is not set # CONFIG_PACKAGE_kmod-iio-sps30 is not set # CONFIG_PACKAGE_kmod-iio-st_accel is not set # CONFIG_PACKAGE_kmod-iio-st_sensors-i2c is not set # CONFIG_PACKAGE_kmod-iio-st_sensors-spi is not set # CONFIG_PACKAGE_kmod-iio-tsl4531 is not set # CONFIG_PACKAGE_kmod-industrialio-triggered-buffer is not set # # Input modules # # CONFIG_PACKAGE_kmod-hid is not set # CONFIG_PACKAGE_kmod-hid-generic is not set # CONFIG_PACKAGE_kmod-input-core is not set # CONFIG_PACKAGE_kmod-input-evdev is not set # CONFIG_PACKAGE_kmod-input-gpio-encoder is not set # CONFIG_PACKAGE_kmod-input-gpio-keys is not set # CONFIG_PACKAGE_kmod-input-gpio-keys-polled is not set # CONFIG_PACKAGE_kmod-input-joydev is not set # CONFIG_PACKAGE_kmod-input-matrixkmap is not set # CONFIG_PACKAGE_kmod-input-polldev is not set # CONFIG_PACKAGE_kmod-input-touchscreen-ads7846 is not set # CONFIG_PACKAGE_kmod-input-uinput is not set # # LED modules # # CONFIG_PACKAGE_kmod-leds-gpio is not set # CONFIG_PACKAGE_kmod-leds-nu801 is not set # CONFIG_PACKAGE_kmod-leds-pca963x is not set # CONFIG_PACKAGE_kmod-leds-rb750 is not set # CONFIG_PACKAGE_kmod-leds-wndr3700-usb is not set # CONFIG_PACKAGE_kmod-ledtrig-default-on is not set # CONFIG_PACKAGE_kmod-ledtrig-gpio is not set # CONFIG_PACKAGE_kmod-ledtrig-heartbeat is not set # CONFIG_PACKAGE_kmod-ledtrig-netdev is not set # CONFIG_PACKAGE_kmod-ledtrig-oneshot is not set # CONFIG_PACKAGE_kmod-ledtrig-timer is not set # CONFIG_PACKAGE_kmod-ledtrig-transient is not set # # Libraries # # CONFIG_PACKAGE_kmod-lib-cordic is not set CONFIG_PACKAGE_kmod-lib-crc-ccitt=y # CONFIG_PACKAGE_kmod-lib-crc-itu-t is not set # CONFIG_PACKAGE_kmod-lib-crc16 is not set CONFIG_PACKAGE_kmod-lib-crc32c=y # CONFIG_PACKAGE_kmod-lib-crc7 is not set # CONFIG_PACKAGE_kmod-lib-crc8 is not set CONFIG_PACKAGE_kmod-lib-textsearch=y # # Native Language Support # CONFIG_PACKAGE_kmod-nls-base=y # CONFIG_PACKAGE_kmod-nls-cp1250 is not set # CONFIG_PACKAGE_kmod-nls-cp1251 is not set # CONFIG_PACKAGE_kmod-nls-cp437 is not set # CONFIG_PACKAGE_kmod-nls-cp775 is not set # CONFIG_PACKAGE_kmod-nls-cp850 is not set # CONFIG_PACKAGE_kmod-nls-cp852 is not set # CONFIG_PACKAGE_kmod-nls-cp862 is not set # CONFIG_PACKAGE_kmod-nls-cp864 is not set # CONFIG_PACKAGE_kmod-nls-cp866 is not set # CONFIG_PACKAGE_kmod-nls-cp932 is not set # CONFIG_PACKAGE_kmod-nls-cp936 is not set # CONFIG_PACKAGE_kmod-nls-cp950 is not set # CONFIG_PACKAGE_kmod-nls-iso8859-1 is not set # CONFIG_PACKAGE_kmod-nls-iso8859-13 is not set # CONFIG_PACKAGE_kmod-nls-iso8859-15 is not set # CONFIG_PACKAGE_kmod-nls-iso8859-2 is not set # CONFIG_PACKAGE_kmod-nls-iso8859-6 is not set # CONFIG_PACKAGE_kmod-nls-iso8859-8 is not set # CONFIG_PACKAGE_kmod-nls-koi8r is not set # CONFIG_PACKAGE_kmod-nls-utf8 is not set # # Netfilter Extensions # # CONFIG_PACKAGE_kmod-arptables is not set # CONFIG_PACKAGE_kmod-br-netfilter is not set # CONFIG_PACKAGE_kmod-ebtables is not set # CONFIG_PACKAGE_kmod-ebtables-ipv4 is not set # CONFIG_PACKAGE_kmod-ebtables-ipv6 is not set # CONFIG_PACKAGE_kmod-ebtables-watchers is not set # CONFIG_PACKAGE_kmod-ip6tables is not set # CONFIG_PACKAGE_kmod-ip6tables-extra is not set # CONFIG_PACKAGE_kmod-ipt-account is not set # CONFIG_PACKAGE_kmod-ipt-chaos is not set # CONFIG_PACKAGE_kmod-ipt-checksum is not set # CONFIG_PACKAGE_kmod-ipt-cluster is not set # CONFIG_PACKAGE_kmod-ipt-clusterip is not set # CONFIG_PACKAGE_kmod-ipt-compat-xtables is not set # CONFIG_PACKAGE_kmod-ipt-condition is not set CONFIG_PACKAGE_kmod-ipt-conntrack=y # CONFIG_PACKAGE_kmod-ipt-conntrack-extra is not set # CONFIG_PACKAGE_kmod-ipt-conntrack-label is not set CONFIG_PACKAGE_kmod-ipt-core=y # CONFIG_PACKAGE_kmod-ipt-debug is not set # CONFIG_PACKAGE_kmod-ipt-delude is not set # CONFIG_PACKAGE_kmod-ipt-dhcpmac is not set # CONFIG_PACKAGE_kmod-ipt-dnetmap is not set # CONFIG_PACKAGE_kmod-ipt-extra is not set # CONFIG_PACKAGE_kmod-ipt-filter is not set CONFIG_PACKAGE_kmod-ipt-fullconenat=y # CONFIG_PACKAGE_kmod-ipt-fuzzy is not set # CONFIG_PACKAGE_kmod-ipt-geoip is not set # CONFIG_PACKAGE_kmod-ipt-hashlimit is not set # CONFIG_PACKAGE_kmod-ipt-iface is not set # CONFIG_PACKAGE_kmod-ipt-ipmark is not set # CONFIG_PACKAGE_kmod-ipt-ipopt is not set # CONFIG_PACKAGE_kmod-ipt-ipp2p is not set # CONFIG_PACKAGE_kmod-ipt-iprange is not set # CONFIG_PACKAGE_kmod-ipt-ipsec is not set CONFIG_PACKAGE_kmod-ipt-ipset=y # CONFIG_PACKAGE_kmod-ipt-ipv4options is not set # CONFIG_PACKAGE_kmod-ipt-led is not set # CONFIG_PACKAGE_kmod-ipt-length2 is not set # CONFIG_PACKAGE_kmod-ipt-logmark is not set # CONFIG_PACKAGE_kmod-ipt-lscan is not set # CONFIG_PACKAGE_kmod-ipt-lua is not set CONFIG_PACKAGE_kmod-ipt-nat=y # CONFIG_PACKAGE_kmod-ipt-nat-extra is not set # CONFIG_PACKAGE_kmod-ipt-nat6 is not set # CONFIG_PACKAGE_kmod-ipt-nathelper-rtsp is not set # CONFIG_PACKAGE_kmod-ipt-nflog is not set # CONFIG_PACKAGE_kmod-ipt-nfqueue is not set # CONFIG_PACKAGE_kmod-ipt-physdev is not set # CONFIG_PACKAGE_kmod-ipt-psd is not set # CONFIG_PACKAGE_kmod-ipt-quota2 is not set CONFIG_PACKAGE_kmod-ipt-raw=y # CONFIG_PACKAGE_kmod-ipt-raw6 is not set # CONFIG_PACKAGE_kmod-ipt-rpfilter is not set # CONFIG_PACKAGE_kmod-ipt-sysrq is not set # CONFIG_PACKAGE_kmod-ipt-tarpit is not set # CONFIG_PACKAGE_kmod-ipt-tee is not set # CONFIG_PACKAGE_kmod-ipt-tproxy is not set # CONFIG_PACKAGE_kmod-ipt-u32 is not set # CONFIG_PACKAGE_kmod-ipt-ulog is not set CONFIG_PACKAGE_kmod-nf-conntrack=y CONFIG_PACKAGE_kmod-nf-conntrack-netlink=y CONFIG_PACKAGE_kmod-nf-conntrack6=y CONFIG_PACKAGE_kmod-nf-ipt=y # CONFIG_PACKAGE_kmod-nf-ipt6 is not set # CONFIG_PACKAGE_kmod-nf-ipvs is not set CONFIG_PACKAGE_kmod-nf-nat=y # CONFIG_PACKAGE_kmod-nf-nat6 is not set CONFIG_PACKAGE_kmod-nf-nathelper=y CONFIG_PACKAGE_kmod-nf-nathelper-extra=y CONFIG_PACKAGE_kmod-nf-reject=y # CONFIG_PACKAGE_kmod-nf-reject6 is not set CONFIG_PACKAGE_kmod-nfnetlink=y # CONFIG_PACKAGE_kmod-nfnetlink-log is not set # CONFIG_PACKAGE_kmod-nfnetlink-queue is not set # CONFIG_PACKAGE_kmod-nft-arp is not set # CONFIG_PACKAGE_kmod-nft-bridge is not set # CONFIG_PACKAGE_kmod-nft-core is not set # CONFIG_PACKAGE_kmod-nft-fib is not set # CONFIG_PACKAGE_kmod-nft-nat is not set # CONFIG_PACKAGE_kmod-nft-nat6 is not set # CONFIG_PACKAGE_kmod-nft-netdev is not set # # Network Devices # # CONFIG_PACKAGE_kmod-3c59x is not set # CONFIG_PACKAGE_kmod-8139cp is not set # CONFIG_PACKAGE_kmod-8139too is not set # CONFIG_PACKAGE_kmod-alx is not set # CONFIG_PACKAGE_kmod-atl1 is not set # CONFIG_PACKAGE_kmod-atl1c is not set # CONFIG_PACKAGE_kmod-atl1e is not set # CONFIG_PACKAGE_kmod-atl2 is not set # CONFIG_PACKAGE_kmod-b44 is not set # CONFIG_PACKAGE_kmod-be2net is not set # CONFIG_PACKAGE_kmod-bnx2 is not set # CONFIG_PACKAGE_kmod-bnx2x is not set # CONFIG_PACKAGE_kmod-dm9000 is not set # CONFIG_PACKAGE_kmod-dummy is not set # CONFIG_PACKAGE_kmod-e100 is not set # CONFIG_PACKAGE_kmod-e1000 is not set # CONFIG_PACKAGE_kmod-et131x is not set # CONFIG_PACKAGE_kmod-ethoc is not set # CONFIG_PACKAGE_kmod-forcedeth is not set # CONFIG_PACKAGE_kmod-gigaset is not set # CONFIG_PACKAGE_kmod-hfcmulti is not set # CONFIG_PACKAGE_kmod-hfcpci is not set # CONFIG_PACKAGE_kmod-i40e is not set # CONFIG_PACKAGE_kmod-i40evf is not set # CONFIG_PACKAGE_kmod-ifb is not set # CONFIG_PACKAGE_kmod-igb is not set # CONFIG_PACKAGE_kmod-ixgbe is not set # CONFIG_PACKAGE_kmod-ixgbevf is not set # CONFIG_PACKAGE_kmod-libphy is not set CONFIG_PACKAGE_kmod-macvlan=y # CONFIG_PACKAGE_kmod-mdio-gpio is not set # CONFIG_PACKAGE_kmod-mii is not set # CONFIG_PACKAGE_kmod-mlx4-core is not set # CONFIG_PACKAGE_kmod-mlx5-core is not set # CONFIG_PACKAGE_kmod-natsemi is not set # CONFIG_PACKAGE_kmod-ne2k-pci is not set # CONFIG_PACKAGE_kmod-niu is not set # CONFIG_PACKAGE_kmod-of-mdio is not set # CONFIG_PACKAGE_kmod-pcnet32 is not set # CONFIG_PACKAGE_kmod-phy-broadcom is not set # CONFIG_PACKAGE_kmod-phy-realtek is not set # CONFIG_PACKAGE_kmod-r6040 is not set # CONFIG_PACKAGE_kmod-r8125 is not set # CONFIG_PACKAGE_kmod-r8168 is not set # CONFIG_PACKAGE_kmod-r8169 is not set # CONFIG_PACKAGE_kmod-sfc is not set # CONFIG_PACKAGE_kmod-siit is not set # CONFIG_PACKAGE_kmod-sis190 is not set # CONFIG_PACKAGE_kmod-sis900 is not set # CONFIG_PACKAGE_kmod-skge is not set # CONFIG_PACKAGE_kmod-sky2 is not set # CONFIG_PACKAGE_kmod-solos-pci is not set # CONFIG_PACKAGE_kmod-spi-ks8995 is not set # CONFIG_PACKAGE_kmod-swconfig is not set # CONFIG_PACKAGE_kmod-switch-ip17xx is not set # CONFIG_PACKAGE_kmod-switch-mvsw61xx is not set # CONFIG_PACKAGE_kmod-switch-rtl8306 is not set # CONFIG_PACKAGE_kmod-switch-rtl8366-smi is not set # CONFIG_PACKAGE_kmod-switch-rtl8366rb is not set # CONFIG_PACKAGE_kmod-switch-rtl8366s is not set # CONFIG_PACKAGE_kmod-switch-rtl8367b is not set # CONFIG_PACKAGE_kmod-tg3 is not set # CONFIG_PACKAGE_kmod-tulip is not set # CONFIG_PACKAGE_kmod-via-rhine is not set # CONFIG_PACKAGE_kmod-via-velocity is not set # CONFIG_PACKAGE_kmod-vmxnet3 is not set # # Network Support # # CONFIG_PACKAGE_kmod-atm is not set # CONFIG_PACKAGE_kmod-ax25 is not set # CONFIG_PACKAGE_kmod-batman-adv is not set # CONFIG_PACKAGE_kmod-bonding is not set # CONFIG_PACKAGE_kmod-bpf-test is not set # CONFIG_PACKAGE_kmod-capi is not set # CONFIG_PACKAGE_kmod-dnsresolver is not set CONFIG_PACKAGE_kmod-fast-classifier=y # CONFIG_PACKAGE_kmod-fou is not set # CONFIG_PACKAGE_kmod-fou6 is not set # CONFIG_PACKAGE_kmod-geneve is not set # CONFIG_PACKAGE_kmod-gre is not set # CONFIG_PACKAGE_kmod-gre6 is not set # CONFIG_PACKAGE_kmod-ip6-tunnel is not set # CONFIG_PACKAGE_kmod-ipip is not set # CONFIG_PACKAGE_kmod-ipsec is not set # CONFIG_PACKAGE_kmod-iptunnel6 is not set # CONFIG_PACKAGE_kmod-isdn4linux is not set # CONFIG_PACKAGE_kmod-jool is not set # CONFIG_PACKAGE_kmod-l2tp is not set # CONFIG_PACKAGE_kmod-l2tp-eth is not set # CONFIG_PACKAGE_kmod-l2tp-ip is not set # CONFIG_PACKAGE_kmod-macremapper is not set # CONFIG_PACKAGE_kmod-macsec is not set # CONFIG_PACKAGE_kmod-misdn is not set # CONFIG_PACKAGE_kmod-mpls is not set # CONFIG_PACKAGE_kmod-nat46 is not set # CONFIG_PACKAGE_kmod-netem is not set # CONFIG_PACKAGE_kmod-nlmon is not set # CONFIG_PACKAGE_kmod-nsh is not set # CONFIG_PACKAGE_kmod-openvswitch is not set # CONFIG_PACKAGE_kmod-openvswitch-geneve is not set # CONFIG_PACKAGE_kmod-openvswitch-gre is not set # CONFIG_PACKAGE_kmod-openvswitch-vxlan is not set # CONFIG_PACKAGE_kmod-pktgen is not set CONFIG_PACKAGE_kmod-ppp=y CONFIG_PACKAGE_kmod-mppe=y # CONFIG_PACKAGE_kmod-ppp-synctty is not set # CONFIG_PACKAGE_kmod-pppoa is not set CONFIG_PACKAGE_kmod-pppoe=y # CONFIG_PACKAGE_kmod-pppol2tp is not set CONFIG_PACKAGE_kmod-pppox=y # CONFIG_PACKAGE_kmod-pptp is not set CONFIG_PACKAGE_kmod-sched=y # CONFIG_PACKAGE_kmod-sched-act-vlan is not set # CONFIG_PACKAGE_kmod-sched-bpf is not set # CONFIG_PACKAGE_kmod-sched-cake is not set # CONFIG_PACKAGE_kmod-sched-connmark is not set CONFIG_PACKAGE_kmod-sched-core=y # CONFIG_PACKAGE_kmod-sched-ctinfo is not set # CONFIG_PACKAGE_kmod-sched-flower is not set # CONFIG_PACKAGE_kmod-sched-ipset is not set # CONFIG_PACKAGE_kmod-sched-mqprio is not set # CONFIG_PACKAGE_kmod-sctp is not set CONFIG_PACKAGE_kmod-shortcut-fe=y # CONFIG_PACKAGE_kmod-shortcut-fe-cm is not set # CONFIG_PACKAGE_kmod-sit is not set CONFIG_PACKAGE_kmod-slhc=y # CONFIG_PACKAGE_kmod-slip is not set CONFIG_PACKAGE_kmod-tcp-bbr=y # CONFIG_PACKAGE_kmod-trelay is not set # CONFIG_PACKAGE_kmod-tun is not set # CONFIG_PACKAGE_kmod-veth is not set # CONFIG_PACKAGE_kmod-vxlan is not set # CONFIG_PACKAGE_kmod-wireguard is not set # # Other modules # # CONFIG_PACKAGE_kmod-6lowpan is not set # CONFIG_PACKAGE_kmod-ath3k is not set # CONFIG_PACKAGE_kmod-bcma is not set # CONFIG_PACKAGE_kmod-bluetooth is not set # CONFIG_PACKAGE_kmod-bluetooth_6lowpan is not set # CONFIG_PACKAGE_kmod-bmp085 is not set # CONFIG_PACKAGE_kmod-bmp085-i2c is not set # CONFIG_PACKAGE_kmod-bmp085-spi is not set # CONFIG_PACKAGE_kmod-btmrvl is not set # CONFIG_PACKAGE_kmod-button-hotplug is not set # CONFIG_PACKAGE_kmod-echo is not set # CONFIG_PACKAGE_kmod-eeprom-93cx6 is not set # CONFIG_PACKAGE_kmod-eeprom-at24 is not set # CONFIG_PACKAGE_kmod-eeprom-at25 is not set # CONFIG_PACKAGE_kmod-gpio-beeper is not set CONFIG_PACKAGE_kmod-gpio-button-hotplug=y # CONFIG_PACKAGE_kmod-gpio-dev is not set # CONFIG_PACKAGE_kmod-gpio-mcp23s08 is not set # CONFIG_PACKAGE_kmod-gpio-nxp-74hc164 is not set # CONFIG_PACKAGE_kmod-gpio-pca953x is not set # CONFIG_PACKAGE_kmod-gpio-pcf857x is not set # CONFIG_PACKAGE_kmod-ikconfig is not set # CONFIG_PACKAGE_kmod-it87-wdt is not set # CONFIG_PACKAGE_kmod-itco-wdt is not set # CONFIG_PACKAGE_kmod-lp is not set # CONFIG_PACKAGE_kmod-mmc is not set # CONFIG_PACKAGE_kmod-mtd-rw is not set # CONFIG_PACKAGE_kmod-mtdoops is not set # CONFIG_PACKAGE_kmod-mtdram is not set # CONFIG_PACKAGE_kmod-mtdtests is not set # CONFIG_PACKAGE_kmod-parport-pc is not set # CONFIG_PACKAGE_kmod-ppdev is not set # CONFIG_PACKAGE_kmod-pps is not set # CONFIG_PACKAGE_kmod-pps-gpio is not set # CONFIG_PACKAGE_kmod-pps-ldisc is not set # CONFIG_PACKAGE_kmod-ptp is not set # CONFIG_PACKAGE_kmod-random-core is not set # CONFIG_PACKAGE_kmod-random-tpm is not set # CONFIG_PACKAGE_kmod-rtc-ds1307 is not set # CONFIG_PACKAGE_kmod-rtc-ds1374 is not set # CONFIG_PACKAGE_kmod-rtc-ds1672 is not set # CONFIG_PACKAGE_kmod-rtc-em3027 is not set # CONFIG_PACKAGE_kmod-rtc-isl1208 is not set # CONFIG_PACKAGE_kmod-rtc-pcf2123 is not set # CONFIG_PACKAGE_kmod-rtc-pcf2127 is not set # CONFIG_PACKAGE_kmod-rtc-pcf8563 is not set # CONFIG_PACKAGE_kmod-rtc-pt7c4338 is not set # CONFIG_PACKAGE_kmod-rtc-rs5c372a is not set # CONFIG_PACKAGE_kmod-rtc-rx8025 is not set # CONFIG_PACKAGE_kmod-sdhci is not set # CONFIG_PACKAGE_kmod-serial-8250 is not set # CONFIG_PACKAGE_kmod-serial-8250-exar is not set # CONFIG_PACKAGE_kmod-softdog is not set # CONFIG_PACKAGE_kmod-ssb is not set CONFIG_PACKAGE_kmod-thermal=y # CONFIG_PACKAGE_kmod-tpm is not set # CONFIG_PACKAGE_kmod-tpm-i2c-atmel is not set # CONFIG_PACKAGE_kmod-tpm-i2c-infineon is not set # CONFIG_PACKAGE_kmod-w83627hf-wdt is not set # CONFIG_PACKAGE_kmod-wifidog-ng is not set # CONFIG_PACKAGE_kmod-zram is not set # # PCMCIA support # # # SPI Support # # CONFIG_PACKAGE_kmod-mmc-spi is not set # CONFIG_PACKAGE_kmod-spi-bitbang is not set # CONFIG_PACKAGE_kmod-spi-dev is not set # CONFIG_PACKAGE_kmod-spi-gpio is not set # CONFIG_PACKAGE_kmod-spi-gpio-custom is not set # CONFIG_PACKAGE_kmod-spi-vsc7385 is not set # # Sound Support # # CONFIG_PACKAGE_kmod-sound-core is not set # # USB Support # # CONFIG_PACKAGE_kmod-chaoskey is not set # CONFIG_PACKAGE_kmod-usb-acm is not set # CONFIG_PACKAGE_kmod-usb-atm is not set # CONFIG_PACKAGE_kmod-usb-chipidea is not set # CONFIG_PACKAGE_kmod-usb-chipidea2 is not set # CONFIG_PACKAGE_kmod-usb-cm109 is not set CONFIG_PACKAGE_kmod-usb-core=y # CONFIG_PACKAGE_kmod-usb-dwc2 is not set # CONFIG_PACKAGE_kmod-usb-dwc3 is not set CONFIG_PACKAGE_kmod-usb-ehci=y # CONFIG_PACKAGE_kmod-usb-gadget-cdc-composite is not set # CONFIG_PACKAGE_kmod-usb-gadget-ehci-debug is not set # CONFIG_PACKAGE_kmod-usb-gadget-eth is not set # CONFIG_PACKAGE_kmod-usb-gadget-hid is not set # CONFIG_PACKAGE_kmod-usb-gadget-mass-storage is not set # CONFIG_PACKAGE_kmod-usb-gadget-serial is not set # CONFIG_PACKAGE_kmod-usb-hid is not set CONFIG_PACKAGE_kmod-usb-ledtrig-usbport=y # CONFIG_PACKAGE_kmod-usb-net is not set # CONFIG_PACKAGE_kmod-usb-net2280 is not set # CONFIG_PACKAGE_kmod-usb-ohci is not set # CONFIG_PACKAGE_kmod-usb-ohci-pci is not set # CONFIG_PACKAGE_kmod-usb-printer is not set # CONFIG_PACKAGE_kmod-usb-serial is not set # CONFIG_PACKAGE_kmod-usb-storage is not set # CONFIG_PACKAGE_kmod-usb-storage-extras is not set # CONFIG_PACKAGE_kmod-usb-storage-uas is not set # CONFIG_PACKAGE_kmod-usb-uhci is not set # CONFIG_PACKAGE_kmod-usb-wdm is not set # CONFIG_PACKAGE_kmod-usb-yealink is not set CONFIG_PACKAGE_kmod-usb2=y # CONFIG_PACKAGE_kmod-usb2-pci is not set # CONFIG_PACKAGE_kmod-usb3 is not set # CONFIG_PACKAGE_kmod-usbip is not set # CONFIG_PACKAGE_kmod-usbip-client is not set # CONFIG_PACKAGE_kmod-usbip-server is not set # CONFIG_PACKAGE_kmod-usbmon is not set # # Video Support # # CONFIG_PACKAGE_kmod-video-core is not set # # Virtualization # # # Voice over IP # # # W1 support # # CONFIG_PACKAGE_kmod-w1 is not set # # WPAN 802.15.4 Support # # CONFIG_PACKAGE_kmod-at86rf230 is not set # CONFIG_PACKAGE_kmod-atusb is not set # CONFIG_PACKAGE_kmod-cc2520 is not set # CONFIG_PACKAGE_kmod-fakelb is not set # CONFIG_PACKAGE_kmod-ieee802154 is not set # CONFIG_PACKAGE_kmod-ieee802154_6lowpan is not set # CONFIG_PACKAGE_kmod-mac802154 is not set # CONFIG_PACKAGE_kmod-mrf24j40 is not set # # Wireless Drivers # # CONFIG_PACKAGE_kmod-adm8211 is not set CONFIG_PACKAGE_kmod-ath=y CONFIG_ATH_USER_REGD=y # CONFIG_PACKAGE_ATH_DEBUG is not set CONFIG_PACKAGE_ATH_DFS=y # CONFIG_PACKAGE_ATH_DYNACK is not set CONFIG_PACKAGE_kmod-ath10k=y CONFIG_ATH10K_LEDS=y CONFIG_ATH10K_THERMAL=y # CONFIG_PACKAGE_kmod-ath10k-ct is not set # CONFIG_PACKAGE_kmod-ath10k-ct-smallbuffers is not set # CONFIG_PACKAGE_kmod-ath5k is not set # CONFIG_PACKAGE_kmod-ath6kl-sdio is not set # CONFIG_PACKAGE_kmod-ath6kl-usb is not set CONFIG_PACKAGE_kmod-ath9k=y # CONFIG_ATH9K_SUPPORT_PCOEM is not set # CONFIG_ATH9K_TX99 is not set CONFIG_ATH9K_UBNTHSR=y CONFIG_PACKAGE_kmod-ath9k-common=y # CONFIG_PACKAGE_kmod-ath9k-htc is not set # CONFIG_PACKAGE_kmod-b43 is not set # CONFIG_PACKAGE_kmod-b43legacy is not set # CONFIG_PACKAGE_kmod-brcmfmac is not set # CONFIG_PACKAGE_kmod-brcmsmac is not set # CONFIG_PACKAGE_kmod-brcmutil is not set # CONFIG_PACKAGE_kmod-carl9170 is not set CONFIG_PACKAGE_kmod-cfg80211=y # CONFIG_PACKAGE_kmod-hermes is not set # CONFIG_PACKAGE_kmod-hermes-pci is not set # CONFIG_PACKAGE_kmod-hermes-plx is not set # CONFIG_PACKAGE_kmod-iwl-legacy is not set # CONFIG_PACKAGE_kmod-iwl3945 is not set # CONFIG_PACKAGE_kmod-iwl4965 is not set # CONFIG_PACKAGE_kmod-iwlwifi is not set # CONFIG_PACKAGE_kmod-lib80211 is not set # CONFIG_PACKAGE_kmod-libertas-sdio is not set # CONFIG_PACKAGE_kmod-libertas-spi is not set # CONFIG_PACKAGE_kmod-libertas-usb is not set CONFIG_PACKAGE_kmod-mac80211=y CONFIG_PACKAGE_MAC80211_DEBUGFS=y # CONFIG_PACKAGE_MAC80211_TRACING is not set CONFIG_PACKAGE_MAC80211_MESH=y # CONFIG_PACKAGE_kmod-mac80211-hwsim is not set # CONFIG_PACKAGE_kmod-mt76 is not set # CONFIG_PACKAGE_kmod-mt7601u is not set # CONFIG_PACKAGE_kmod-mt7603 is not set # CONFIG_PACKAGE_kmod-mt7615e is not set # CONFIG_PACKAGE_kmod-mt76x0e is not set # CONFIG_PACKAGE_kmod-mt76x0u is not set # CONFIG_PACKAGE_kmod-mt76x2 is not set # CONFIG_PACKAGE_kmod-mt76x2u is not set # CONFIG_PACKAGE_kmod-mt_wifi is not set # CONFIG_PACKAGE_kmod-mwifiex-pcie is not set # CONFIG_PACKAGE_kmod-mwifiex-sdio is not set # CONFIG_PACKAGE_kmod-mwl8k is not set # CONFIG_PACKAGE_kmod-net-prism54 is not set # CONFIG_PACKAGE_kmod-net-rtl8192su is not set # CONFIG_PACKAGE_kmod-owl-loader is not set # CONFIG_PACKAGE_kmod-p54-common is not set # CONFIG_PACKAGE_kmod-p54-pci is not set # CONFIG_PACKAGE_kmod-p54-usb is not set # CONFIG_PACKAGE_kmod-rsi91x is not set # CONFIG_PACKAGE_kmod-rsi91x-sdio is not set # CONFIG_PACKAGE_kmod-rsi91x-usb is not set # CONFIG_PACKAGE_kmod-rt2400-pci is not set # CONFIG_PACKAGE_kmod-rt2500-pci is not set # CONFIG_PACKAGE_kmod-rt2500-usb is not set # CONFIG_PACKAGE_kmod-rt2800-pci is not set # CONFIG_PACKAGE_kmod-rt2800-usb is not set # CONFIG_PACKAGE_kmod-rt2x00-lib is not set # CONFIG_PACKAGE_kmod-rt61-pci is not set # CONFIG_PACKAGE_kmod-rt73-usb is not set # CONFIG_PACKAGE_kmod-rtl8180 is not set # CONFIG_PACKAGE_kmod-rtl8187 is not set # CONFIG_PACKAGE_kmod-rtl8192ce is not set # CONFIG_PACKAGE_kmod-rtl8192cu is not set # CONFIG_PACKAGE_kmod-rtl8192de is not set # CONFIG_PACKAGE_kmod-rtl8192se is not set # CONFIG_PACKAGE_kmod-rtl8821ae is not set # CONFIG_PACKAGE_kmod-rtl8xxxu is not set # CONFIG_PACKAGE_kmod-wl12xx is not set # CONFIG_PACKAGE_kmod-wl18xx is not set # CONFIG_PACKAGE_kmod-wlcore is not set # CONFIG_PACKAGE_kmod-zd1211rw is not set # CONFIG_PACKAGE_wifi-l1profile is not set # # Languages # # # Erlang # # CONFIG_PACKAGE_erlang is not set # CONFIG_PACKAGE_erlang-asn1 is not set # CONFIG_PACKAGE_erlang-compiler is not set # CONFIG_PACKAGE_erlang-crypto is not set # CONFIG_PACKAGE_erlang-hipe is not set # CONFIG_PACKAGE_erlang-inets is not set # CONFIG_PACKAGE_erlang-mnesia is not set # CONFIG_PACKAGE_erlang-runtime-tools is not set # CONFIG_PACKAGE_erlang-snmp is not set # CONFIG_PACKAGE_erlang-ssh is not set # CONFIG_PACKAGE_erlang-ssl is not set # CONFIG_PACKAGE_erlang-syntax-tools is not set # # Go # # CONFIG_PACKAGE_golang is not set # CONFIG_PACKAGE_golang-doc is not set # CONFIG_PACKAGE_golang-github-nextdns-nextdns-dev is not set # CONFIG_PACKAGE_golang-src is not set # # Java # # CONFIG_PACKAGE_jamvm is not set # # Lua # # CONFIG_PACKAGE_dkjson is not set # CONFIG_PACKAGE_json4lua is not set # CONFIG_PACKAGE_ldbus is not set CONFIG_PACKAGE_libiwinfo-lua=y # CONFIG_PACKAGE_lpeg is not set # CONFIG_PACKAGE_lsqlite3 is not set CONFIG_PACKAGE_lua=y # CONFIG_PACKAGE_lua-bencode is not set # CONFIG_PACKAGE_lua-cjson is not set # CONFIG_PACKAGE_lua-copas is not set # CONFIG_PACKAGE_lua-coxpcall is not set # CONFIG_PACKAGE_lua-examples is not set # CONFIG_PACKAGE_lua-lzlib is not set # CONFIG_PACKAGE_lua-md5 is not set # CONFIG_PACKAGE_lua-mobdebug is not set # CONFIG_PACKAGE_lua-mosquitto is not set # CONFIG_PACKAGE_lua-openssl is not set # CONFIG_PACKAGE_lua-penlight is not set # CONFIG_PACKAGE_lua-rings is not set # CONFIG_PACKAGE_lua-rs232 is not set # CONFIG_PACKAGE_lua-sha2 is not set # CONFIG_PACKAGE_lua-wsapi-base is not set # CONFIG_PACKAGE_lua-wsapi-xavante is not set # CONFIG_PACKAGE_lua-xavante is not set # CONFIG_PACKAGE_luabitop is not set # CONFIG_PACKAGE_luac is not set # CONFIG_PACKAGE_luaexpat is not set # CONFIG_PACKAGE_luafilesystem is not set # CONFIG_PACKAGE_luajit is not set # CONFIG_PACKAGE_lualanes is not set # CONFIG_PACKAGE_luaposix is not set # CONFIG_PACKAGE_luarocks is not set # CONFIG_PACKAGE_luasec is not set # CONFIG_PACKAGE_luasoap is not set # CONFIG_PACKAGE_luasocket is not set # CONFIG_PACKAGE_luasql-mysql is not set # CONFIG_PACKAGE_luasql-pgsql is not set # CONFIG_PACKAGE_luasql-sqlite3 is not set CONFIG_PACKAGE_luci-lib-fs=y # CONFIG_PACKAGE_luv is not set # CONFIG_PACKAGE_lzmq is not set # CONFIG_PACKAGE_uuid is not set # # Node.js # # CONFIG_PACKAGE_node is not set # CONFIG_PACKAGE_node-arduino-firmata is not set # CONFIG_PACKAGE_node-cylon is not set # CONFIG_PACKAGE_node-cylon-firmata is not set # CONFIG_PACKAGE_node-cylon-gpio is not set # CONFIG_PACKAGE_node-cylon-i2c is not set # CONFIG_PACKAGE_node-hid is not set # CONFIG_PACKAGE_node-homebridge is not set # CONFIG_PACKAGE_node-javascript-obfuscator is not set # CONFIG_PACKAGE_node-npm is not set # CONFIG_PACKAGE_node-serialport is not set # CONFIG_PACKAGE_node-serialport-bindings is not set # # PHP # # CONFIG_PACKAGE_php7 is not set # # Perl # # CONFIG_PACKAGE_perl is not set # # Python # # CONFIG_PACKAGE_gunicorn is not set # CONFIG_PACKAGE_gunicorn3 is not set # CONFIG_PACKAGE_micropython is not set # CONFIG_PACKAGE_micropython-lib is not set # CONFIG_PACKAGE_python is not set # CONFIG_PACKAGE_python-astral is not set # CONFIG_PACKAGE_python-astral-src is not set # CONFIG_PACKAGE_python-attrs is not set # CONFIG_PACKAGE_python-attrs-src is not set # CONFIG_PACKAGE_python-automat is not set # CONFIG_PACKAGE_python-automat-src is not set # CONFIG_PACKAGE_python-awscli is not set # CONFIG_PACKAGE_python-awscli-src is not set # CONFIG_PACKAGE_python-base is not set # CONFIG_PACKAGE_python-base-src is not set # CONFIG_PACKAGE_python-bcrypt is not set # CONFIG_PACKAGE_python-bcrypt-src is not set # CONFIG_PACKAGE_python-botocore is not set # CONFIG_PACKAGE_python-botocore-src is not set # CONFIG_PACKAGE_python-certifi is not set # CONFIG_PACKAGE_python-certifi-src is not set # CONFIG_PACKAGE_python-cffi is not set # CONFIG_PACKAGE_python-cffi-src is not set # CONFIG_PACKAGE_python-chardet is not set # CONFIG_PACKAGE_python-chardet-src is not set # CONFIG_PACKAGE_python-codecs is not set # CONFIG_PACKAGE_python-codecs-src is not set # CONFIG_PACKAGE_python-colorama is not set # CONFIG_PACKAGE_python-colorama-src is not set # CONFIG_PACKAGE_python-compiler is not set # CONFIG_PACKAGE_python-compiler-src is not set # CONFIG_PACKAGE_python-constantly is not set # CONFIG_PACKAGE_python-constantly-src is not set # CONFIG_PACKAGE_python-crcmod is not set # CONFIG_PACKAGE_python-crypto is not set # CONFIG_PACKAGE_python-crypto-src is not set # CONFIG_PACKAGE_python-cryptodome is not set # CONFIG_PACKAGE_python-cryptodome-src is not set # CONFIG_PACKAGE_python-cryptodomex is not set # CONFIG_PACKAGE_python-cryptodomex-src is not set # CONFIG_PACKAGE_python-cryptography is not set # CONFIG_PACKAGE_python-cryptography-src is not set # CONFIG_PACKAGE_python-ctypes is not set # CONFIG_PACKAGE_python-ctypes-src is not set # CONFIG_PACKAGE_python-curl is not set # CONFIG_PACKAGE_python-curl-src is not set # CONFIG_PACKAGE_python-dateutil is not set # CONFIG_PACKAGE_python-dateutil-src is not set # CONFIG_PACKAGE_python-db is not set # CONFIG_PACKAGE_python-db-src is not set # CONFIG_PACKAGE_python-decimal is not set # CONFIG_PACKAGE_python-decimal-src is not set # CONFIG_PACKAGE_python-defusedxml is not set # CONFIG_PACKAGE_python-defusedxml-src is not set # CONFIG_PACKAGE_python-dev is not set # CONFIG_PACKAGE_python-dev-src is not set # CONFIG_PACKAGE_python-distutils is not set # CONFIG_PACKAGE_python-distutils-src is not set # CONFIG_PACKAGE_python-django1 is not set # CONFIG_PACKAGE_python-django1-common is not set # CONFIG_PACKAGE_python-django1-src is not set # CONFIG_PACKAGE_python-dns is not set # CONFIG_PACKAGE_python-dns-src is not set # CONFIG_PACKAGE_python-docutils is not set # CONFIG_PACKAGE_python-docutils-src is not set # CONFIG_PACKAGE_python-dpkt is not set # CONFIG_PACKAGE_python-egenix-mx-base is not set # CONFIG_PACKAGE_python-egenix-mx-base-src is not set # CONFIG_PACKAGE_python-email is not set # CONFIG_PACKAGE_python-email-src is not set # CONFIG_PACKAGE_python-enum34 is not set # CONFIG_PACKAGE_python-enum34-src is not set # CONFIG_PACKAGE_python-et_xmlfile is not set # CONFIG_PACKAGE_python-et_xmlfile-src is not set # CONFIG_PACKAGE_python-evdev is not set # CONFIG_PACKAGE_python-evdev-src is not set # CONFIG_PACKAGE_python-flup is not set # CONFIG_PACKAGE_python-flup-src is not set # CONFIG_PACKAGE_python-futures is not set # CONFIG_PACKAGE_python-futures-src is not set # CONFIG_PACKAGE_python-gdbm is not set # CONFIG_PACKAGE_python-gdbm-src is not set # CONFIG_PACKAGE_python-gmpy2 is not set # CONFIG_PACKAGE_python-gmpy2-src is not set # CONFIG_PACKAGE_python-gnupg is not set # CONFIG_PACKAGE_python-gunicorn is not set # CONFIG_PACKAGE_python-gunicorn-src is not set # CONFIG_PACKAGE_python-hyperlink is not set # CONFIG_PACKAGE_python-hyperlink-src is not set # CONFIG_PACKAGE_python-idna is not set # CONFIG_PACKAGE_python-idna-src is not set # CONFIG_PACKAGE_python-incremental is not set # CONFIG_PACKAGE_python-incremental-src is not set # CONFIG_PACKAGE_python-ipaddress is not set # CONFIG_PACKAGE_python-ipaddress-src is not set # CONFIG_PACKAGE_python-jdcal is not set # CONFIG_PACKAGE_python-jdcal-src is not set # CONFIG_PACKAGE_python-jmespath is not set # CONFIG_PACKAGE_python-jmespath-src is not set # CONFIG_PACKAGE_python-ldap is not set # CONFIG_PACKAGE_python-lib2to3 is not set # CONFIG_PACKAGE_python-lib2to3-src is not set # CONFIG_PACKAGE_python-libmodbus is not set # CONFIG_PACKAGE_python-light is not set # # Configuration # # CONFIG_PYTHON_BLUETOOTH_SUPPORT is not set # CONFIG_PACKAGE_python-light-src is not set # CONFIG_PACKAGE_python-logging is not set # CONFIG_PACKAGE_python-logging-src is not set # CONFIG_PACKAGE_python-lxml is not set # CONFIG_PACKAGE_python-lxml-src is not set # CONFIG_PACKAGE_python-multiprocessing is not set # CONFIG_PACKAGE_python-multiprocessing-src is not set # CONFIG_PACKAGE_python-mysqlclient is not set # CONFIG_PACKAGE_python-mysqlclient-src is not set # CONFIG_PACKAGE_python-ncurses is not set # CONFIG_PACKAGE_python-ncurses-src is not set # CONFIG_PACKAGE_python-oauthlib is not set # CONFIG_PACKAGE_python-oauthlib-src is not set # CONFIG_PACKAGE_python-openpyxl is not set # CONFIG_PACKAGE_python-openpyxl-src is not set # CONFIG_PACKAGE_python-openssl is not set # CONFIG_PACKAGE_python-openssl-src is not set # CONFIG_PACKAGE_python-parsley is not set # CONFIG_PACKAGE_python-parsley-src is not set # CONFIG_PACKAGE_python-passlib is not set # CONFIG_PACKAGE_python-passlib-src is not set # CONFIG_PACKAGE_python-pcapy is not set # CONFIG_PACKAGE_python-pillow is not set # CONFIG_PACKAGE_python-pillow-src is not set # CONFIG_PACKAGE_python-pip is not set # CONFIG_PACKAGE_python-pip-conf is not set # CONFIG_PACKAGE_python-pip-src is not set # CONFIG_PACKAGE_python-pkg-resources is not set # CONFIG_PACKAGE_python-pkg-resources-src is not set # CONFIG_PACKAGE_python-ply is not set # CONFIG_PACKAGE_python-ply-src is not set # CONFIG_PACKAGE_python-psycopg2 is not set # CONFIG_PACKAGE_python-pyasn1 is not set # CONFIG_PACKAGE_python-pyasn1-modules is not set # CONFIG_PACKAGE_python-pyasn1-modules-src is not set # CONFIG_PACKAGE_python-pyasn1-src is not set # CONFIG_PACKAGE_python-pycparser is not set # CONFIG_PACKAGE_python-pycparser-src is not set # CONFIG_PACKAGE_python-pydoc is not set # CONFIG_PACKAGE_python-pydoc-src is not set # CONFIG_PACKAGE_python-pyjwt is not set # CONFIG_PACKAGE_python-pyjwt-src is not set # CONFIG_PACKAGE_python-pyodbc is not set # CONFIG_PACKAGE_python-pyopenssl is not set # CONFIG_PACKAGE_python-pyopenssl-src is not set # CONFIG_PACKAGE_python-pyptlib is not set # CONFIG_PACKAGE_python-pyptlib-src is not set # CONFIG_PACKAGE_python-pyserial is not set # CONFIG_PACKAGE_python-pyserial-src is not set # CONFIG_PACKAGE_python-pytz is not set # CONFIG_PACKAGE_python-pytz-src is not set # CONFIG_PACKAGE_python-qrcode is not set # CONFIG_PACKAGE_python-qrcode-src is not set # CONFIG_PACKAGE_python-rcssmin is not set # CONFIG_PACKAGE_python-rcssmin-src is not set # CONFIG_PACKAGE_python-requests is not set # CONFIG_PACKAGE_python-requests-oauthlib is not set # CONFIG_PACKAGE_python-requests-oauthlib-src is not set # CONFIG_PACKAGE_python-requests-src is not set # CONFIG_PACKAGE_python-rsa is not set # CONFIG_PACKAGE_python-rsa-src is not set # CONFIG_PACKAGE_python-ruamel-yaml is not set # CONFIG_PACKAGE_python-ruamel-yaml-src is not set # CONFIG_PACKAGE_python-s3transfer is not set # CONFIG_PACKAGE_python-s3transfer-src is not set # CONFIG_PACKAGE_python-service-identity is not set # CONFIG_PACKAGE_python-service-identity-src is not set # CONFIG_PACKAGE_python-setuptools is not set # CONFIG_PACKAGE_python-setuptools-src is not set # CONFIG_PACKAGE_python-simplejson is not set # CONFIG_PACKAGE_python-simplejson-src is not set # CONFIG_PACKAGE_python-six is not set # CONFIG_PACKAGE_python-six-src is not set # CONFIG_PACKAGE_python-smbus is not set # CONFIG_PACKAGE_python-sqlite3 is not set # CONFIG_PACKAGE_python-sqlite3-src is not set # CONFIG_PACKAGE_python-text-unidecode is not set # CONFIG_PACKAGE_python-text-unidecode-src is not set # CONFIG_PACKAGE_python-twisted is not set # CONFIG_PACKAGE_python-twisted-src is not set # CONFIG_PACKAGE_python-txsocksx is not set # CONFIG_PACKAGE_python-txsocksx-src is not set # CONFIG_PACKAGE_python-unittest is not set # CONFIG_PACKAGE_python-unittest-src is not set # CONFIG_PACKAGE_python-urllib3 is not set # CONFIG_PACKAGE_python-urllib3-src is not set # CONFIG_PACKAGE_python-vobject is not set # CONFIG_PACKAGE_python-vobject-src is not set # CONFIG_PACKAGE_python-voluptuous is not set # CONFIG_PACKAGE_python-voluptuous-src is not set # CONFIG_PACKAGE_python-xml is not set # CONFIG_PACKAGE_python-xml-src is not set # CONFIG_PACKAGE_python-yaml is not set # CONFIG_PACKAGE_python-yaml-src is not set # CONFIG_PACKAGE_python-zope-interface is not set # CONFIG_PACKAGE_python-zope-interface-src is not set # CONFIG_PACKAGE_python3 is not set # CONFIG_PACKAGE_python3-aiohttp is not set # CONFIG_PACKAGE_python3-aiohttp-cors is not set # CONFIG_PACKAGE_python3-aiohttp-cors-src is not set # CONFIG_PACKAGE_python3-aiohttp-src is not set # CONFIG_PACKAGE_python3-appdirs is not set # CONFIG_PACKAGE_python3-appdirs-src is not set # CONFIG_PACKAGE_python3-asgiref is not set # CONFIG_PACKAGE_python3-asgiref-src is not set # CONFIG_PACKAGE_python3-asn1crypto is not set # CONFIG_PACKAGE_python3-asn1crypto-src is not set # CONFIG_PACKAGE_python3-astral is not set # CONFIG_PACKAGE_python3-astral-src is not set # CONFIG_PACKAGE_python3-async-timeout is not set # CONFIG_PACKAGE_python3-async-timeout-src is not set # CONFIG_PACKAGE_python3-asyncio is not set # CONFIG_PACKAGE_python3-asyncio-src is not set # CONFIG_PACKAGE_python3-atomicwrites is not set # CONFIG_PACKAGE_python3-atomicwrites-src is not set # CONFIG_PACKAGE_python3-attrs is not set # CONFIG_PACKAGE_python3-attrs-src is not set # CONFIG_PACKAGE_python3-automat is not set # CONFIG_PACKAGE_python3-automat-src is not set # CONFIG_PACKAGE_python3-awscli is not set # CONFIG_PACKAGE_python3-awscli-src is not set # CONFIG_PACKAGE_python3-base is not set # CONFIG_PACKAGE_python3-base-src is not set # CONFIG_PACKAGE_python3-bcrypt is not set # CONFIG_PACKAGE_python3-bcrypt-src is not set # CONFIG_PACKAGE_python3-boto3 is not set # CONFIG_PACKAGE_python3-boto3-src is not set # CONFIG_PACKAGE_python3-botocore is not set # CONFIG_PACKAGE_python3-botocore-src is not set # CONFIG_PACKAGE_python3-bottle is not set # CONFIG_PACKAGE_python3-bottle-src is not set # CONFIG_PACKAGE_python3-cachelib is not set # CONFIG_PACKAGE_python3-cachelib-src is not set # CONFIG_PACKAGE_python3-cachetools is not set # CONFIG_PACKAGE_python3-cachetools-src is not set # CONFIG_PACKAGE_python3-certifi is not set # CONFIG_PACKAGE_python3-certifi-src is not set # CONFIG_PACKAGE_python3-cffi is not set # CONFIG_PACKAGE_python3-cffi-src is not set # CONFIG_PACKAGE_python3-cgi is not set # CONFIG_PACKAGE_python3-cgi-src is not set # CONFIG_PACKAGE_python3-cgitb is not set # CONFIG_PACKAGE_python3-cgitb-src is not set # CONFIG_PACKAGE_python3-chardet is not set # CONFIG_PACKAGE_python3-chardet-src is not set # CONFIG_PACKAGE_python3-click is not set # CONFIG_PACKAGE_python3-click-log is not set # CONFIG_PACKAGE_python3-click-log-src is not set # CONFIG_PACKAGE_python3-click-src is not set # CONFIG_PACKAGE_python3-codecs is not set # CONFIG_PACKAGE_python3-codecs-src is not set # CONFIG_PACKAGE_python3-colorama is not set # CONFIG_PACKAGE_python3-colorama-src is not set # CONFIG_PACKAGE_python3-constantly is not set # CONFIG_PACKAGE_python3-constantly-src is not set # CONFIG_PACKAGE_python3-contextlib2 is not set # CONFIG_PACKAGE_python3-contextlib2-src is not set # CONFIG_PACKAGE_python3-crypto is not set # CONFIG_PACKAGE_python3-crypto-src is not set # CONFIG_PACKAGE_python3-cryptodome is not set # CONFIG_PACKAGE_python3-cryptodome-src is not set # CONFIG_PACKAGE_python3-cryptodomex is not set # CONFIG_PACKAGE_python3-cryptodomex-src is not set # CONFIG_PACKAGE_python3-cryptography is not set # CONFIG_PACKAGE_python3-cryptography-src is not set # CONFIG_PACKAGE_python3-ctypes is not set # CONFIG_PACKAGE_python3-ctypes-src is not set # CONFIG_PACKAGE_python3-curl is not set # CONFIG_PACKAGE_python3-curl-src is not set # CONFIG_PACKAGE_python3-dateutil is not set # CONFIG_PACKAGE_python3-dateutil-src is not set # CONFIG_PACKAGE_python3-dbm is not set # CONFIG_PACKAGE_python3-dbm-src is not set # CONFIG_PACKAGE_python3-decimal is not set # CONFIG_PACKAGE_python3-decimal-src is not set # CONFIG_PACKAGE_python3-decorator is not set # CONFIG_PACKAGE_python3-decorator-src is not set # CONFIG_PACKAGE_python3-defusedxml is not set # CONFIG_PACKAGE_python3-defusedxml-src is not set # CONFIG_PACKAGE_python3-dev is not set # CONFIG_PACKAGE_python3-dev-src is not set # CONFIG_PACKAGE_python3-distutils is not set # CONFIG_PACKAGE_python3-distutils-src is not set # CONFIG_PACKAGE_python3-django is not set # CONFIG_PACKAGE_python3-django-appconf is not set # CONFIG_PACKAGE_python3-django-appconf-src is not set # CONFIG_PACKAGE_python3-django-compressor is not set # CONFIG_PACKAGE_python3-django-compressor-src is not set # CONFIG_PACKAGE_python3-django-constance is not set # CONFIG_PACKAGE_python3-django-constance-src is not set # CONFIG_PACKAGE_python3-django-cors-headers is not set # CONFIG_PACKAGE_python3-django-cors-headers-src is not set # CONFIG_PACKAGE_python3-django-etesync-journal is not set # CONFIG_PACKAGE_python3-django-etesync-journal-src is not set # CONFIG_PACKAGE_python3-django-formtools is not set # CONFIG_PACKAGE_python3-django-formtools-src is not set # CONFIG_PACKAGE_python3-django-jsonfield is not set # CONFIG_PACKAGE_python3-django-jsonfield-src is not set # CONFIG_PACKAGE_python3-django-picklefield is not set # CONFIG_PACKAGE_python3-django-picklefield-src is not set # CONFIG_PACKAGE_python3-django-postoffice is not set # CONFIG_PACKAGE_python3-django-postoffice-src is not set # CONFIG_PACKAGE_python3-django-ranged-response is not set # CONFIG_PACKAGE_python3-django-ranged-response-src is not set # CONFIG_PACKAGE_python3-django-restframework is not set # CONFIG_PACKAGE_python3-django-restframework-src is not set # CONFIG_PACKAGE_python3-django-restframework39 is not set # CONFIG_PACKAGE_python3-django-restframework39-src is not set # CONFIG_PACKAGE_python3-django-simple-captcha is not set # CONFIG_PACKAGE_python3-django-simple-captcha-src is not set # CONFIG_PACKAGE_python3-django-src is not set # CONFIG_PACKAGE_python3-django-statici18n is not set # CONFIG_PACKAGE_python3-django-statici18n-src is not set # CONFIG_PACKAGE_python3-django-webpack-loader is not set # CONFIG_PACKAGE_python3-django-webpack-loader-src is not set # CONFIG_PACKAGE_python3-django1 is not set # CONFIG_PACKAGE_python3-django1-src is not set # CONFIG_PACKAGE_python3-dns is not set # CONFIG_PACKAGE_python3-dns-src is not set # CONFIG_PACKAGE_python3-docutils is not set # CONFIG_PACKAGE_python3-docutils-src is not set # CONFIG_PACKAGE_python3-drf-nested-routers is not set # CONFIG_PACKAGE_python3-drf-nested-routers-src is not set # CONFIG_PACKAGE_python3-email is not set # CONFIG_PACKAGE_python3-email-src is not set # CONFIG_PACKAGE_python3-et_xmlfile is not set # CONFIG_PACKAGE_python3-et_xmlfile-src is not set # CONFIG_PACKAGE_python3-evdev is not set # CONFIG_PACKAGE_python3-evdev-src is not set # CONFIG_PACKAGE_python3-flask is not set # CONFIG_PACKAGE_python3-flask-login is not set # CONFIG_PACKAGE_python3-flask-login-src is not set # CONFIG_PACKAGE_python3-flask-src is not set # CONFIG_PACKAGE_python3-flup is not set # CONFIG_PACKAGE_python3-flup-src is not set # CONFIG_PACKAGE_python3-gdbm is not set # CONFIG_PACKAGE_python3-gdbm-src is not set # CONFIG_PACKAGE_python3-gmpy2 is not set # CONFIG_PACKAGE_python3-gmpy2-src is not set # CONFIG_PACKAGE_python3-gnupg is not set # CONFIG_PACKAGE_python3-gunicorn is not set # CONFIG_PACKAGE_python3-gunicorn-src is not set # CONFIG_PACKAGE_python3-hyperlink is not set # CONFIG_PACKAGE_python3-hyperlink-src is not set # CONFIG_PACKAGE_python3-idna is not set # CONFIG_PACKAGE_python3-idna-src is not set # CONFIG_PACKAGE_python3-ifaddr is not set # CONFIG_PACKAGE_python3-ifaddr-src is not set # CONFIG_PACKAGE_python3-incremental is not set # CONFIG_PACKAGE_python3-incremental-src is not set # CONFIG_PACKAGE_python3-influxdb is not set # CONFIG_PACKAGE_python3-influxdb-src is not set # CONFIG_PACKAGE_python3-intelhex is not set # CONFIG_PACKAGE_python3-intelhex-src is not set # CONFIG_PACKAGE_python3-itsdangerous is not set # CONFIG_PACKAGE_python3-itsdangerous-src is not set # CONFIG_PACKAGE_python3-jdcal is not set # CONFIG_PACKAGE_python3-jdcal-src is not set # CONFIG_PACKAGE_python3-jinja2 is not set # CONFIG_PACKAGE_python3-jinja2-src is not set # CONFIG_PACKAGE_python3-jmespath is not set # CONFIG_PACKAGE_python3-jmespath-src is not set # CONFIG_PACKAGE_python3-jsonpath-ng is not set # CONFIG_PACKAGE_python3-jsonpath-ng-src is not set # CONFIG_PACKAGE_python3-lib2to3 is not set # CONFIG_PACKAGE_python3-lib2to3-src is not set # CONFIG_PACKAGE_python3-libmodbus is not set # CONFIG_PACKAGE_python3-light is not set # # Configuration # # CONFIG_PYTHON3_BLUETOOTH_SUPPORT is not set # CONFIG_PACKAGE_python3-light-src is not set # CONFIG_PACKAGE_python3-logging is not set # CONFIG_PACKAGE_python3-logging-src is not set # CONFIG_PACKAGE_python3-lxml is not set # CONFIG_PACKAGE_python3-lxml-src is not set # CONFIG_PACKAGE_python3-lzma is not set # CONFIG_PACKAGE_python3-lzma-src is not set # CONFIG_PACKAGE_python3-markdown is not set # CONFIG_PACKAGE_python3-markdown-src is not set # CONFIG_PACKAGE_python3-markupsafe is not set # CONFIG_PACKAGE_python3-markupsafe-src is not set # CONFIG_PACKAGE_python3-maxminddb is not set # CONFIG_PACKAGE_python3-maxminddb-src is not set # CONFIG_PACKAGE_python3-more-itertools is not set # CONFIG_PACKAGE_python3-more-itertools-src is not set # CONFIG_PACKAGE_python3-multidict is not set # CONFIG_PACKAGE_python3-multidict-src is not set # CONFIG_PACKAGE_python3-multiprocessing is not set # CONFIG_PACKAGE_python3-multiprocessing-src is not set # CONFIG_PACKAGE_python3-mysqlclient is not set # CONFIG_PACKAGE_python3-mysqlclient-src is not set # CONFIG_PACKAGE_python3-ncurses is not set # CONFIG_PACKAGE_python3-ncurses-src is not set # CONFIG_PACKAGE_python3-netdisco is not set # CONFIG_PACKAGE_python3-netdisco-src is not set # CONFIG_PACKAGE_python3-netifaces is not set # CONFIG_PACKAGE_python3-netifaces-src is not set # CONFIG_PACKAGE_python3-oauthlib is not set # CONFIG_PACKAGE_python3-oauthlib-src is not set # CONFIG_PACKAGE_python3-openpyxl is not set # CONFIG_PACKAGE_python3-openpyxl-src is not set # CONFIG_PACKAGE_python3-openssl is not set # CONFIG_PACKAGE_python3-openssl-src is not set # CONFIG_PACKAGE_python3-paho-mqtt is not set # CONFIG_PACKAGE_python3-paho-mqtt-src is not set # CONFIG_PACKAGE_python3-parsley is not set # CONFIG_PACKAGE_python3-parsley-src is not set # CONFIG_PACKAGE_python3-passlib is not set # CONFIG_PACKAGE_python3-passlib-src is not set # CONFIG_PACKAGE_python3-pillow is not set # CONFIG_PACKAGE_python3-pillow-src is not set # CONFIG_PACKAGE_python3-pip is not set # CONFIG_PACKAGE_python3-pip-src is not set # CONFIG_PACKAGE_python3-pkg-resources is not set # CONFIG_PACKAGE_python3-pkg-resources-src is not set # CONFIG_PACKAGE_python3-ply is not set # CONFIG_PACKAGE_python3-ply-src is not set # CONFIG_PACKAGE_python3-py is not set # CONFIG_PACKAGE_python3-py-src is not set # CONFIG_PACKAGE_python3-pyasn1 is not set # CONFIG_PACKAGE_python3-pyasn1-modules is not set # CONFIG_PACKAGE_python3-pyasn1-modules-src is not set # CONFIG_PACKAGE_python3-pyasn1-src is not set # CONFIG_PACKAGE_python3-pycparser is not set # CONFIG_PACKAGE_python3-pycparser-src is not set # CONFIG_PACKAGE_python3-pydoc is not set # CONFIG_PACKAGE_python3-pydoc-src is not set # CONFIG_PACKAGE_python3-pyjwt is not set # CONFIG_PACKAGE_python3-pyjwt-src is not set # CONFIG_PACKAGE_python3-pymysql is not set # CONFIG_PACKAGE_python3-pymysql-src is not set # CONFIG_PACKAGE_python3-pyodbc is not set # CONFIG_PACKAGE_python3-pyopenssl is not set # CONFIG_PACKAGE_python3-pyopenssl-src is not set # CONFIG_PACKAGE_python3-pyotp is not set # CONFIG_PACKAGE_python3-pyotp-src is not set # CONFIG_PACKAGE_python3-pyparsing is not set # CONFIG_PACKAGE_python3-pyparsing-src is not set # CONFIG_PACKAGE_python3-pyroute2 is not set # CONFIG_PACKAGE_python3-pyroute2-src is not set # CONFIG_PACKAGE_python3-pyrsistent is not set # CONFIG_PACKAGE_python3-pyrsistent-src is not set # CONFIG_PACKAGE_python3-pyserial is not set # CONFIG_PACKAGE_python3-pyserial-src is not set # CONFIG_PACKAGE_python3-pytz is not set # CONFIG_PACKAGE_python3-pytz-src is not set # CONFIG_PACKAGE_python3-qrcode is not set # CONFIG_PACKAGE_python3-qrcode-src is not set # CONFIG_PACKAGE_python3-rcssmin is not set # CONFIG_PACKAGE_python3-rcssmin-src is not set # CONFIG_PACKAGE_python3-requests is not set # CONFIG_PACKAGE_python3-requests-oauthlib is not set # CONFIG_PACKAGE_python3-requests-oauthlib-src is not set # CONFIG_PACKAGE_python3-requests-src is not set # CONFIG_PACKAGE_python3-rsa is not set # CONFIG_PACKAGE_python3-rsa-src is not set # CONFIG_PACKAGE_python3-ruamel-yaml is not set # CONFIG_PACKAGE_python3-ruamel-yaml-src is not set # CONFIG_PACKAGE_python3-s3transfer is not set # CONFIG_PACKAGE_python3-s3transfer-src is not set # CONFIG_PACKAGE_python3-schedule is not set # CONFIG_PACKAGE_python3-schedule-src is not set # CONFIG_PACKAGE_python3-schema is not set # CONFIG_PACKAGE_python3-schema-src is not set # CONFIG_PACKAGE_python3-seafile-ccnet is not set # CONFIG_PACKAGE_python3-seafile-ccnet-src is not set # CONFIG_PACKAGE_python3-seafile-server is not set # CONFIG_PACKAGE_python3-seafile-server-src is not set # CONFIG_PACKAGE_python3-searpc is not set # CONFIG_PACKAGE_python3-searpc-src is not set # CONFIG_PACKAGE_python3-sentry-sdk is not set # CONFIG_PACKAGE_python3-sentry-sdk-src is not set # CONFIG_PACKAGE_python3-service-identity is not set # CONFIG_PACKAGE_python3-service-identity-src is not set # CONFIG_PACKAGE_python3-setuptools is not set # CONFIG_PACKAGE_python3-setuptools-src is not set # CONFIG_PACKAGE_python3-simplejson is not set # CONFIG_PACKAGE_python3-simplejson-src is not set # CONFIG_PACKAGE_python3-six is not set # CONFIG_PACKAGE_python3-six-src is not set # CONFIG_PACKAGE_python3-slugify is not set # CONFIG_PACKAGE_python3-slugify-src is not set # CONFIG_PACKAGE_python3-smbus is not set # CONFIG_PACKAGE_python3-speedtest-cli is not set # CONFIG_PACKAGE_python3-speedtest-cli-src is not set # CONFIG_PACKAGE_python3-sqlalchemy is not set # CONFIG_PACKAGE_python3-sqlalchemy-src is not set # CONFIG_PACKAGE_python3-sqlite3 is not set # CONFIG_PACKAGE_python3-sqlite3-src is not set # CONFIG_PACKAGE_python3-sqlparse is not set # CONFIG_PACKAGE_python3-sqlparse-src is not set # CONFIG_PACKAGE_python3-stem is not set # CONFIG_PACKAGE_python3-stem-src is not set # CONFIG_PACKAGE_python3-text-unidecode is not set # CONFIG_PACKAGE_python3-text-unidecode-src is not set # CONFIG_PACKAGE_python3-twisted is not set # CONFIG_PACKAGE_python3-twisted-src is not set # CONFIG_PACKAGE_python3-unidecode is not set # CONFIG_PACKAGE_python3-unidecode-src is not set # CONFIG_PACKAGE_python3-unittest is not set # CONFIG_PACKAGE_python3-unittest-src is not set # CONFIG_PACKAGE_python3-urllib is not set # CONFIG_PACKAGE_python3-urllib-src is not set # CONFIG_PACKAGE_python3-urllib3 is not set # CONFIG_PACKAGE_python3-urllib3-src is not set # CONFIG_PACKAGE_python3-vobject is not set # CONFIG_PACKAGE_python3-vobject-src is not set # CONFIG_PACKAGE_python3-voluptuous is not set # CONFIG_PACKAGE_python3-voluptuous-serialize is not set # CONFIG_PACKAGE_python3-voluptuous-serialize-src is not set # CONFIG_PACKAGE_python3-voluptuous-src is not set # CONFIG_PACKAGE_python3-wcwidth is not set # CONFIG_PACKAGE_python3-wcwidth-src is not set # CONFIG_PACKAGE_python3-werkzeug is not set # CONFIG_PACKAGE_python3-werkzeug-src is not set # CONFIG_PACKAGE_python3-xml is not set # CONFIG_PACKAGE_python3-xml-src is not set # CONFIG_PACKAGE_python3-xmltodict is not set # CONFIG_PACKAGE_python3-xmltodict-src is not set # CONFIG_PACKAGE_python3-yaml is not set # CONFIG_PACKAGE_python3-yaml-src is not set # CONFIG_PACKAGE_python3-yarl is not set # CONFIG_PACKAGE_python3-yarl-src is not set # CONFIG_PACKAGE_python3-zeroconf is not set # CONFIG_PACKAGE_python3-zeroconf-src is not set # CONFIG_PACKAGE_python3-zipp is not set # CONFIG_PACKAGE_python3-zipp-src is not set # CONFIG_PACKAGE_python3-zope-interface is not set # CONFIG_PACKAGE_python3-zope-interface-src is not set # # Ruby # # CONFIG_PACKAGE_ruby is not set # # Tcl # # CONFIG_PACKAGE_vala is not set # # Libraries # # # Compression # # CONFIG_PACKAGE_libbz2 is not set # CONFIG_PACKAGE_liblzma is not set # CONFIG_PACKAGE_libunrar is not set # CONFIG_PACKAGE_libzstd is not set CONFIG_ZSTD_OPTIMIZE_O3=y # # Filesystem # # CONFIG_PACKAGE_libacl is not set # CONFIG_PACKAGE_libattr is not set # CONFIG_PACKAGE_libfuse is not set # CONFIG_PACKAGE_libow is not set # CONFIG_PACKAGE_libow-capi is not set # CONFIG_PACKAGE_libsysfs is not set # # Firewall # # CONFIG_PACKAGE_libfko is not set CONFIG_PACKAGE_libip4tc=y CONFIG_PACKAGE_libip6tc=y CONFIG_PACKAGE_libxtables=y # CONFIG_PACKAGE_libxtables-nft is not set # # Instant Messaging # # CONFIG_PACKAGE_quasselc is not set # # IoT # # CONFIG_PACKAGE_libupm is not set # CONFIG_PACKAGE_libupm-a110x is not set # CONFIG_PACKAGE_libupm-ad8232 is not set # CONFIG_PACKAGE_libupm-adafruitss is not set # CONFIG_PACKAGE_libupm-adc121c021 is not set # CONFIG_PACKAGE_libupm-adis16448 is not set # CONFIG_PACKAGE_libupm-adxl335 is not set # CONFIG_PACKAGE_libupm-adxl345 is not set # CONFIG_PACKAGE_libupm-am2315 is not set # CONFIG_PACKAGE_libupm-apds9002 is not set # CONFIG_PACKAGE_libupm-at42qt1070 is not set # CONFIG_PACKAGE_libupm-biss0001 is not set # CONFIG_PACKAGE_libupm-bmpx8x is not set # CONFIG_PACKAGE_libupm-buzzer is not set # CONFIG_PACKAGE_libupm-cjq4435 is not set # CONFIG_PACKAGE_libupm-ds1307 is not set # CONFIG_PACKAGE_libupm-ecs1030 is not set # CONFIG_PACKAGE_libupm-enc03r is not set # CONFIG_PACKAGE_libupm-flex is not set # CONFIG_PACKAGE_libupm-gas is not set # CONFIG_PACKAGE_libupm-gp2y0a is not set # CONFIG_PACKAGE_libupm-grove is not set # CONFIG_PACKAGE_libupm-grovecircularled is not set # CONFIG_PACKAGE_libupm-grovecollision is not set # CONFIG_PACKAGE_libupm-groveehr is not set # CONFIG_PACKAGE_libupm-groveeldriver is not set # CONFIG_PACKAGE_libupm-groveelectromagnet is not set # CONFIG_PACKAGE_libupm-groveemg is not set # CONFIG_PACKAGE_libupm-grovegprs is not set # CONFIG_PACKAGE_libupm-grovegsr is not set # CONFIG_PACKAGE_libupm-grovelinefinder is not set # CONFIG_PACKAGE_libupm-grovemd is not set # CONFIG_PACKAGE_libupm-grovemoisture is not set # CONFIG_PACKAGE_libupm-groveo2 is not set # CONFIG_PACKAGE_libupm-grovescam is not set # CONFIG_PACKAGE_libupm-grovespeaker is not set # CONFIG_PACKAGE_libupm-grovevdiv is not set # CONFIG_PACKAGE_libupm-grovewater is not set # CONFIG_PACKAGE_libupm-grovewfs is not set # CONFIG_PACKAGE_libupm-guvas12d is not set # CONFIG_PACKAGE_libupm-h3lis331dl is not set # CONFIG_PACKAGE_libupm-hcsr04 is not set # CONFIG_PACKAGE_libupm-hm11 is not set # CONFIG_PACKAGE_libupm-hmc5883l is not set # CONFIG_PACKAGE_libupm-hmtrp is not set # CONFIG_PACKAGE_libupm-hp20x is not set # CONFIG_PACKAGE_libupm-ht9170 is not set # CONFIG_PACKAGE_libupm-htu21d is not set # CONFIG_PACKAGE_libupm-hx711 is not set # CONFIG_PACKAGE_libupm-i2clcd is not set # CONFIG_PACKAGE_libupm-ina132 is not set # CONFIG_PACKAGE_libupm-isd1820 is not set # CONFIG_PACKAGE_libupm-itg3200 is not set # CONFIG_PACKAGE_libupm-joystick12 is not set # CONFIG_PACKAGE_libupm-l298 is not set # CONFIG_PACKAGE_libupm-ldt0028 is not set # CONFIG_PACKAGE_libupm-lm35 is not set # CONFIG_PACKAGE_libupm-lol is not set # CONFIG_PACKAGE_libupm-loudness is not set # CONFIG_PACKAGE_libupm-lpd8806 is not set # CONFIG_PACKAGE_libupm-lsm303 is not set # CONFIG_PACKAGE_libupm-lsm9ds0 is not set # CONFIG_PACKAGE_libupm-m24lr64e is not set # CONFIG_PACKAGE_libupm-max31723 is not set # CONFIG_PACKAGE_libupm-max31855 is not set # CONFIG_PACKAGE_libupm-max44000 is not set # CONFIG_PACKAGE_libupm-max5487 is not set # CONFIG_PACKAGE_libupm-maxds3231m is not set # CONFIG_PACKAGE_libupm-maxsonarez is not set # CONFIG_PACKAGE_libupm-mg811 is not set # CONFIG_PACKAGE_libupm-mhz16 is not set # CONFIG_PACKAGE_libupm-mic is not set # CONFIG_PACKAGE_libupm-mlx90614 is not set # CONFIG_PACKAGE_libupm-mma7455 is not set # CONFIG_PACKAGE_libupm-mma7660 is not set # CONFIG_PACKAGE_libupm-mpl3115a2 is not set # CONFIG_PACKAGE_libupm-mpr121 is not set # CONFIG_PACKAGE_libupm-mpu9150 is not set # CONFIG_PACKAGE_libupm-mq303a is not set # CONFIG_PACKAGE_libupm-my9221 is not set # CONFIG_PACKAGE_libupm-nrf24l01 is not set # CONFIG_PACKAGE_libupm-nrf8001 is not set # CONFIG_PACKAGE_libupm-nunchuck is not set # CONFIG_PACKAGE_libupm-otp538u is not set # CONFIG_PACKAGE_libupm-pn532 is not set # CONFIG_PACKAGE_libupm-ppd42ns is not set # CONFIG_PACKAGE_libupm-pulsensor is not set # CONFIG_PACKAGE_libupm-rfr359f is not set # CONFIG_PACKAGE_libupm-rgbringcoder is not set # CONFIG_PACKAGE_libupm-rotaryencoder is not set # CONFIG_PACKAGE_libupm-rpr220 is not set # CONFIG_PACKAGE_libupm-servo is not set # CONFIG_PACKAGE_libupm-si114x is not set # CONFIG_PACKAGE_libupm-sm130 is not set # CONFIG_PACKAGE_libupm-st7735 is not set # CONFIG_PACKAGE_libupm-stepmotor is not set # CONFIG_PACKAGE_libupm-sx6119 is not set # CONFIG_PACKAGE_libupm-ta12200 is not set # CONFIG_PACKAGE_libupm-tcs3414cs is not set # CONFIG_PACKAGE_libupm-th02 is not set # CONFIG_PACKAGE_libupm-tm1637 is not set # CONFIG_PACKAGE_libupm-tsl2561 is not set # CONFIG_PACKAGE_libupm-ttp223 is not set # CONFIG_PACKAGE_libupm-ublox6 is not set # CONFIG_PACKAGE_libupm-uln200xa is not set # CONFIG_PACKAGE_libupm-waterlevel is not set # CONFIG_PACKAGE_libupm-wheelencoder is not set # CONFIG_PACKAGE_libupm-wt5001 is not set # CONFIG_PACKAGE_libupm-yg1006 is not set # CONFIG_PACKAGE_libupm-zfm20 is not set # # Languages # # CONFIG_PACKAGE_libyaml is not set # # Networking # # CONFIG_PACKAGE_libdcwproto is not set # CONFIG_PACKAGE_libdcwsocket is not set # CONFIG_PACKAGE_libsctp is not set # CONFIG_PACKAGE_libuhttpd-mbedtls is not set # CONFIG_PACKAGE_libuhttpd-nossl is not set # CONFIG_PACKAGE_libuhttpd-openssl is not set # CONFIG_PACKAGE_libuhttpd-wolfssl is not set # CONFIG_PACKAGE_libunbound is not set # CONFIG_PACKAGE_libunbound-heavy is not set # CONFIG_PACKAGE_libuwsc-mbedtls is not set # CONFIG_PACKAGE_libuwsc-nossl is not set # CONFIG_PACKAGE_libuwsc-openssl is not set # CONFIG_PACKAGE_libuwsc-wolfssl is not set # # Qt5 # # CONFIG_PACKAGE_qt5-core is not set # CONFIG_PACKAGE_qt5-network is not set # CONFIG_PACKAGE_qt5-xml is not set # # SSL # # CONFIG_PACKAGE_libgnutls is not set # CONFIG_PACKAGE_libmbedtls is not set CONFIG_PACKAGE_libopenssl=y # # Build Options # CONFIG_OPENSSL_OPTIMIZE_SPEED=y CONFIG_OPENSSL_WITH_ASM=y CONFIG_OPENSSL_WITH_DEPRECATED=y # CONFIG_OPENSSL_NO_DEPRECATED is not set # CONFIG_OPENSSL_WITH_ERROR_MESSAGES is not set # # Protocol Support # CONFIG_OPENSSL_WITH_TLS13=y # CONFIG_OPENSSL_WITH_DTLS is not set # CONFIG_OPENSSL_WITH_NPN is not set CONFIG_OPENSSL_WITH_SRP=y CONFIG_OPENSSL_WITH_CMS=y # # Algorithm Selection # # CONFIG_OPENSSL_WITH_EC2M is not set CONFIG_OPENSSL_WITH_CHACHA_POLY1305=y CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM=y CONFIG_OPENSSL_WITH_PSK=y # # Less commonly used build options # # CONFIG_OPENSSL_WITH_ARIA is not set # CONFIG_OPENSSL_WITH_CAMELLIA is not set # CONFIG_OPENSSL_WITH_IDEA is not set # CONFIG_OPENSSL_WITH_SEED is not set # CONFIG_OPENSSL_WITH_SM234 is not set # CONFIG_OPENSSL_WITH_BLAKE2 is not set # CONFIG_OPENSSL_WITH_MDC2 is not set # CONFIG_OPENSSL_WITH_WHIRLPOOL is not set # CONFIG_OPENSSL_WITH_COMPRESSION is not set # CONFIG_OPENSSL_WITH_RFC3779 is not set # # Engine/Hardware Support # CONFIG_OPENSSL_ENGINE=y CONFIG_OPENSSL_ENGINE_BUILTIN=y CONFIG_OPENSSL_ENGINE_BUILTIN_DEVCRYPTO=y # CONFIG_OPENSSL_WITH_GOST is not set CONFIG_PACKAGE_libopenssl-conf=y # CONFIG_PACKAGE_libopenssl-devcrypto is not set # CONFIG_PACKAGE_libpolarssl is not set # CONFIG_PACKAGE_libwolfssl is not set # # Sound # # CONFIG_PACKAGE_liblo is not set # # database # # CONFIG_PACKAGE_libpq is not set # CONFIG_PACKAGE_libsqlite3 is not set # CONFIG_PACKAGE_pgsqlodbc is not set # CONFIG_PACKAGE_psqlodbca is not set # CONFIG_PACKAGE_psqlodbcw is not set # CONFIG_PACKAGE_tdb is not set # CONFIG_PACKAGE_unixodbc is not set # # libelektra # # CONFIG_PACKAGE_libelektra-boost is not set # CONFIG_PACKAGE_libelektra-core is not set # CONFIG_PACKAGE_libelektra-cpp is not set # CONFIG_PACKAGE_libelektra-crypto is not set # CONFIG_PACKAGE_libelektra-curlget is not set # CONFIG_PACKAGE_libelektra-dbus is not set # CONFIG_PACKAGE_libelektra-extra is not set # CONFIG_PACKAGE_libelektra-lua is not set # CONFIG_PACKAGE_libelektra-plugins is not set # CONFIG_PACKAGE_libelektra-python2 is not set # CONFIG_PACKAGE_libelektra-python3 is not set # CONFIG_PACKAGE_libelektra-resolvers is not set # CONFIG_PACKAGE_libelektra-xerces is not set # CONFIG_PACKAGE_libelektra-xml is not set # CONFIG_PACKAGE_libelektra-yajl is not set # CONFIG_PACKAGE_libelektra-yamlcpp is not set # CONFIG_PACKAGE_alsa-lib is not set # CONFIG_PACKAGE_argp-standalone is not set # CONFIG_PACKAGE_avro-c is not set # CONFIG_PACKAGE_bind-libs is not set # CONFIG_PACKAGE_bluez-libs is not set # CONFIG_PACKAGE_boost is not set # CONFIG_boost-context-exclude is not set # CONFIG_boost-coroutine-exclude is not set # CONFIG_boost-fiber-exclude is not set # CONFIG_PACKAGE_ccid is not set # CONFIG_PACKAGE_check is not set # CONFIG_PACKAGE_classpath is not set # CONFIG_PACKAGE_classpath-tools is not set # CONFIG_PACKAGE_confuse is not set # CONFIG_PACKAGE_dtndht is not set # CONFIG_PACKAGE_fcgi is not set # CONFIG_PACKAGE_fftw3 is not set # CONFIG_PACKAGE_fftw3f is not set # CONFIG_PACKAGE_getdns is not set # CONFIG_PACKAGE_giflib is not set # CONFIG_PACKAGE_glib2 is not set # CONFIG_PACKAGE_glog is not set # CONFIG_PACKAGE_hidapi is not set # CONFIG_PACKAGE_ibrcommon is not set # CONFIG_PACKAGE_ibrdtn is not set # CONFIG_PACKAGE_icu is not set # CONFIG_PACKAGE_icu-data-tools is not set # CONFIG_PACKAGE_icu-full-data is not set # CONFIG_PACKAGE_jansson is not set # CONFIG_PACKAGE_knot-libs is not set # CONFIG_PACKAGE_knot-libzscanner is not set # CONFIG_PACKAGE_libaio is not set # CONFIG_PACKAGE_libalac is not set # CONFIG_PACKAGE_libantlr3c is not set # CONFIG_PACKAGE_libao is not set # CONFIG_PACKAGE_libapr is not set # CONFIG_PACKAGE_libaprutil is not set # CONFIG_PACKAGE_libarchive is not set # CONFIG_PACKAGE_libarchive-noopenssl is not set # CONFIG_PACKAGE_libartnet is not set # CONFIG_PACKAGE_libasm is not set # CONFIG_PACKAGE_libaudiofile is not set # CONFIG_PACKAGE_libavahi-client is not set # CONFIG_PACKAGE_libavahi-compat-libdnssd is not set # CONFIG_PACKAGE_libavahi-dbus-support is not set # CONFIG_PACKAGE_libavahi-nodbus-support is not set # CONFIG_PACKAGE_libavl is not set # CONFIG_PACKAGE_libbfd is not set # CONFIG_PACKAGE_libblkid is not set CONFIG_PACKAGE_libblobmsg-json=y # CONFIG_PACKAGE_libbsd is not set # CONFIG_PACKAGE_libcanfestival is not set # CONFIG_PACKAGE_libcap is not set # CONFIG_PACKAGE_libcares is not set # CONFIG_PACKAGE_libcharset is not set # CONFIG_PACKAGE_libcoap is not set # CONFIG_PACKAGE_libcomerr is not set # CONFIG_PACKAGE_libconfig is not set # CONFIG_PACKAGE_libcryptopp is not set # CONFIG_PACKAGE_libcurl is not set # CONFIG_PACKAGE_libcxx is not set # CONFIG_PACKAGE_libdaemon is not set # CONFIG_PACKAGE_libdaq is not set # CONFIG_PACKAGE_libdb47 is not set # CONFIG_PACKAGE_libdb47xx is not set # CONFIG_PACKAGE_libdbi is not set # CONFIG_PACKAGE_libdbus is not set # CONFIG_PACKAGE_libdevmapper is not set # CONFIG_PACKAGE_libdmapsharing is not set # CONFIG_PACKAGE_libdnet is not set # CONFIG_PACKAGE_libdouble-conversion is not set # CONFIG_PACKAGE_libdrm is not set # CONFIG_PACKAGE_libdw is not set # CONFIG_PACKAGE_libecdsautil is not set # CONFIG_PACKAGE_libedit is not set CONFIG_PACKAGE_libelf=y # CONFIG_PACKAGE_libesmtp is not set # CONFIG_PACKAGE_libestr is not set # CONFIG_PACKAGE_libev is not set # CONFIG_PACKAGE_libevdev is not set # CONFIG_PACKAGE_libevent2 is not set # CONFIG_PACKAGE_libevent2-core is not set # CONFIG_PACKAGE_libevent2-extra is not set # CONFIG_PACKAGE_libevent2-openssl is not set # CONFIG_PACKAGE_libevent2-pthreads is not set # CONFIG_PACKAGE_libeventlog is not set # CONFIG_PACKAGE_libevhtp is not set # CONFIG_PACKAGE_libexif is not set # CONFIG_PACKAGE_libexpat is not set # CONFIG_PACKAGE_libexslt is not set # CONFIG_PACKAGE_libext2fs is not set # CONFIG_PACKAGE_libextractor is not set # CONFIG_PACKAGE_libf2fs is not set # CONFIG_PACKAGE_libfaad2 is not set # CONFIG_PACKAGE_libfastjson is not set # CONFIG_PACKAGE_libfdisk is not set # CONFIG_PACKAGE_libfdt is not set # CONFIG_PACKAGE_libffi is not set # CONFIG_PACKAGE_libffmpeg-audio-dec is not set # CONFIG_PACKAGE_libffmpeg-custom is not set # CONFIG_PACKAGE_libffmpeg-full is not set # CONFIG_PACKAGE_libffmpeg-mini is not set # CONFIG_PACKAGE_libflac is not set # CONFIG_PACKAGE_libfmt is not set # CONFIG_PACKAGE_libfreetype is not set # CONFIG_PACKAGE_libftdi is not set # CONFIG_PACKAGE_libftdi1 is not set # CONFIG_PACKAGE_libgcrypt is not set # CONFIG_PACKAGE_libgd is not set # CONFIG_PACKAGE_libgdbm is not set # CONFIG_PACKAGE_libgee is not set # CONFIG_PACKAGE_libglpk is not set # CONFIG_PACKAGE_libgmp is not set # CONFIG_PACKAGE_libgnurl is not set # CONFIG_PACKAGE_libgpg-error is not set # CONFIG_PACKAGE_libgphoto2 is not set # CONFIG_PACKAGE_libgpiod is not set # CONFIG_PACKAGE_libgps is not set # CONFIG_PACKAGE_libhamlib is not set # CONFIG_PACKAGE_libhavege is not set # CONFIG_PACKAGE_libhiredis is not set # CONFIG_PACKAGE_libhttp-parser is not set # CONFIG_PACKAGE_libhwloc is not set # CONFIG_PACKAGE_libical is not set # CONFIG_PACKAGE_libiconv is not set # CONFIG_PACKAGE_libiconv-full is not set # CONFIG_PACKAGE_libid3tag is not set # CONFIG_PACKAGE_libidn is not set # CONFIG_PACKAGE_libidn2 is not set # CONFIG_PACKAGE_libiio is not set # CONFIG_PACKAGE_libimobiledevice is not set # CONFIG_PACKAGE_libinotifytools is not set # CONFIG_PACKAGE_libinput is not set # CONFIG_PACKAGE_libintl is not set # CONFIG_PACKAGE_libintl-full is not set # CONFIG_PACKAGE_libiw is not set CONFIG_PACKAGE_libiwinfo=y # CONFIG_PACKAGE_libjpeg is not set CONFIG_PACKAGE_libjson-c=y # CONFIG_PACKAGE_libkeyutils is not set # CONFIG_PACKAGE_libkmod is not set # CONFIG_PACKAGE_libldns is not set # CONFIG_PACKAGE_libltdl is not set CONFIG_PACKAGE_liblua=y # CONFIG_PACKAGE_liblz4 is not set # CONFIG_PACKAGE_liblzo is not set # CONFIG_PACKAGE_libmad is not set # CONFIG_PACKAGE_libmagic is not set # CONFIG_PACKAGE_libmariadb is not set # CONFIG_PACKAGE_libmaxminddb is not set # CONFIG_PACKAGE_libmbim is not set # CONFIG_PACKAGE_libmcrypt is not set # CONFIG_PACKAGE_libmicrohttpd-no-ssl is not set # CONFIG_PACKAGE_libmicrohttpd-ssl is not set # CONFIG_PACKAGE_libmilter-sendmail is not set # CONFIG_PACKAGE_libminiupnpc is not set # CONFIG_PACKAGE_libmms is not set CONFIG_PACKAGE_libmnl=y # CONFIG_PACKAGE_libmodbus is not set # CONFIG_PACKAGE_libmosquitto-nossl is not set # CONFIG_PACKAGE_libmosquitto-ssl is not set # CONFIG_PACKAGE_libmount is not set # CONFIG_PACKAGE_libmpdclient is not set # CONFIG_PACKAGE_libmpeg2 is not set # CONFIG_PACKAGE_libmpg123 is not set # CONFIG_PACKAGE_libmraa is not set # CONFIG_PACKAGE_libnatpmp is not set # CONFIG_PACKAGE_libncurses is not set # CONFIG_PACKAGE_libndpi is not set # CONFIG_PACKAGE_libneon is not set # CONFIG_PACKAGE_libnet-1.2.x is not set # CONFIG_PACKAGE_libnetconf2 is not set # CONFIG_PACKAGE_libnetfilter-acct is not set # CONFIG_PACKAGE_libnetfilter-conntrack is not set # CONFIG_PACKAGE_libnetfilter-cthelper is not set # CONFIG_PACKAGE_libnetfilter-cttimeout is not set # CONFIG_PACKAGE_libnetfilter-log is not set # CONFIG_PACKAGE_libnetfilter-queue is not set # CONFIG_PACKAGE_libnetsnmp is not set # CONFIG_PACKAGE_libnettle is not set # CONFIG_PACKAGE_libnfnetlink is not set # CONFIG_PACKAGE_libnftnl is not set # CONFIG_PACKAGE_libnghttp2 is not set # CONFIG_PACKAGE_libnl is not set # CONFIG_PACKAGE_libnl-core is not set # CONFIG_PACKAGE_libnl-genl is not set # CONFIG_PACKAGE_libnl-nf is not set # CONFIG_PACKAGE_libnl-route is not set CONFIG_PACKAGE_libnl-tiny=y # CONFIG_PACKAGE_libnopoll is not set # CONFIG_PACKAGE_libogg is not set # CONFIG_PACKAGE_liboil is not set # CONFIG_PACKAGE_libopcodes is not set # CONFIG_PACKAGE_libopendkim is not set # CONFIG_PACKAGE_libopenobex is not set # CONFIG_PACKAGE_libopensc is not set # CONFIG_PACKAGE_libopenzwave is not set # CONFIG_PACKAGE_liboping is not set # CONFIG_PACKAGE_libopus is not set # CONFIG_PACKAGE_libout123 is not set # CONFIG_PACKAGE_libowfat is not set # CONFIG_PACKAGE_libp11 is not set # CONFIG_PACKAGE_libpagekite is not set # CONFIG_PACKAGE_libpam is not set # CONFIG_PACKAGE_libpcap is not set # CONFIG_PACKAGE_libpciaccess is not set CONFIG_PACKAGE_libpcre=y # CONFIG_PACKAGE_libpcre16 is not set # CONFIG_PACKAGE_libpcre2 is not set # CONFIG_PACKAGE_libpcre2-16 is not set # CONFIG_PACKAGE_libpcre2-32 is not set # CONFIG_PACKAGE_libpcrecpp is not set # CONFIG_PACKAGE_libpcsclite is not set # CONFIG_PACKAGE_libpkcs11-spy is not set # CONFIG_PACKAGE_libplist is not set # CONFIG_PACKAGE_libplistcxx is not set # CONFIG_PACKAGE_libpng is not set # CONFIG_PACKAGE_libpopt is not set # CONFIG_PACKAGE_libprotobuf-c is not set # CONFIG_PACKAGE_libqmi is not set # CONFIG_PACKAGE_libqrencode is not set # CONFIG_PACKAGE_libradcli is not set # CONFIG_PACKAGE_libreadline is not set # CONFIG_PACKAGE_libredblack is not set # CONFIG_PACKAGE_librouteros is not set # CONFIG_PACKAGE_libroxml is not set # CONFIG_PACKAGE_librpc is not set # CONFIG_PACKAGE_librrd1 is not set # CONFIG_PACKAGE_librtlsdr is not set # CONFIG_PACKAGE_libruby is not set # CONFIG_PACKAGE_libsamplerate is not set # CONFIG_PACKAGE_libsane is not set # CONFIG_PACKAGE_libsasl2 is not set # CONFIG_PACKAGE_libsearpc is not set # CONFIG_PACKAGE_libseccomp is not set # CONFIG_PACKAGE_libsensors is not set # CONFIG_PACKAGE_libshout is not set # CONFIG_PACKAGE_libshout-full is not set # CONFIG_PACKAGE_libshout-nossl is not set # CONFIG_PACKAGE_libsigcxx is not set # CONFIG_PACKAGE_libsmartcols is not set # CONFIG_PACKAGE_libsndfile is not set # CONFIG_PACKAGE_libsoc is not set # CONFIG_PACKAGE_libsocks is not set # CONFIG_PACKAGE_libsodium is not set # CONFIG_PACKAGE_libsoup is not set # CONFIG_PACKAGE_libsoxr is not set # CONFIG_PACKAGE_libspeex is not set # CONFIG_PACKAGE_libspeexdsp is not set # CONFIG_PACKAGE_libspice-server is not set # CONFIG_PACKAGE_libss is not set # CONFIG_PACKAGE_libssh is not set # CONFIG_PACKAGE_libssh2 is not set # CONFIG_PACKAGE_libstoken is not set # CONFIG_PACKAGE_libstrophe is not set # CONFIG_PACKAGE_libtalloc is not set # CONFIG_PACKAGE_libtasn1 is not set # CONFIG_PACKAGE_libtheora is not set # CONFIG_PACKAGE_libtiff is not set # CONFIG_PACKAGE_libtiffxx is not set # CONFIG_PACKAGE_libtins is not set # CONFIG_PACKAGE_libtirpc is not set # CONFIG_PACKAGE_libtorrent is not set CONFIG_PACKAGE_libubox=y # CONFIG_PACKAGE_libubox-lua is not set CONFIG_PACKAGE_libubus=y CONFIG_PACKAGE_libubus-lua=y CONFIG_PACKAGE_libuci=y CONFIG_PACKAGE_libuci-lua=y CONFIG_PACKAGE_libuclient=y # CONFIG_PACKAGE_libudev-fbsd is not set # CONFIG_PACKAGE_libudns is not set # CONFIG_PACKAGE_libuecc is not set # CONFIG_PACKAGE_libugpio is not set # CONFIG_PACKAGE_libunistring is not set # CONFIG_PACKAGE_libunwind is not set # CONFIG_PACKAGE_libupnp is not set # CONFIG_PACKAGE_libupnpp is not set # CONFIG_PACKAGE_liburcu is not set # CONFIG_PACKAGE_libusb-1.0 is not set # CONFIG_PACKAGE_libusb-compat is not set # CONFIG_PACKAGE_libusbmuxd is not set # CONFIG_PACKAGE_libustream-mbedtls is not set CONFIG_PACKAGE_libustream-openssl=y # CONFIG_PACKAGE_libustream-wolfssl is not set CONFIG_PACKAGE_libuuid=y # CONFIG_PACKAGE_libuv is not set # CONFIG_PACKAGE_libuvc is not set # CONFIG_PACKAGE_libv4l is not set # CONFIG_PACKAGE_libvorbis is not set # CONFIG_PACKAGE_libvorbisidec is not set # CONFIG_PACKAGE_libvpx is not set # CONFIG_PACKAGE_libwebcam is not set # CONFIG_PACKAGE_libwebsockets-full is not set # CONFIG_PACKAGE_libwebsockets-mbedtls is not set # CONFIG_PACKAGE_libwebsockets-openssl is not set # CONFIG_PACKAGE_libwrap is not set # CONFIG_PACKAGE_libwxbase is not set # CONFIG_PACKAGE_libx264 is not set # CONFIG_PACKAGE_libxerces-c is not set # CONFIG_PACKAGE_libxerces-c-samples is not set # CONFIG_PACKAGE_libxml2 is not set # CONFIG_PACKAGE_libxslt is not set # CONFIG_PACKAGE_libyaml-cpp is not set # CONFIG_PACKAGE_libyang is not set # CONFIG_PACKAGE_libzdb is not set # CONFIG_PACKAGE_libzmq-curve is not set # CONFIG_PACKAGE_libzmq-nc is not set # CONFIG_PACKAGE_linux-atm is not set # CONFIG_PACKAGE_loudmouth is not set # CONFIG_PACKAGE_lttng-ust is not set # CONFIG_PACKAGE_mtdev is not set # CONFIG_PACKAGE_musl-fts is not set # CONFIG_PACKAGE_mxml is not set # CONFIG_PACKAGE_nacl is not set # CONFIG_PACKAGE_oniguruma is not set # CONFIG_PACKAGE_opencv is not set # CONFIG_PACKAGE_p11-kit is not set # CONFIG_PACKAGE_pixman is not set # CONFIG_PACKAGE_poco is not set # CONFIG_PACKAGE_protobuf is not set # CONFIG_PACKAGE_protobuf-lite is not set # CONFIG_PACKAGE_pthsem is not set # CONFIG_PACKAGE_rblibtorrent is not set CONFIG_PACKAGE_rpcd-mod-rrdns=y # CONFIG_PACKAGE_rxtx is not set # CONFIG_PACKAGE_sbc is not set # CONFIG_PACKAGE_spice-protocol is not set # CONFIG_PACKAGE_terminfo is not set # CONFIG_PACKAGE_tinycdb is not set # CONFIG_PACKAGE_uclibcxx is not set # CONFIG_PACKAGE_uw-imap is not set # CONFIG_PACKAGE_xmlrpc-c is not set # CONFIG_PACKAGE_xmlrpc-c-client is not set # CONFIG_PACKAGE_xmlrpc-c-server is not set # CONFIG_PACKAGE_yajl is not set CONFIG_PACKAGE_zlib=y # # Configuration # # CONFIG_ZLIB_OPTIMIZE_SPEED is not set # # LuCI # # # 1. Collections # CONFIG_PACKAGE_luci=y # CONFIG_PACKAGE_luci-nginx is not set # CONFIG_PACKAGE_luci-ssl-nginx is not set # CONFIG_PACKAGE_luci-ssl-openssl is not set # # 2. Modules # CONFIG_PACKAGE_luci-base=y CONFIG_LUCI_SRCDIET=y # # Translations # # CONFIG_LUCI_LANG_hu is not set # CONFIG_LUCI_LANG_pt is not set # CONFIG_LUCI_LANG_sk is not set # CONFIG_LUCI_LANG_ko is not set # CONFIG_LUCI_LANG_en is not set # CONFIG_LUCI_LANG_el is not set # CONFIG_LUCI_LANG_uk is not set # CONFIG_LUCI_LANG_ja is not set # CONFIG_LUCI_LANG_vi is not set # CONFIG_LUCI_LANG_he is not set # CONFIG_LUCI_LANG_no is not set # CONFIG_LUCI_LANG_ms is not set # CONFIG_LUCI_LANG_pl is not set CONFIG_LUCI_LANG_zh-cn=y # CONFIG_LUCI_LANG_ro is not set # CONFIG_LUCI_LANG_de is not set # CONFIG_LUCI_LANG_zh-tw is not set # CONFIG_LUCI_LANG_tr is not set # CONFIG_LUCI_LANG_sv is not set # CONFIG_LUCI_LANG_ru is not set # CONFIG_LUCI_LANG_pt-br is not set # CONFIG_LUCI_LANG_ca is not set # CONFIG_LUCI_LANG_es is not set # CONFIG_LUCI_LANG_cs is not set # CONFIG_LUCI_LANG_fr is not set # CONFIG_LUCI_LANG_it is not set CONFIG_PACKAGE_luci-mod-admin-full=y # CONFIG_PACKAGE_luci-mod-failsafe is not set # CONFIG_PACKAGE_luci-mod-freifunk is not set # CONFIG_PACKAGE_luci-mod-freifunk-community is not set # CONFIG_PACKAGE_luci-mod-rpc is not set # # 3. Applications # # CONFIG_PACKAGE_luci-app-accesscontrol is not set # CONFIG_PACKAGE_luci-app-acme is not set # CONFIG_PACKAGE_luci-app-adblock is not set # CONFIG_PACKAGE_luci-app-adbyby-plus is not set # CONFIG_PACKAGE_luci-app-advanced-reboot is not set # CONFIG_PACKAGE_luci-app-ahcp is not set # CONFIG_PACKAGE_luci-app-airplay2 is not set # CONFIG_PACKAGE_luci-app-amule is not set # CONFIG_PACKAGE_luci-app-aria2 is not set # CONFIG_PACKAGE_luci-app-arpbind is not set # CONFIG_PACKAGE_luci-app-asterisk is not set # CONFIG_PACKAGE_luci-app-attendedsysupgrade is not set CONFIG_PACKAGE_luci-app-autoreboot=y # CONFIG_PACKAGE_luci-app-baidupcs-web is not set # CONFIG_PACKAGE_luci-app-bcp38 is not set # CONFIG_PACKAGE_luci-app-bird1-ipv4 is not set # CONFIG_PACKAGE_luci-app-bird1-ipv6 is not set # CONFIG_PACKAGE_luci-app-bmx6 is not set # CONFIG_PACKAGE_luci-app-bmx7 is not set # CONFIG_PACKAGE_luci-app-cifs-mount is not set # CONFIG_PACKAGE_luci-app-cifsd is not set # CONFIG_PACKAGE_luci-app-cjdns is not set # CONFIG_PACKAGE_luci-app-clamav is not set # CONFIG_PACKAGE_luci-app-commands is not set # CONFIG_PACKAGE_luci-app-cshark is not set # CONFIG_PACKAGE_luci-app-ddns is not set # CONFIG_PACKAGE_luci-app-diag-core is not set # CONFIG_PACKAGE_luci-app-diskman is not set # CONFIG_PACKAGE_luci-app-diskman_INCLUDE_btrfs_progs is not set # CONFIG_PACKAGE_luci-app-diskman_INCLUDE_lsblk is not set # CONFIG_PACKAGE_luci-app-diskman_INCLUDE_mdadm is not set # CONFIG_PACKAGE_luci-app-diskman_INCLUDE_kmod_md_raid456 is not set # CONFIG_PACKAGE_luci-app-diskman_INCLUDE_kmod_md_linear is not set # CONFIG_PACKAGE_luci-app-dnscrypt-proxy is not set # CONFIG_PACKAGE_luci-app-dump1090 is not set # CONFIG_PACKAGE_luci-app-dynapoint is not set # CONFIG_PACKAGE_luci-app-e2guardian is not set # CONFIG_PACKAGE_luci-app-familycloud is not set # CONFIG_PACKAGE_luci-app-filetransfer is not set CONFIG_PACKAGE_luci-app-firewall=y # CONFIG_PACKAGE_luci-app-freifunk-diagnostics is not set # CONFIG_PACKAGE_luci-app-freifunk-policyrouting is not set # CONFIG_PACKAGE_luci-app-freifunk-widgets is not set # CONFIG_PACKAGE_luci-app-frpc is not set # CONFIG_PACKAGE_luci-app-frps is not set # CONFIG_PACKAGE_luci-app-fwknopd is not set # CONFIG_PACKAGE_luci-app-guest-wifi is not set # CONFIG_PACKAGE_luci-app-haproxy-tcp is not set # CONFIG_PACKAGE_luci-app-hd-idle is not set # CONFIG_PACKAGE_luci-app-hnet is not set # CONFIG_PACKAGE_luci-app-ipsec-vpnd is not set # CONFIG_PACKAGE_luci-app-kodexplorer is not set # CONFIG_PACKAGE_luci-app-lxc is not set # CONFIG_PACKAGE_luci-app-meshwizard is not set # CONFIG_PACKAGE_luci-app-minidlna is not set # CONFIG_PACKAGE_luci-app-mjpg-streamer is not set # CONFIG_PACKAGE_luci-app-mtwifi is not set # CONFIG_PACKAGE_luci-app-music-remote-center is not set # CONFIG_PACKAGE_luci-app-mwan3 is not set # CONFIG_PACKAGE_luci-app-mwan3helper is not set # CONFIG_PACKAGE_luci-app-n2n_v2 is not set # CONFIG_PACKAGE_luci-app-netdata is not set # CONFIG_PACKAGE_luci-app-nfs is not set # CONFIG_PACKAGE_luci-app-nft-qos is not set # CONFIG_PACKAGE_luci-app-nlbwmon is not set # CONFIG_PACKAGE_luci-app-noddos is not set # CONFIG_PACKAGE_luci-app-nps is not set # CONFIG_PACKAGE_luci-app-ntpc is not set # CONFIG_PACKAGE_luci-app-ocserv is not set # CONFIG_PACKAGE_luci-app-olsr is not set # CONFIG_PACKAGE_luci-app-olsr-services is not set # CONFIG_PACKAGE_luci-app-olsr-viz is not set # CONFIG_PACKAGE_luci-app-openvpn is not set # CONFIG_PACKAGE_luci-app-openvpn-server is not set # CONFIG_PACKAGE_luci-app-p910nd is not set # CONFIG_PACKAGE_luci-app-pagekitec is not set # CONFIG_PACKAGE_luci-app-polipo is not set # CONFIG_PACKAGE_luci-app-pppoe-relay is not set # CONFIG_PACKAGE_luci-app-privoxy is not set # CONFIG_PACKAGE_luci-app-ps3netsrv is not set # CONFIG_PACKAGE_luci-app-qbittorrent is not set # CONFIG_PACKAGE_luci-app-qos is not set # CONFIG_PACKAGE_luci-app-radicale is not set CONFIG_PACKAGE_luci-app-ramfree=y # CONFIG_PACKAGE_luci-app-rclone is not set # CONFIG_PACKAGE_luci-app-rp-pppoe-server is not set # CONFIG_PACKAGE_luci-app-samba is not set # CONFIG_PACKAGE_luci-app-samba4 is not set CONFIG_PACKAGE_luci-app-sfe=y # CONFIG_PACKAGE_luci-app-shadowsocks-libev is not set # CONFIG_PACKAGE_luci-app-shairplay is not set # CONFIG_PACKAGE_luci-app-siitwizard is not set # CONFIG_PACKAGE_luci-app-simple-adblock is not set # CONFIG_PACKAGE_luci-app-softethervpn is not set # CONFIG_PACKAGE_luci-app-splash is not set # CONFIG_PACKAGE_luci-app-sqm is not set # CONFIG_PACKAGE_luci-app-squid is not set # CONFIG_PACKAGE_luci-app-ssrserver-python is not set # CONFIG_PACKAGE_luci-app-statistics is not set # CONFIG_PACKAGE_luci-app-syncdial is not set # CONFIG_PACKAGE_luci-app-tinyproxy is not set # CONFIG_PACKAGE_luci-app-transmission is not set # CONFIG_PACKAGE_luci-app-travelmate is not set # CONFIG_PACKAGE_luci-app-ttyd is not set # CONFIG_PACKAGE_luci-app-udpxy is not set # CONFIG_PACKAGE_luci-app-uhttpd is not set # CONFIG_PACKAGE_luci-app-unblockmusic is not set # CONFIG_UnblockNeteaseMusic_Go is not set # CONFIG_UnblockNeteaseMusic_NodeJS is not set # CONFIG_PACKAGE_luci-app-unbound is not set # CONFIG_PACKAGE_luci-app-upnp is not set # CONFIG_PACKAGE_luci-app-usb-printer is not set CONFIG_PACKAGE_luci-app-v2ray-server=y # CONFIG_PACKAGE_luci-app-verysync is not set # CONFIG_PACKAGE_luci-app-vlmcsd is not set # CONFIG_PACKAGE_luci-app-vnstat is not set # CONFIG_PACKAGE_luci-app-vpnbypass is not set # CONFIG_PACKAGE_luci-app-vsftpd is not set # CONFIG_PACKAGE_luci-app-watchcat is not set # CONFIG_PACKAGE_luci-app-webadmin is not set # CONFIG_PACKAGE_luci-app-wifischedule is not set # CONFIG_PACKAGE_luci-app-wireguard is not set # CONFIG_PACKAGE_luci-app-wol is not set # CONFIG_PACKAGE_luci-app-wrtbwmon is not set # CONFIG_PACKAGE_luci-app-xlnetacc is not set # CONFIG_PACKAGE_luci-app-zerotier is not set # # 4. Themes # # CONFIG_PACKAGE_luci-theme-argon is not set CONFIG_PACKAGE_luci-theme-bootstrap=y # CONFIG_PACKAGE_luci-theme-material is not set CONFIG_PACKAGE_luci-theme-netgear=y # # 5. Protocols # # CONFIG_PACKAGE_luci-proto-3g is not set # CONFIG_PACKAGE_luci-proto-bonding is not set # CONFIG_PACKAGE_luci-proto-ipip is not set # CONFIG_PACKAGE_luci-proto-ipv6 is not set # CONFIG_PACKAGE_luci-proto-ncm is not set # CONFIG_PACKAGE_luci-proto-openconnect is not set CONFIG_PACKAGE_luci-proto-ppp=y # CONFIG_PACKAGE_luci-proto-qmi is not set # CONFIG_PACKAGE_luci-proto-relay is not set # CONFIG_PACKAGE_luci-proto-vpnc is not set # CONFIG_PACKAGE_luci-proto-wireguard is not set # # 6. Libraries # # CONFIG_PACKAGE_luci-lib-docker is not set # CONFIG_PACKAGE_luci-lib-dracula is not set # CONFIG_PACKAGE_luci-lib-httpclient is not set # CONFIG_PACKAGE_luci-lib-httpprotoutils is not set CONFIG_PACKAGE_luci-lib-ip=y # CONFIG_PACKAGE_luci-lib-iptparser is not set # CONFIG_PACKAGE_luci-lib-jquery-1-4 is not set # CONFIG_PACKAGE_luci-lib-json is not set CONFIG_PACKAGE_luci-lib-jsonc=y # CONFIG_PACKAGE_luci-lib-luaneightbl is not set CONFIG_PACKAGE_luci-lib-nixio=y # CONFIG_PACKAGE_luci-lib-px5g is not set # # 9. Freifunk # # CONFIG_PACKAGE_freifunk-common is not set # CONFIG_PACKAGE_freifunk-firewall is not set # CONFIG_PACKAGE_freifunk-policyrouting is not set # CONFIG_PACKAGE_freifunk-watchdog is not set # CONFIG_PACKAGE_meshwizard is not set CONFIG_PACKAGE_default-settings=y CONFIG_PACKAGE_luci-i18n-autoreboot-zh-cn=y # CONFIG_PACKAGE_luci-i18n-base-ca is not set # CONFIG_PACKAGE_luci-i18n-base-cs is not set # CONFIG_PACKAGE_luci-i18n-base-de is not set # CONFIG_PACKAGE_luci-i18n-base-el is not set # CONFIG_PACKAGE_luci-i18n-base-en is not set # CONFIG_PACKAGE_luci-i18n-base-es is not set # CONFIG_PACKAGE_luci-i18n-base-fr is not set # CONFIG_PACKAGE_luci-i18n-base-he is not set # CONFIG_PACKAGE_luci-i18n-base-hu is not set # CONFIG_PACKAGE_luci-i18n-base-it is not set # CONFIG_PACKAGE_luci-i18n-base-ja is not set # CONFIG_PACKAGE_luci-i18n-base-ko is not set # CONFIG_PACKAGE_luci-i18n-base-ms is not set # CONFIG_PACKAGE_luci-i18n-base-no is not set # CONFIG_PACKAGE_luci-i18n-base-pl is not set # CONFIG_PACKAGE_luci-i18n-base-pt is not set # CONFIG_PACKAGE_luci-i18n-base-pt-br is not set # CONFIG_PACKAGE_luci-i18n-base-ro is not set # CONFIG_PACKAGE_luci-i18n-base-ru is not set # CONFIG_PACKAGE_luci-i18n-base-sk is not set # CONFIG_PACKAGE_luci-i18n-base-sv is not set # CONFIG_PACKAGE_luci-i18n-base-tr is not set # CONFIG_PACKAGE_luci-i18n-base-uk is not set # CONFIG_PACKAGE_luci-i18n-base-vi is not set CONFIG_PACKAGE_luci-i18n-base-zh-cn=y # CONFIG_PACKAGE_luci-i18n-base-zh-tw is not set # CONFIG_PACKAGE_luci-i18n-firewall-ca is not set # CONFIG_PACKAGE_luci-i18n-firewall-cs is not set # CONFIG_PACKAGE_luci-i18n-firewall-de is not set # CONFIG_PACKAGE_luci-i18n-firewall-el is not set # CONFIG_PACKAGE_luci-i18n-firewall-en is not set # CONFIG_PACKAGE_luci-i18n-firewall-es is not set # CONFIG_PACKAGE_luci-i18n-firewall-fr is not set # CONFIG_PACKAGE_luci-i18n-firewall-he is not set # CONFIG_PACKAGE_luci-i18n-firewall-hu is not set # CONFIG_PACKAGE_luci-i18n-firewall-it is not set # CONFIG_PACKAGE_luci-i18n-firewall-ja is not set # CONFIG_PACKAGE_luci-i18n-firewall-ko is not set # CONFIG_PACKAGE_luci-i18n-firewall-ms is not set # CONFIG_PACKAGE_luci-i18n-firewall-no is not set # CONFIG_PACKAGE_luci-i18n-firewall-pl is not set # CONFIG_PACKAGE_luci-i18n-firewall-pt is not set # CONFIG_PACKAGE_luci-i18n-firewall-pt-br is not set # CONFIG_PACKAGE_luci-i18n-firewall-ro is not set # CONFIG_PACKAGE_luci-i18n-firewall-ru is not set # CONFIG_PACKAGE_luci-i18n-firewall-sk is not set # CONFIG_PACKAGE_luci-i18n-firewall-sv is not set # CONFIG_PACKAGE_luci-i18n-firewall-tr is not set # CONFIG_PACKAGE_luci-i18n-firewall-uk is not set # CONFIG_PACKAGE_luci-i18n-firewall-vi is not set CONFIG_PACKAGE_luci-i18n-firewall-zh-cn=y # CONFIG_PACKAGE_luci-i18n-firewall-zh-tw is not set CONFIG_PACKAGE_luci-i18n-ramfree-zh-cn=y CONFIG_PACKAGE_luci-i18n-sfe-zh-cn=y CONFIG_PACKAGE_luci-i18n-v2ray-server-zh-cn=y # # Mail # # CONFIG_PACKAGE_alpine is not set # CONFIG_PACKAGE_alpine-nossl is not set # CONFIG_PACKAGE_bogofilter is not set # CONFIG_PACKAGE_clamsmtp is not set # CONFIG_PACKAGE_dovecot is not set # CONFIG_PACKAGE_dovecot-pigeonhole is not set # CONFIG_PACKAGE_dovecot-utils is not set # CONFIG_PACKAGE_emailrelay is not set # CONFIG_PACKAGE_fdm is not set # CONFIG_PACKAGE_greyfix is not set # CONFIG_PACKAGE_mailman is not set # CONFIG_PACKAGE_mailsend is not set # CONFIG_PACKAGE_mailsend-nossl is not set # CONFIG_PACKAGE_msmtp is not set # CONFIG_PACKAGE_msmtp-nossl is not set # CONFIG_PACKAGE_mutt is not set # CONFIG_PACKAGE_nail is not set # CONFIG_PACKAGE_opendkim is not set # CONFIG_PACKAGE_opendkim-tools is not set # CONFIG_PACKAGE_postfix is not set # # Select postfix build options # CONFIG_POSTFIX_TLS=y CONFIG_POSTFIX_SASL=y CONFIG_POSTFIX_LDAP=y # CONFIG_POSTFIX_DB is not set CONFIG_POSTFIX_CDB=y CONFIG_POSTFIX_SQLITE=y # CONFIG_POSTFIX_PGSQL is not set CONFIG_POSTFIX_PCRE=y # CONFIG_POSTFIX_EAI is not set # CONFIG_PACKAGE_ssmtp is not set # # Multimedia # # # Streaming # # CONFIG_PACKAGE_oggfwd is not set # CONFIG_PACKAGE_crtmpserver is not set # CONFIG_PACKAGE_ffmpeg is not set # CONFIG_PACKAGE_ffprobe is not set # CONFIG_PACKAGE_ffserver is not set # CONFIG_PACKAGE_fswebcam is not set # CONFIG_PACKAGE_gmediarender is not set # CONFIG_PACKAGE_gphoto2 is not set # CONFIG_PACKAGE_grilo is not set # CONFIG_PACKAGE_grilo-plugins is not set # CONFIG_PACKAGE_gst1-libav is not set # CONFIG_PACKAGE_gstreamer1-libs is not set # CONFIG_PACKAGE_gstreamer1-plugins-bad is not set # CONFIG_PACKAGE_gstreamer1-plugins-base is not set # CONFIG_PACKAGE_gstreamer1-plugins-good is not set # CONFIG_PACKAGE_gstreamer1-plugins-ugly is not set # CONFIG_PACKAGE_gstreamer1-utils is not set # CONFIG_PACKAGE_icecast is not set # CONFIG_PACKAGE_lcdgrilo is not set # CONFIG_PACKAGE_minidlna is not set # CONFIG_PACKAGE_mjpg-streamer is not set # CONFIG_PACKAGE_motion is not set # CONFIG_PACKAGE_tvheadend is not set # CONFIG_PACKAGE_v4l2rtspserver is not set # CONFIG_PACKAGE_vips is not set # CONFIG_PACKAGE_xupnpd is not set # CONFIG_PACKAGE_youtube-dl is not set # # Network # # # BitTorrent # # CONFIG_PACKAGE_mktorrent is not set # CONFIG_PACKAGE_opentracker is not set # CONFIG_PACKAGE_opentracker6 is not set # CONFIG_PACKAGE_qBittorrent is not set # CONFIG_PACKAGE_rtorrent is not set # CONFIG_PACKAGE_rtorrent-rpc is not set # CONFIG_PACKAGE_transmission-cli-openssl is not set # CONFIG_PACKAGE_transmission-daemon-openssl is not set # CONFIG_PACKAGE_transmission-remote-openssl is not set # CONFIG_PACKAGE_transmission-web is not set # CONFIG_PACKAGE_transmission-web-control is not set # # Captive Portals # # CONFIG_PACKAGE_coova-chilli is not set # CONFIG_PACKAGE_nodogsplash is not set # CONFIG_PACKAGE_wifidog is not set # CONFIG_PACKAGE_wifidog-ng-mbedtls is not set # CONFIG_PACKAGE_wifidog-ng-nossl is not set # CONFIG_PACKAGE_wifidog-ng-openssl is not set # CONFIG_PACKAGE_wifidog-ng-wolfssl is not set # CONFIG_PACKAGE_wifidog-tls is not set # # Cloud Manager # # CONFIG_PACKAGE_rclone-ng is not set # CONFIG_PACKAGE_rclone-webui-react is not set # # Download Manager # # CONFIG_PACKAGE_ariang is not set # CONFIG_PACKAGE_webui-aria2 is not set # CONFIG_PACKAGE_yaaw is not set # # File Transfer # # CONFIG_PACKAGE_aria2 is not set # CONFIG_PACKAGE_atftp is not set # CONFIG_PACKAGE_atftpd is not set # CONFIG_PACKAGE_curl is not set # CONFIG_PACKAGE_gnurl is not set # CONFIG_PACKAGE_lftp is not set # CONFIG_PACKAGE_ps3netsrv is not set # CONFIG_PACKAGE_rosy-file-server is not set # CONFIG_PACKAGE_rsync is not set # CONFIG_PACKAGE_rsyncd is not set # CONFIG_PACKAGE_vsftpd is not set CONFIG_PACKAGE_vsftpd-alt=y CONFIG_VSFTPD_USE_UCI_SCRIPTS=y # CONFIG_PACKAGE_vsftpd-tls is not set CONFIG_PACKAGE_wget=y # CONFIG_PACKAGE_wget-nossl is not set # # Filesystem # # CONFIG_PACKAGE_davfs2 is not set # CONFIG_PACKAGE_ksmbd-avahi-service is not set # CONFIG_PACKAGE_ksmbd-server is not set # CONFIG_PACKAGE_ksmbd-utils is not set # CONFIG_PACKAGE_netatalk is not set # CONFIG_PACKAGE_nfs-kernel-server is not set # CONFIG_PACKAGE_owftpd is not set # CONFIG_PACKAGE_owhttpd is not set # CONFIG_PACKAGE_owserver is not set # CONFIG_PACKAGE_sshfs is not set # # Firewall # # CONFIG_PACKAGE_arptables is not set # CONFIG_PACKAGE_conntrack is not set # CONFIG_PACKAGE_conntrackd is not set # CONFIG_PACKAGE_ebtables is not set # CONFIG_PACKAGE_fwknop is not set # CONFIG_PACKAGE_fwknopd is not set # CONFIG_PACKAGE_ip6tables is not set CONFIG_PACKAGE_iptables=y # CONFIG_IPTABLES_CONNLABEL is not set # CONFIG_IPTABLES_NFTABLES is not set # CONFIG_PACKAGE_iptables-mod-account is not set # CONFIG_PACKAGE_iptables-mod-chaos is not set # CONFIG_PACKAGE_iptables-mod-checksum is not set # CONFIG_PACKAGE_iptables-mod-cluster is not set # CONFIG_PACKAGE_iptables-mod-clusterip is not set # CONFIG_PACKAGE_iptables-mod-condition is not set # CONFIG_PACKAGE_iptables-mod-conntrack-extra is not set # CONFIG_PACKAGE_iptables-mod-delude is not set # CONFIG_PACKAGE_iptables-mod-dhcpmac is not set # CONFIG_PACKAGE_iptables-mod-dnetmap is not set # CONFIG_PACKAGE_iptables-mod-extra is not set # CONFIG_PACKAGE_iptables-mod-filter is not set CONFIG_PACKAGE_iptables-mod-fullconenat=y # CONFIG_PACKAGE_iptables-mod-fuzzy is not set # CONFIG_PACKAGE_iptables-mod-geoip is not set # CONFIG_PACKAGE_iptables-mod-hashlimit is not set # CONFIG_PACKAGE_iptables-mod-iface is not set # CONFIG_PACKAGE_iptables-mod-ipmark is not set # CONFIG_PACKAGE_iptables-mod-ipopt is not set # CONFIG_PACKAGE_iptables-mod-ipp2p is not set # CONFIG_PACKAGE_iptables-mod-iprange is not set # CONFIG_PACKAGE_iptables-mod-ipsec is not set # CONFIG_PACKAGE_iptables-mod-ipv4options is not set # CONFIG_PACKAGE_iptables-mod-led is not set # CONFIG_PACKAGE_iptables-mod-length2 is not set # CONFIG_PACKAGE_iptables-mod-logmark is not set # CONFIG_PACKAGE_iptables-mod-lscan is not set # CONFIG_PACKAGE_iptables-mod-lua is not set # CONFIG_PACKAGE_iptables-mod-nat-extra is not set # CONFIG_PACKAGE_iptables-mod-nflog is not set # CONFIG_PACKAGE_iptables-mod-nfqueue is not set # CONFIG_PACKAGE_iptables-mod-physdev is not set # CONFIG_PACKAGE_iptables-mod-psd is not set # CONFIG_PACKAGE_iptables-mod-quota2 is not set # CONFIG_PACKAGE_iptables-mod-rpfilter is not set # CONFIG_PACKAGE_iptables-mod-sysrq is not set # CONFIG_PACKAGE_iptables-mod-tarpit is not set # CONFIG_PACKAGE_iptables-mod-tee is not set # CONFIG_PACKAGE_iptables-mod-tproxy is not set # CONFIG_PACKAGE_iptables-mod-trace is not set # CONFIG_PACKAGE_iptables-mod-u32 is not set # CONFIG_PACKAGE_iptables-mod-ulog is not set # CONFIG_PACKAGE_iptaccount is not set # CONFIG_PACKAGE_iptgeoip is not set # CONFIG_PACKAGE_miniupnpc is not set CONFIG_PACKAGE_miniupnpd=y # CONFIG_MINIUPNPD_IGDv2 is not set # CONFIG_PACKAGE_natpmpc is not set # CONFIG_PACKAGE_nftables is not set # CONFIG_PACKAGE_shorewall is not set # CONFIG_PACKAGE_shorewall-core is not set # CONFIG_PACKAGE_shorewall-lite is not set # CONFIG_PACKAGE_shorewall6 is not set # CONFIG_PACKAGE_shorewall6-lite is not set # CONFIG_PACKAGE_snort is not set # # Firewall Tunnel # # CONFIG_PACKAGE_iodine is not set # CONFIG_PACKAGE_iodined is not set # # FreeRADIUS (version 3) # # CONFIG_PACKAGE_freeradius3 is not set # CONFIG_PACKAGE_freeradius3-common is not set # CONFIG_PACKAGE_freeradius3-utils is not set # # IP Addresses and Names # # CONFIG_PACKAGE_aggregate is not set # CONFIG_PACKAGE_announce is not set # CONFIG_PACKAGE_avahi-autoipd is not set # CONFIG_PACKAGE_avahi-daemon-service-http is not set # CONFIG_PACKAGE_avahi-daemon-service-ssh is not set # CONFIG_PACKAGE_avahi-dbus-daemon is not set # CONFIG_PACKAGE_avahi-dnsconfd is not set # CONFIG_PACKAGE_avahi-nodbus-daemon is not set # CONFIG_PACKAGE_avahi-utils is not set # CONFIG_PACKAGE_bind-check is not set # CONFIG_PACKAGE_bind-client is not set # CONFIG_PACKAGE_bind-dig is not set # CONFIG_PACKAGE_bind-dnssec is not set # CONFIG_PACKAGE_bind-host is not set # CONFIG_PACKAGE_bind-rndc is not set # CONFIG_PACKAGE_bind-server is not set # CONFIG_PACKAGE_bind-tools is not set # CONFIG_PACKAGE_danish is not set CONFIG_PACKAGE_ddns-scripts=y CONFIG_PACKAGE_ddns-scripts_aliyun=y # CONFIG_PACKAGE_ddns-scripts_cloudflare.com-v4 is not set CONFIG_PACKAGE_ddns-scripts_dnspod=y # CONFIG_PACKAGE_ddns-scripts_freedns_42_pl is not set # CONFIG_PACKAGE_ddns-scripts_godaddy.com-v1 is not set # CONFIG_PACKAGE_ddns-scripts_no-ip_com is not set # CONFIG_PACKAGE_ddns-scripts_nsupdate is not set # CONFIG_PACKAGE_ddns-scripts_route53-v1 is not set # CONFIG_PACKAGE_dhcp-forwarder is not set # CONFIG_PACKAGE_dns2socks is not set # CONFIG_PACKAGE_dnscrypt-proxy is not set # CONFIG_PACKAGE_dnscrypt-proxy-resolvers is not set # CONFIG_PACKAGE_drill is not set # CONFIG_PACKAGE_hostip is not set # CONFIG_PACKAGE_idn is not set # CONFIG_PACKAGE_idn2 is not set # CONFIG_PACKAGE_inadyn is not set # CONFIG_PACKAGE_isc-dhcp-client-ipv4 is not set # CONFIG_PACKAGE_isc-dhcp-client-ipv6 is not set # CONFIG_PACKAGE_isc-dhcp-omshell-ipv4 is not set # CONFIG_PACKAGE_isc-dhcp-omshell-ipv6 is not set # CONFIG_PACKAGE_isc-dhcp-relay-ipv4 is not set # CONFIG_PACKAGE_isc-dhcp-relay-ipv6 is not set # CONFIG_PACKAGE_isc-dhcp-server-ipv4 is not set # CONFIG_PACKAGE_isc-dhcp-server-ipv6 is not set # CONFIG_PACKAGE_kadnode is not set # CONFIG_PACKAGE_knot is not set # CONFIG_PACKAGE_knot-dig is not set # CONFIG_PACKAGE_knot-host is not set # CONFIG_PACKAGE_knot-keymgr is not set # CONFIG_PACKAGE_knot-nsupdate is not set # CONFIG_PACKAGE_knot-tests is not set # CONFIG_PACKAGE_knot-zonecheck is not set # CONFIG_PACKAGE_ldns-examples is not set # CONFIG_PACKAGE_mdns-utils is not set # CONFIG_PACKAGE_mdnsd is not set # CONFIG_PACKAGE_mdnsresponder is not set # CONFIG_PACKAGE_nsd is not set # CONFIG_PACKAGE_nsd-control is not set # CONFIG_PACKAGE_nsd-control-setup is not set # CONFIG_PACKAGE_nsd-nossl is not set # CONFIG_PACKAGE_ohybridproxy is not set # CONFIG_PACKAGE_stubby is not set # CONFIG_PACKAGE_unbound-anchor is not set # CONFIG_PACKAGE_unbound-checkconf is not set # CONFIG_PACKAGE_unbound-control is not set # CONFIG_PACKAGE_unbound-control-setup is not set # CONFIG_PACKAGE_unbound-daemon is not set # CONFIG_PACKAGE_unbound-daemon-heavy is not set # CONFIG_PACKAGE_unbound-host is not set # CONFIG_PACKAGE_wsdd2 is not set # CONFIG_PACKAGE_zonestitcher is not set # # Instant Messaging # # CONFIG_PACKAGE_bitlbee is not set # CONFIG_PACKAGE_irssi is not set # CONFIG_PACKAGE_ngircd is not set # CONFIG_PACKAGE_ngircd-nossl is not set # CONFIG_PACKAGE_prosody is not set # CONFIG_PACKAGE_quassel-irssi is not set # CONFIG_PACKAGE_umurmur-mbedtls is not set # CONFIG_PACKAGE_umurmur-openssl is not set # CONFIG_PACKAGE_znc is not set # # Linux ATM tools # # CONFIG_PACKAGE_atm-aread is not set # CONFIG_PACKAGE_atm-atmaddr is not set # CONFIG_PACKAGE_atm-atmdiag is not set # CONFIG_PACKAGE_atm-atmdump is not set # CONFIG_PACKAGE_atm-atmloop is not set # CONFIG_PACKAGE_atm-atmsigd is not set # CONFIG_PACKAGE_atm-atmswitch is not set # CONFIG_PACKAGE_atm-atmtcp is not set # CONFIG_PACKAGE_atm-awrite is not set # CONFIG_PACKAGE_atm-bus is not set # CONFIG_PACKAGE_atm-debug-tools is not set # CONFIG_PACKAGE_atm-diagnostics is not set # CONFIG_PACKAGE_atm-esi is not set # CONFIG_PACKAGE_atm-ilmid is not set # CONFIG_PACKAGE_atm-ilmidiag is not set # CONFIG_PACKAGE_atm-lecs is not set # CONFIG_PACKAGE_atm-les is not set # CONFIG_PACKAGE_atm-mpcd is not set # CONFIG_PACKAGE_atm-saaldump is not set # CONFIG_PACKAGE_atm-sonetdiag is not set # CONFIG_PACKAGE_atm-svc_recv is not set # CONFIG_PACKAGE_atm-svc_send is not set # CONFIG_PACKAGE_atm-tools is not set # CONFIG_PACKAGE_atm-ttcp_atm is not set # CONFIG_PACKAGE_atm-zeppelin is not set # CONFIG_PACKAGE_br2684ctl is not set # # NMAP Suite # # CONFIG_PACKAGE_ncat is not set # CONFIG_PACKAGE_ncat-ssl is not set # CONFIG_PACKAGE_ndiff is not set # CONFIG_PACKAGE_nmap is not set # CONFIG_PACKAGE_nmap-ssl is not set # CONFIG_PACKAGE_nping is not set # # NTRIP # # CONFIG_PACKAGE_ntripcaster is not set # CONFIG_PACKAGE_ntripclient is not set # CONFIG_PACKAGE_ntripserver is not set # # NeteaseMusic # # CONFIG_PACKAGE_UnblockNeteaseMusic is not set # CONFIG_PACKAGE_UnblockNeteaseMusicGo is not set # # OLSR.org network framework # # CONFIG_PACKAGE_oonf-dlep-proxy is not set # CONFIG_PACKAGE_oonf-dlep-radio is not set # CONFIG_PACKAGE_oonf-init-scripts is not set # CONFIG_PACKAGE_oonf-olsrd2 is not set # # Open vSwitch # # CONFIG_PACKAGE_openvswitch is not set # CONFIG_PACKAGE_openvswitch-ovn-host is not set # CONFIG_PACKAGE_openvswitch-ovn-north is not set # CONFIG_PACKAGE_openvswitch-python is not set # CONFIG_PACKAGE_openvswitch-python3 is not set # # OpenLDAP # # CONFIG_PACKAGE_libopenldap is not set CONFIG_OPENLDAP_DEBUG=y # CONFIG_OPENLDAP_CRYPT is not set # CONFIG_OPENLDAP_MONITOR is not set # CONFIG_OPENLDAP_DB47 is not set # CONFIG_OPENLDAP_ICU is not set # CONFIG_PACKAGE_openldap-server is not set # CONFIG_PACKAGE_openldap-utils is not set # # P2P # # CONFIG_PACKAGE_amule is not set # CONFIG_AMULE_CRYPTOPP_STATIC_LINKING is not set # CONFIG_PACKAGE_antileech is not set # # Printing # # CONFIG_PACKAGE_p910nd is not set # # Project V # CONFIG_PACKAGE_v2ray=y # # V2Ray Configuration # # CONFIG_V2RAY_COMPRESS_GOPROXY is not set # CONFIG_V2RAY_JSON_V2CTL is not set CONFIG_V2RAY_JSON_INTERNAL=y # CONFIG_V2RAY_JSON_NONE is not set CONFIG_V2RAY_EXCLUDE_V2CTL=y CONFIG_V2RAY_EXCLUDE_ASSETS=y CONFIG_V2RAY_COMPRESS_UPX=y CONFIG_V2RAY_DISABLE_NONE=y # CONFIG_V2RAY_DISABLE_CUSTOM is not set # CONFIG_PACKAGE_v2ray-plugin is not set # CONFIG_v2ray-plugin_INCLUDE_GOPROXY is not set # # Routing and Redirection # # CONFIG_PACKAGE_babel-pinger is not set # CONFIG_PACKAGE_babeld is not set # CONFIG_PACKAGE_batmand is not set # CONFIG_PACKAGE_bcp38 is not set # CONFIG_PACKAGE_bird1-ipv4 is not set # CONFIG_PACKAGE_bird1-ipv4-uci is not set # CONFIG_PACKAGE_bird1-ipv6 is not set # CONFIG_PACKAGE_bird1-ipv6-uci is not set # CONFIG_PACKAGE_bird1c-ipv4 is not set # CONFIG_PACKAGE_bird1c-ipv6 is not set # CONFIG_PACKAGE_bird1cl-ipv4 is not set # CONFIG_PACKAGE_bird1cl-ipv6 is not set # CONFIG_PACKAGE_bird2 is not set # CONFIG_PACKAGE_bird2c is not set # CONFIG_PACKAGE_bird2cl is not set # CONFIG_PACKAGE_bmx6 is not set # CONFIG_PACKAGE_bmx7 is not set # CONFIG_PACKAGE_cjdns is not set # CONFIG_PACKAGE_cjdns-tests is not set # CONFIG_PACKAGE_dcwapd is not set # CONFIG_PACKAGE_devlink is not set # CONFIG_PACKAGE_genl is not set # CONFIG_PACKAGE_igmpproxy is not set # CONFIG_PACKAGE_ip-bridge is not set CONFIG_PACKAGE_ip-full=y # CONFIG_PACKAGE_ip-tiny is not set # CONFIG_PACKAGE_lldpd is not set # CONFIG_PACKAGE_mcproxy is not set # CONFIG_PACKAGE_mrmctl is not set # CONFIG_PACKAGE_mwan3 is not set # CONFIG_PACKAGE_nstat is not set # CONFIG_PACKAGE_olsrd is not set # CONFIG_PACKAGE_prince is not set # CONFIG_PACKAGE_quagga is not set # CONFIG_PACKAGE_rdma is not set # CONFIG_PACKAGE_relayd is not set # CONFIG_PACKAGE_ss is not set # CONFIG_PACKAGE_sslh is not set # CONFIG_PACKAGE_tc is not set # CONFIG_PACKAGE_tcpproxy is not set # CONFIG_PACKAGE_vis is not set # # SSH # # CONFIG_PACKAGE_autossh is not set # CONFIG_PACKAGE_openssh-client is not set # CONFIG_PACKAGE_openssh-client-utils is not set # CONFIG_PACKAGE_openssh-keygen is not set # CONFIG_PACKAGE_openssh-moduli is not set # CONFIG_PACKAGE_openssh-server is not set # CONFIG_PACKAGE_openssh-server-pam is not set # CONFIG_PACKAGE_openssh-sftp-avahi-service is not set # CONFIG_PACKAGE_openssh-sftp-client is not set # CONFIG_PACKAGE_openssh-sftp-server is not set # CONFIG_PACKAGE_sshtunnel is not set # # THC-IPv6 attack and analyzing toolkit # # CONFIG_PACKAGE_thc-ipv6-address6 is not set # CONFIG_PACKAGE_thc-ipv6-alive6 is not set # CONFIG_PACKAGE_thc-ipv6-covert-send6 is not set # CONFIG_PACKAGE_thc-ipv6-covert-send6d is not set # CONFIG_PACKAGE_thc-ipv6-denial6 is not set # CONFIG_PACKAGE_thc-ipv6-detect-new-ip6 is not set # CONFIG_PACKAGE_thc-ipv6-detect-sniffer6 is not set # CONFIG_PACKAGE_thc-ipv6-dnsdict6 is not set # CONFIG_PACKAGE_thc-ipv6-dnsrevenum6 is not set # CONFIG_PACKAGE_thc-ipv6-dos-new-ip6 is not set # CONFIG_PACKAGE_thc-ipv6-dump-router6 is not set # CONFIG_PACKAGE_thc-ipv6-exploit6 is not set # CONFIG_PACKAGE_thc-ipv6-fake-advertise6 is not set # CONFIG_PACKAGE_thc-ipv6-fake-dhcps6 is not set # CONFIG_PACKAGE_thc-ipv6-fake-dns6d is not set # CONFIG_PACKAGE_thc-ipv6-fake-dnsupdate6 is not set # CONFIG_PACKAGE_thc-ipv6-fake-mipv6 is not set # CONFIG_PACKAGE_thc-ipv6-fake-mld26 is not set # CONFIG_PACKAGE_thc-ipv6-fake-mld6 is not set # CONFIG_PACKAGE_thc-ipv6-fake-mldrouter6 is not set # CONFIG_PACKAGE_thc-ipv6-fake-router26 is not set # CONFIG_PACKAGE_thc-ipv6-fake-router6 is not set # CONFIG_PACKAGE_thc-ipv6-fake-solicitate6 is not set # CONFIG_PACKAGE_thc-ipv6-flood-advertise6 is not set # CONFIG_PACKAGE_thc-ipv6-flood-dhcpc6 is not set # CONFIG_PACKAGE_thc-ipv6-flood-mld26 is not set # CONFIG_PACKAGE_thc-ipv6-flood-mld6 is not set # CONFIG_PACKAGE_thc-ipv6-flood-mldrouter6 is not set # CONFIG_PACKAGE_thc-ipv6-flood-router26 is not set # CONFIG_PACKAGE_thc-ipv6-flood-router6 is not set # CONFIG_PACKAGE_thc-ipv6-flood-solicitate6 is not set # CONFIG_PACKAGE_thc-ipv6-fragmentation6 is not set # CONFIG_PACKAGE_thc-ipv6-fuzz-dhcpc6 is not set # CONFIG_PACKAGE_thc-ipv6-fuzz-dhcps6 is not set # CONFIG_PACKAGE_thc-ipv6-fuzz-ip6 is not set # CONFIG_PACKAGE_thc-ipv6-implementation6 is not set # CONFIG_PACKAGE_thc-ipv6-implementation6d is not set # CONFIG_PACKAGE_thc-ipv6-inverse-lookup6 is not set # CONFIG_PACKAGE_thc-ipv6-kill-router6 is not set # CONFIG_PACKAGE_thc-ipv6-ndpexhaust6 is not set # CONFIG_PACKAGE_thc-ipv6-node-query6 is not set # CONFIG_PACKAGE_thc-ipv6-parasite6 is not set # CONFIG_PACKAGE_thc-ipv6-passive-discovery6 is not set # CONFIG_PACKAGE_thc-ipv6-randicmp6 is not set # CONFIG_PACKAGE_thc-ipv6-redir6 is not set # CONFIG_PACKAGE_thc-ipv6-rsmurf6 is not set # CONFIG_PACKAGE_thc-ipv6-sendpees6 is not set # CONFIG_PACKAGE_thc-ipv6-sendpeesmp6 is not set # CONFIG_PACKAGE_thc-ipv6-smurf6 is not set # CONFIG_PACKAGE_thc-ipv6-thcping6 is not set # CONFIG_PACKAGE_thc-ipv6-toobig6 is not set # CONFIG_PACKAGE_thc-ipv6-trace6 is not set # # Time Synchronization # # CONFIG_PACKAGE_chrony is not set # CONFIG_PACKAGE_htpdate is not set # CONFIG_PACKAGE_linuxptp is not set # CONFIG_PACKAGE_ntp-keygen is not set # CONFIG_PACKAGE_ntp-utils is not set # CONFIG_PACKAGE_ntpclient is not set # CONFIG_PACKAGE_ntpd is not set # CONFIG_PACKAGE_ntpdate is not set # # VPN # # CONFIG_PACKAGE_chaosvpn is not set # CONFIG_PACKAGE_fastd is not set # CONFIG_PACKAGE_ipsec-tools is not set # CONFIG_PACKAGE_n2n-edge is not set # CONFIG_PACKAGE_n2n-supernode is not set # CONFIG_PACKAGE_ocserv is not set # CONFIG_PACKAGE_openconnect is not set # CONFIG_PACKAGE_opennhrp is not set # CONFIG_PACKAGE_openvpn-easy-rsa is not set # CONFIG_PACKAGE_openvpn-mbedtls is not set # CONFIG_PACKAGE_openvpn-nossl is not set # CONFIG_PACKAGE_openvpn-openssl is not set # CONFIG_PACKAGE_pptpd is not set # CONFIG_PACKAGE_softethervpn-base is not set # CONFIG_PACKAGE_softethervpn-bridge is not set # CONFIG_PACKAGE_softethervpn-client is not set # CONFIG_PACKAGE_softethervpn-server is not set # CONFIG_PACKAGE_softethervpn5-bridge is not set # CONFIG_PACKAGE_softethervpn5-client is not set # CONFIG_PACKAGE_softethervpn5-server is not set # CONFIG_PACKAGE_sstp-client is not set # CONFIG_PACKAGE_strongswan is not set # CONFIG_PACKAGE_strongswan-charon is not set # CONFIG_PACKAGE_strongswan-charon-cmd is not set # CONFIG_PACKAGE_strongswan-default is not set # CONFIG_PACKAGE_strongswan-ipsec is not set # CONFIG_PACKAGE_strongswan-isakmp is not set # CONFIG_PACKAGE_strongswan-libtls is not set # CONFIG_PACKAGE_strongswan-minimal is not set # CONFIG_PACKAGE_strongswan-mod-addrblock is not set # CONFIG_PACKAGE_strongswan-mod-aes is not set # CONFIG_PACKAGE_strongswan-mod-af-alg is not set # CONFIG_PACKAGE_strongswan-mod-agent is not set # CONFIG_PACKAGE_strongswan-mod-attr is not set # CONFIG_PACKAGE_strongswan-mod-attr-sql is not set # CONFIG_PACKAGE_strongswan-mod-blowfish is not set # CONFIG_PACKAGE_strongswan-mod-ccm is not set # CONFIG_PACKAGE_strongswan-mod-cmac is not set # CONFIG_PACKAGE_strongswan-mod-connmark is not set # CONFIG_PACKAGE_strongswan-mod-constraints is not set # CONFIG_PACKAGE_strongswan-mod-coupling is not set # CONFIG_PACKAGE_strongswan-mod-ctr is not set # CONFIG_PACKAGE_strongswan-mod-curl is not set # CONFIG_PACKAGE_strongswan-mod-curve25519 is not set # CONFIG_PACKAGE_strongswan-mod-des is not set # CONFIG_PACKAGE_strongswan-mod-dhcp is not set # CONFIG_PACKAGE_strongswan-mod-dnskey is not set # CONFIG_PACKAGE_strongswan-mod-duplicheck is not set # CONFIG_PACKAGE_strongswan-mod-eap-identity is not set # CONFIG_PACKAGE_strongswan-mod-eap-md5 is not set # CONFIG_PACKAGE_strongswan-mod-eap-mschapv2 is not set # CONFIG_PACKAGE_strongswan-mod-eap-radius is not set # CONFIG_PACKAGE_strongswan-mod-eap-tls is not set # CONFIG_PACKAGE_strongswan-mod-farp is not set # CONFIG_PACKAGE_strongswan-mod-fips-prf is not set # CONFIG_PACKAGE_strongswan-mod-forecast is not set # CONFIG_PACKAGE_strongswan-mod-gcm is not set # CONFIG_PACKAGE_strongswan-mod-gcrypt is not set # CONFIG_PACKAGE_strongswan-mod-gmp is not set # CONFIG_PACKAGE_strongswan-mod-gmpdh is not set # CONFIG_PACKAGE_strongswan-mod-ha is not set # CONFIG_PACKAGE_strongswan-mod-hmac is not set # CONFIG_PACKAGE_strongswan-mod-kernel-libipsec is not set # CONFIG_PACKAGE_strongswan-mod-kernel-netlink is not set # CONFIG_PACKAGE_strongswan-mod-ldap is not set # CONFIG_PACKAGE_strongswan-mod-led is not set # CONFIG_PACKAGE_strongswan-mod-load-tester is not set # CONFIG_PACKAGE_strongswan-mod-md4 is not set # CONFIG_PACKAGE_strongswan-mod-md5 is not set # CONFIG_PACKAGE_strongswan-mod-mysql is not set # CONFIG_PACKAGE_strongswan-mod-nonce is not set # CONFIG_PACKAGE_strongswan-mod-openssl is not set # CONFIG_PACKAGE_strongswan-mod-pem is not set # CONFIG_PACKAGE_strongswan-mod-pgp is not set # CONFIG_PACKAGE_strongswan-mod-pkcs1 is not set # CONFIG_PACKAGE_strongswan-mod-pkcs11 is not set # CONFIG_PACKAGE_strongswan-mod-pkcs12 is not set # CONFIG_PACKAGE_strongswan-mod-pkcs7 is not set # CONFIG_PACKAGE_strongswan-mod-pkcs8 is not set # CONFIG_PACKAGE_strongswan-mod-pubkey is not set # CONFIG_PACKAGE_strongswan-mod-random is not set # CONFIG_PACKAGE_strongswan-mod-rc2 is not set # CONFIG_PACKAGE_strongswan-mod-resolve is not set # CONFIG_PACKAGE_strongswan-mod-revocation is not set # CONFIG_PACKAGE_strongswan-mod-sha1 is not set # CONFIG_PACKAGE_strongswan-mod-sha2 is not set # CONFIG_PACKAGE_strongswan-mod-smp is not set # CONFIG_PACKAGE_strongswan-mod-socket-default is not set # CONFIG_PACKAGE_strongswan-mod-socket-dynamic is not set # CONFIG_PACKAGE_strongswan-mod-sql is not set # CONFIG_PACKAGE_strongswan-mod-sqlite is not set # CONFIG_PACKAGE_strongswan-mod-sshkey is not set # CONFIG_PACKAGE_strongswan-mod-stroke is not set # CONFIG_PACKAGE_strongswan-mod-test-vectors is not set # CONFIG_PACKAGE_strongswan-mod-uci is not set # CONFIG_PACKAGE_strongswan-mod-unity is not set # CONFIG_PACKAGE_strongswan-mod-updown is not set # CONFIG_PACKAGE_strongswan-mod-vici is not set # CONFIG_PACKAGE_strongswan-mod-whitelist is not set # CONFIG_PACKAGE_strongswan-mod-x509 is not set # CONFIG_PACKAGE_strongswan-mod-xauth-eap is not set # CONFIG_PACKAGE_strongswan-mod-xauth-generic is not set # CONFIG_PACKAGE_strongswan-mod-xcbc is not set # CONFIG_PACKAGE_strongswan-pki is not set # CONFIG_PACKAGE_strongswan-scepclient is not set # CONFIG_PACKAGE_strongswan-swanctl is not set # CONFIG_PACKAGE_tinc is not set # CONFIG_PACKAGE_uanytun is not set # CONFIG_PACKAGE_uanytun-nettle is not set # CONFIG_PACKAGE_uanytun-nocrypt is not set # CONFIG_PACKAGE_uanytun-sslcrypt is not set # CONFIG_PACKAGE_vpnc is not set # CONFIG_PACKAGE_vpnc-scripts is not set # CONFIG_PACKAGE_wireguard is not set # CONFIG_PACKAGE_xl2tpd is not set # CONFIG_PACKAGE_zerotier is not set # # Version Control Systems # # CONFIG_PACKAGE_fossil is not set # CONFIG_PACKAGE_git is not set # CONFIG_PACKAGE_git-http is not set # CONFIG_PACKAGE_subversion-client is not set # CONFIG_PACKAGE_subversion-libs is not set # CONFIG_PACKAGE_subversion-server is not set # # WWAN # # CONFIG_PACKAGE_adb-enablemodem is not set # CONFIG_PACKAGE_comgt is not set # CONFIG_PACKAGE_comgt-directip is not set # CONFIG_PACKAGE_comgt-ncm is not set # CONFIG_PACKAGE_uqmi is not set # # Web Servers/Proxies # # CONFIG_PACKAGE_apache is not set # CONFIG_PACKAGE_cgi-io is not set # CONFIG_PACKAGE_clamav is not set # CONFIG_PACKAGE_e2guardian is not set # CONFIG_PACKAGE_freshclam is not set # CONFIG_PACKAGE_frpc is not set # CONFIG_PACKAGE_frps is not set # CONFIG_PACKAGE_haproxy is not set # CONFIG_PACKAGE_haproxy-nossl is not set # CONFIG_PACKAGE_kcptun-client is not set # CONFIG_PACKAGE_kcptun-server is not set # CONFIG_PACKAGE_lighttpd is not set # CONFIG_PACKAGE_nginx is not set # CONFIG_PACKAGE_nginx-all-module is not set # CONFIG_PACKAGE_nginx-mod-luci is not set # CONFIG_PACKAGE_nginx-mod-luci-ssl is not set # CONFIG_PACKAGE_nginx-ssl is not set CONFIG_PACKAGE_pdnsd-alt=y # CONFIG_PACKAGE_polipo is not set # CONFIG_PACKAGE_privoxy is not set # CONFIG_PACKAGE_radicale-py2 is not set # CONFIG_PACKAGE_radicale-py3 is not set # CONFIG_PACKAGE_radicale2 is not set # CONFIG_PACKAGE_radicale2-examples is not set # CONFIG_PACKAGE_radicale2-src is not set # CONFIG_PACKAGE_shadowsocks-client is not set # CONFIG_PACKAGE_shadowsocks-libev-ss-local is not set # CONFIG_PACKAGE_shadowsocks-libev-ss-redir is not set # CONFIG_PACKAGE_shadowsocks-libev-ss-rules is not set # CONFIG_PACKAGE_shadowsocks-libev-ss-server is not set # CONFIG_PACKAGE_shadowsocks-libev-ss-tunnel is not set # CONFIG_PACKAGE_shadowsocksr-libev is not set # CONFIG_PACKAGE_shadowsocksr-libev-alt is not set # CONFIG_PACKAGE_shadowsocksr-libev-server is not set # CONFIG_PACKAGE_shadowsocksr-libev-ssr-local is not set # CONFIG_PACKAGE_sockd is not set # CONFIG_PACKAGE_socksify is not set # CONFIG_PACKAGE_spawn-fcgi is not set # CONFIG_PACKAGE_squid is not set # CONFIG_PACKAGE_srelay is not set # CONFIG_PACKAGE_tinyproxy is not set CONFIG_PACKAGE_uhttpd=y # CONFIG_PACKAGE_uhttpd-mod-lua is not set CONFIG_PACKAGE_uhttpd-mod-ubus=y # CONFIG_PACKAGE_uwsgi-cgi is not set # CONFIG_PACKAGE_uwsgi-cgi-luci-support is not set # # Wireless # # CONFIG_PACKAGE_aircrack-ng is not set # CONFIG_PACKAGE_airmon-ng is not set # # dial-in/up # # CONFIG_PACKAGE_rp-pppoe-common is not set # CONFIG_PACKAGE_rp-pppoe-relay is not set # CONFIG_PACKAGE_rp-pppoe-server is not set # # tcprelay # # CONFIG_PACKAGE_tcpbridge is not set # CONFIG_PACKAGE_tcpcapinfo is not set # CONFIG_PACKAGE_tcpliveplay is not set # CONFIG_PACKAGE_tcpprep is not set # CONFIG_PACKAGE_tcpreplay is not set # CONFIG_PACKAGE_tcpreplay-all is not set # CONFIG_PACKAGE_tcpreplay-edit is not set # CONFIG_PACKAGE_tcprewrite is not set # # wireless # # CONFIG_PACKAGE_dynapoint is not set # CONFIG_PACKAGE_horst is not set # CONFIG_PACKAGE_kismet-client is not set # CONFIG_PACKAGE_kismet-drone is not set # CONFIG_PACKAGE_kismet-server is not set # CONFIG_PACKAGE_pixiewps is not set # CONFIG_PACKAGE_reaver is not set # CONFIG_PACKAGE_wavemon is not set # CONFIG_PACKAGE_wifischedule is not set # CONFIG_PACKAGE_464xlat is not set # CONFIG_PACKAGE_6in4 is not set # CONFIG_PACKAGE_6rd is not set # CONFIG_PACKAGE_6to4 is not set # CONFIG_PACKAGE_acme is not set # CONFIG_PACKAGE_acme-dnsapi is not set # CONFIG_PACKAGE_adblock is not set # CONFIG_PACKAGE_adbyby is not set # CONFIG_PACKAGE_addrwatch is not set # CONFIG_PACKAGE_ahcpd is not set # CONFIG_PACKAGE_alfred is not set # CONFIG_PACKAGE_apcupsd is not set # CONFIG_PACKAGE_apcupsd-cgi is not set # CONFIG_PACKAGE_apinger is not set # CONFIG_PACKAGE_arp-scan is not set # CONFIG_PACKAGE_baidupcs-web is not set # CONFIG_PACKAGE_banip is not set # CONFIG_PACKAGE_batctl-default is not set # CONFIG_PACKAGE_batctl-full is not set # CONFIG_PACKAGE_batctl-tiny is not set # CONFIG_PACKAGE_beanstalkd is not set # CONFIG_PACKAGE_bmon is not set # CONFIG_PACKAGE_bwm-ng is not set # CONFIG_PACKAGE_chat is not set # CONFIG_PACKAGE_cifsmount is not set # CONFIG_PACKAGE_coap-server is not set # CONFIG_PACKAGE_conserver is not set # CONFIG_PACKAGE_cshark is not set # CONFIG_PACKAGE_daemonlogger is not set # CONFIG_PACKAGE_darkstat is not set # CONFIG_PACKAGE_dhcpcd is not set # CONFIG_PACKAGE_dmapd is not set # CONFIG_PACKAGE_ds-lite is not set # CONFIG_PACKAGE_dsmboot is not set # CONFIG_PACKAGE_eapol-test is not set # CONFIG_PACKAGE_eapol-test-openssl is not set # CONFIG_PACKAGE_eapol-test-wolfssl is not set # CONFIG_PACKAGE_esniper is not set # CONFIG_PACKAGE_etherwake is not set # CONFIG_PACKAGE_ethtool is not set # CONFIG_PACKAGE_fakeidentd is not set # CONFIG_PACKAGE_foolsm is not set # CONFIG_PACKAGE_fping is not set # CONFIG_PACKAGE_gnunet is not set # CONFIG_PACKAGE_gre is not set # CONFIG_PACKAGE_hnet-full is not set # CONFIG_PACKAGE_hnet-full-l2tp is not set # CONFIG_PACKAGE_hnet-full-secure is not set # CONFIG_PACKAGE_hnetd-nossl is not set # CONFIG_PACKAGE_hnetd-openssl is not set # CONFIG_PACKAGE_hostapd is not set # CONFIG_PACKAGE_hostapd-basic is not set CONFIG_PACKAGE_hostapd-common=y # CONFIG_PACKAGE_hostapd-mini is not set # CONFIG_PACKAGE_hostapd-openssl is not set # CONFIG_PACKAGE_hostapd-utils is not set # CONFIG_PACKAGE_hostapd-wolfssl is not set # CONFIG_PACKAGE_httping is not set # CONFIG_PACKAGE_httping-nossl is not set # CONFIG_PACKAGE_https_dns_proxy is not set # CONFIG_PACKAGE_i2pd is not set # CONFIG_PACKAGE_ibrdtn-tools is not set # CONFIG_PACKAGE_ibrdtnd is not set # CONFIG_PACKAGE_ifstat is not set # CONFIG_PACKAGE_iftop is not set # CONFIG_PACKAGE_iiod is not set # CONFIG_PACKAGE_iotivity is not set # CONFIG_PACKAGE_iotivity-cpp is not set # CONFIG_PACKAGE_iotivity-example-garage is not set # CONFIG_PACKAGE_iotivity-example-simple is not set # CONFIG_PACKAGE_iotivity-oic-middle is not set # CONFIG_PACKAGE_iotivity-resource-container-hue is not set # CONFIG_PACKAGE_iotivity-resource-container-lib is not set # CONFIG_PACKAGE_iotivity-resource-container-sample is not set # CONFIG_PACKAGE_iotivity-resource-directory-lib is not set # CONFIG_PACKAGE_iperf is not set # CONFIG_PACKAGE_iperf3 is not set # CONFIG_PACKAGE_iperf3-ssl is not set # CONFIG_PACKAGE_ipip is not set CONFIG_PACKAGE_ipset=y # CONFIG_PACKAGE_ipset-dns is not set # CONFIG_PACKAGE_ipset-lists is not set # CONFIG_PACKAGE_ipt2socks is not set # CONFIG_PACKAGE_iptraf-ng is not set # CONFIG_PACKAGE_iputils-arping is not set # CONFIG_PACKAGE_iputils-clockdiff is not set # CONFIG_PACKAGE_iputils-ping is not set # CONFIG_PACKAGE_iputils-ping6 is not set # CONFIG_PACKAGE_iputils-tftpd is not set # CONFIG_PACKAGE_iputils-tracepath is not set # CONFIG_PACKAGE_iputils-tracepath6 is not set # CONFIG_PACKAGE_iputils-traceroute6 is not set CONFIG_PACKAGE_iw=y # CONFIG_PACKAGE_iw-full is not set # CONFIG_PACKAGE_jool is not set # CONFIG_PACKAGE_jool-tools is not set # CONFIG_PACKAGE_keepalived is not set # CONFIG_PACKAGE_knxd is not set # CONFIG_PACKAGE_kplex is not set # CONFIG_PACKAGE_krb5-client is not set # CONFIG_PACKAGE_krb5-libs is not set # CONFIG_PACKAGE_krb5-server is not set CONFIG_PACKAGE_libipset=y # CONFIG_PACKAGE_linknx is not set # CONFIG_PACKAGE_lispd is not set # CONFIG_PACKAGE_mac-telnet-client is not set # CONFIG_PACKAGE_mac-telnet-discover is not set # CONFIG_PACKAGE_mac-telnet-ping is not set # CONFIG_PACKAGE_mac-telnet-server is not set # CONFIG_PACKAGE_map is not set # CONFIG_PACKAGE_memcached is not set # CONFIG_PACKAGE_microsocks is not set # CONFIG_PACKAGE_mii-tool is not set # CONFIG_PACKAGE_mikrotik-btest is not set # CONFIG_PACKAGE_mini_snmpd is not set # CONFIG_PACKAGE_minimalist-pcproxy is not set # CONFIG_PACKAGE_modemmanager is not set # CONFIG_PACKAGE_mosquitto-client-nossl is not set # CONFIG_PACKAGE_mosquitto-client-ssl is not set # CONFIG_PACKAGE_mosquitto-nossl is not set # CONFIG_PACKAGE_mosquitto-ssl is not set # CONFIG_PACKAGE_mrd6 is not set # CONFIG_PACKAGE_mtr is not set # CONFIG_PACKAGE_nbd is not set # CONFIG_PACKAGE_nbd-server is not set # CONFIG_PACKAGE_ncp is not set # CONFIG_PACKAGE_ndppd is not set # CONFIG_PACKAGE_netcat is not set # CONFIG_PACKAGE_netdiscover is not set # CONFIG_PACKAGE_netperf is not set # CONFIG_PACKAGE_nextdns is not set CONFIG_PACKAGE_nlbwmon=y # CONFIG_PACKAGE_noddos is not set # CONFIG_PACKAGE_noping is not set # CONFIG_PACKAGE_npc is not set # CONFIG_PACKAGE_nut is not set # CONFIG_PACKAGE_obfsproxy is not set # CONFIG_PACKAGE_obfsproxy-src is not set # CONFIG_PACKAGE_odhcp6c is not set # CONFIG_PACKAGE_odhcpd is not set # CONFIG_PACKAGE_odhcpd-ipv6only is not set # CONFIG_PACKAGE_ola is not set # CONFIG_PACKAGE_omcproxy is not set # CONFIG_PACKAGE_oping is not set # CONFIG_PACKAGE_pagekitec is not set # CONFIG_PACKAGE_pen is not set # CONFIG_PACKAGE_pimbd is not set # CONFIG_PACKAGE_pingcheck is not set # CONFIG_PACKAGE_port-mirroring is not set # CONFIG_PACKAGE_portmap is not set CONFIG_PACKAGE_ppp=y # CONFIG_PACKAGE_ppp-mod-passwordfd is not set # CONFIG_PACKAGE_ppp-mod-pppoa is not set CONFIG_PACKAGE_ppp-mod-pppoe=y # CONFIG_PACKAGE_ppp-mod-pppol2tp is not set # CONFIG_PACKAGE_ppp-mod-pptp is not set # CONFIG_PACKAGE_ppp-mod-radius is not set # CONFIG_PACKAGE_ppp-multilink is not set # CONFIG_PACKAGE_pppdump is not set # CONFIG_PACKAGE_pppoe-discovery is not set # CONFIG_PACKAGE_pppossh is not set # CONFIG_PACKAGE_pppstats is not set # CONFIG_PACKAGE_proto-bonding is not set # CONFIG_PACKAGE_proxychains-ng is not set # CONFIG_PACKAGE_radsecproxy is not set # CONFIG_PACKAGE_redsocks is not set # CONFIG_PACKAGE_redsocks2 is not set # CONFIG_PACKAGE_remserial is not set # CONFIG_PACKAGE_rpcbind is not set # CONFIG_PACKAGE_rssileds is not set # CONFIG_PACKAGE_rsyslog is not set # CONFIG_PACKAGE_samba36-client is not set # CONFIG_PACKAGE_samba36-net is not set # CONFIG_PACKAGE_samba36-server is not set # CONFIG_PACKAGE_samba4-admin is not set # CONFIG_PACKAGE_samba4-client is not set # CONFIG_PACKAGE_samba4-libs is not set # CONFIG_PACKAGE_samba4-server is not set # CONFIG_PACKAGE_samba4-utils is not set # CONFIG_PACKAGE_scapy is not set # CONFIG_PACKAGE_sctp is not set # CONFIG_PACKAGE_sctp-tools is not set # CONFIG_PACKAGE_seafile-ccnet is not set # CONFIG_PACKAGE_seafile-seahub is not set # CONFIG_PACKAGE_seafile-seahub-src is not set # CONFIG_PACKAGE_ser2net is not set # CONFIG_PACKAGE_simple-adblock is not set # CONFIG_PACKAGE_simple-obfs is not set # CONFIG_PACKAGE_simple-obfs-server is not set # CONFIG_PACKAGE_smartsnmpd is not set # CONFIG_PACKAGE_snmp-mibs is not set # CONFIG_PACKAGE_snmp-utils is not set # CONFIG_PACKAGE_snmpd is not set # CONFIG_PACKAGE_snmpd-static is not set # CONFIG_PACKAGE_snmptrapd is not set # CONFIG_PACKAGE_socat is not set # CONFIG_PACKAGE_softflowd is not set # CONFIG_PACKAGE_soloscli is not set # CONFIG_PACKAGE_stunnel is not set # CONFIG_PACKAGE_tayga is not set # CONFIG_PACKAGE_tcpdump is not set # CONFIG_PACKAGE_tcpdump-mini is not set # CONFIG_PACKAGE_tcpping is not set # CONFIG_PACKAGE_tor is not set # CONFIG_PACKAGE_tor-gencert is not set # CONFIG_PACKAGE_tor-geoip is not set # CONFIG_PACKAGE_tor-resolve is not set # CONFIG_PACKAGE_travelmate is not set # CONFIG_PACKAGE_trojan is not set # CONFIG_PACKAGE_u2pnpd is not set CONFIG_PACKAGE_uclient-fetch=y # CONFIG_PACKAGE_udpxy is not set # CONFIG_PACKAGE_ulogd is not set # CONFIG_PACKAGE_umbim is not set # CONFIG_PACKAGE_umdns is not set # CONFIG_PACKAGE_usbip is not set # CONFIG_PACKAGE_vallumd is not set # CONFIG_PACKAGE_verysync is not set CONFIG_PACKAGE_vlmcsd=y # CONFIG_PACKAGE_vncrepeater is not set # CONFIG_PACKAGE_vnstat is not set # CONFIG_PACKAGE_vpnbypass is not set # CONFIG_PACKAGE_vsc7385-ucode-pb44 is not set # CONFIG_PACKAGE_vsc7395-ucode-pb44 is not set # CONFIG_PACKAGE_vti is not set # CONFIG_PACKAGE_vxlan is not set # CONFIG_PACKAGE_wakeonlan is not set # CONFIG_PACKAGE_wpa-cli is not set # CONFIG_PACKAGE_wpa-supplicant is not set # CONFIG_WPA_RFKILL_SUPPORT is not set CONFIG_WPA_MSG_MIN_PRIORITY=3 # CONFIG_WPA_WOLFSSL is not set # CONFIG_DRIVER_WEXT_SUPPORT is not set CONFIG_DRIVER_11N_SUPPORT=y CONFIG_DRIVER_11AC_SUPPORT=y CONFIG_DRIVER_11W_SUPPORT=y # CONFIG_PACKAGE_wpa-supplicant-basic is not set # CONFIG_PACKAGE_wpa-supplicant-mesh-openssl is not set # CONFIG_PACKAGE_wpa-supplicant-mesh-wolfssl is not set # CONFIG_PACKAGE_wpa-supplicant-mini is not set # CONFIG_PACKAGE_wpa-supplicant-openssl is not set # CONFIG_PACKAGE_wpa-supplicant-p2p is not set # CONFIG_PACKAGE_wpa-supplicant-wolfssl is not set # CONFIG_PACKAGE_wpad is not set # CONFIG_PACKAGE_wpad-basic is not set # CONFIG_PACKAGE_wpad-mesh-openssl is not set # CONFIG_PACKAGE_wpad-mesh-wolfssl is not set # CONFIG_PACKAGE_wpad-mini is not set CONFIG_PACKAGE_wpad-openssl=y # CONFIG_PACKAGE_wpad-wolfssl is not set # CONFIG_PACKAGE_wpan-tools is not set # CONFIG_PACKAGE_wwan is not set # CONFIG_PACKAGE_xinetd is not set # # Sound # # CONFIG_PACKAGE_alsa-utils is not set # CONFIG_PACKAGE_alsa-utils-seq is not set # CONFIG_PACKAGE_alsa-utils-tests is not set # CONFIG_PACKAGE_espeak is not set # CONFIG_PACKAGE_faad2 is not set # CONFIG_PACKAGE_fdk-aac is not set # CONFIG_PACKAGE_forked-daapd is not set # CONFIG_PACKAGE_ices is not set # CONFIG_PACKAGE_lame is not set # CONFIG_PACKAGE_lame-lib is not set # CONFIG_PACKAGE_liblo-utils is not set # CONFIG_PACKAGE_madplay is not set # CONFIG_PACKAGE_madplay-alsa is not set # CONFIG_PACKAGE_moc is not set # CONFIG_PACKAGE_mpc is not set # CONFIG_PACKAGE_mpd-avahi-service is not set # CONFIG_PACKAGE_mpd-full is not set # CONFIG_PACKAGE_mpd-mini is not set # CONFIG_PACKAGE_mpg123 is not set # CONFIG_PACKAGE_opus-tools is not set # CONFIG_PACKAGE_pianod is not set # CONFIG_PACKAGE_pianod-client is not set # CONFIG_PACKAGE_portaudio is not set # CONFIG_PACKAGE_pulseaudio-daemon is not set # CONFIG_PACKAGE_pulseaudio-daemon-avahi is not set # CONFIG_PACKAGE_shairplay is not set # CONFIG_PACKAGE_shairport-sync-mbedtls is not set # CONFIG_PACKAGE_shairport-sync-mini is not set # CONFIG_PACKAGE_shairport-sync-openssl is not set # CONFIG_PACKAGE_shine is not set # CONFIG_PACKAGE_sox is not set # CONFIG_PACKAGE_squeezelite-full is not set # CONFIG_PACKAGE_squeezelite-mini is not set # CONFIG_PACKAGE_svox is not set # CONFIG_PACKAGE_upmpdcli is not set # # Utilities # # # Boot Loaders # # CONFIG_PACKAGE_fconfig is not set # CONFIG_PACKAGE_rbcfg is not set CONFIG_PACKAGE_uboot-envtools=y # # Compression # # CONFIG_PACKAGE_bsdtar is not set # CONFIG_PACKAGE_bzip2 is not set # CONFIG_PACKAGE_gzip is not set # CONFIG_PACKAGE_pigz is not set # CONFIG_PACKAGE_unrar is not set # CONFIG_PACKAGE_unzip is not set # CONFIG_PACKAGE_xz-utils is not set # CONFIG_PACKAGE_zip is not set # CONFIG_PACKAGE_zstd is not set # # Database # # CONFIG_PACKAGE_mariadb-common is not set # # Disc # # CONFIG_PACKAGE_blkdiscard is not set # CONFIG_PACKAGE_blkid is not set # CONFIG_PACKAGE_blockdev is not set # CONFIG_PACKAGE_cfdisk is not set # CONFIG_PACKAGE_cgdisk is not set # CONFIG_PACKAGE_eject is not set # CONFIG_PACKAGE_fdisk is not set # CONFIG_PACKAGE_findfs is not set # CONFIG_PACKAGE_fixparts is not set # CONFIG_PACKAGE_gdisk is not set # CONFIG_PACKAGE_hd-idle is not set # CONFIG_PACKAGE_hdparm is not set # CONFIG_PACKAGE_lsblk is not set # CONFIG_PACKAGE_lvm2 is not set # CONFIG_PACKAGE_mdadm is not set # CONFIG_PACKAGE_parted is not set # CONFIG_PACKAGE_partx-utils is not set # CONFIG_PACKAGE_sfdisk is not set # CONFIG_PACKAGE_sgdisk is not set # CONFIG_PACKAGE_wipefs is not set # # Editors # # CONFIG_PACKAGE_joe is not set # CONFIG_PACKAGE_nano is not set # CONFIG_PACKAGE_vim is not set # CONFIG_PACKAGE_vim-full is not set # CONFIG_PACKAGE_vim-fuller is not set # CONFIG_PACKAGE_vim-help is not set # CONFIG_PACKAGE_vim-runtime is not set # CONFIG_PACKAGE_zile is not set # # Encryption # # CONFIG_PACKAGE_ccrypt is not set # CONFIG_PACKAGE_certtool is not set # CONFIG_PACKAGE_cryptsetup is not set # CONFIG_PACKAGE_cryptsetup-openssl is not set # CONFIG_PACKAGE_gnupg is not set # CONFIG_PACKAGE_gnutls-utils is not set # CONFIG_PACKAGE_gpgv is not set # CONFIG_PACKAGE_keyctl is not set # CONFIG_PACKAGE_px5g-mbedtls is not set # CONFIG_PACKAGE_px5g-standalone is not set # CONFIG_PACKAGE_stoken is not set # # Filesystem # # CONFIG_PACKAGE_acl is not set # CONFIG_PACKAGE_antfs-mount is not set # CONFIG_PACKAGE_attr is not set # CONFIG_PACKAGE_badblocks is not set # CONFIG_PACKAGE_btrfs-progs is not set # CONFIG_PACKAGE_chattr is not set # CONFIG_PACKAGE_debugfs is not set # CONFIG_PACKAGE_dosfstools is not set # CONFIG_PACKAGE_dumpe2fs is not set # CONFIG_PACKAGE_e2freefrag is not set # CONFIG_PACKAGE_e2fsprogs is not set # CONFIG_PACKAGE_f2fs-tools is not set # CONFIG_PACKAGE_f2fsck is not set # CONFIG_PACKAGE_filefrag is not set # CONFIG_PACKAGE_fstrim is not set # CONFIG_PACKAGE_fuse-utils is not set # CONFIG_PACKAGE_hfsfsck is not set # CONFIG_PACKAGE_lsattr is not set # CONFIG_PACKAGE_mkf2fs is not set # CONFIG_PACKAGE_mkhfs is not set # CONFIG_PACKAGE_ncdu is not set # CONFIG_PACKAGE_nfs-utils is not set # CONFIG_PACKAGE_nfs-utils-libs is not set # CONFIG_PACKAGE_ntfs-3g is not set # CONFIG_PACKAGE_ntfs-3g-low is not set # CONFIG_PACKAGE_ntfs-3g-utils is not set # CONFIG_PACKAGE_owfs is not set # CONFIG_PACKAGE_owshell is not set # CONFIG_PACKAGE_resize2fs is not set # CONFIG_PACKAGE_squashfs-tools-mksquashfs is not set # CONFIG_PACKAGE_squashfs-tools-unsquashfs is not set # CONFIG_PACKAGE_swap-utils is not set # CONFIG_PACKAGE_sysfsutils is not set # CONFIG_PACKAGE_tune2fs is not set # CONFIG_PACKAGE_xfs-admin is not set # CONFIG_PACKAGE_xfs-fsck is not set # CONFIG_PACKAGE_xfs-growfs is not set # CONFIG_PACKAGE_xfs-mkfs is not set # # Image Manipulation # # CONFIG_PACKAGE_jpeg-tools is not set # CONFIG_PACKAGE_tiff-utils is not set # # Microcontroller programming # # CONFIG_PACKAGE_avrdude is not set # CONFIG_PACKAGE_dfu-programmer is not set # CONFIG_PACKAGE_stm32flash is not set # # RTKLIB Suite # # CONFIG_PACKAGE_convbin is not set # CONFIG_PACKAGE_pos2kml is not set # CONFIG_PACKAGE_rnx2rtkp is not set # CONFIG_PACKAGE_rtkrcv is not set # CONFIG_PACKAGE_str2str is not set # # Shells # # CONFIG_PACKAGE_bash is not set # CONFIG_PACKAGE_klish is not set # CONFIG_PACKAGE_mksh is not set # CONFIG_PACKAGE_tcsh is not set # CONFIG_PACKAGE_zsh is not set # # Terminal # # CONFIG_PACKAGE_agetty is not set # CONFIG_PACKAGE_dvtm is not set # CONFIG_PACKAGE_minicom is not set # CONFIG_PACKAGE_picocom is not set # CONFIG_PACKAGE_rtty-mbedtls is not set # CONFIG_PACKAGE_rtty-nossl is not set # CONFIG_PACKAGE_rtty-openssl is not set # CONFIG_PACKAGE_rtty-wolfssl is not set # CONFIG_PACKAGE_screen is not set # CONFIG_PACKAGE_script-utils is not set # CONFIG_PACKAGE_serialconsole is not set # CONFIG_PACKAGE_setterm is not set # CONFIG_PACKAGE_tio is not set # CONFIG_PACKAGE_tmux is not set # CONFIG_PACKAGE_ttyd is not set # CONFIG_PACKAGE_wall is not set # # Virtualization # # # Zoneinfo # # CONFIG_PACKAGE_zoneinfo-africa is not set # CONFIG_PACKAGE_zoneinfo-asia is not set # CONFIG_PACKAGE_zoneinfo-atlantic is not set # CONFIG_PACKAGE_zoneinfo-australia-nz is not set # CONFIG_PACKAGE_zoneinfo-core is not set # CONFIG_PACKAGE_zoneinfo-europe is not set # CONFIG_PACKAGE_zoneinfo-india is not set # CONFIG_PACKAGE_zoneinfo-northamerica is not set # CONFIG_PACKAGE_zoneinfo-pacific is not set # CONFIG_PACKAGE_zoneinfo-poles is not set # CONFIG_PACKAGE_zoneinfo-simple is not set # CONFIG_PACKAGE_zoneinfo-southamerica is not set # # database # # CONFIG_PACKAGE_pgsql-cli is not set # CONFIG_PACKAGE_pgsql-cli-extra is not set # CONFIG_PACKAGE_pgsql-server is not set # CONFIG_PACKAGE_rrdcgi1 is not set # CONFIG_PACKAGE_rrdtool1 is not set # CONFIG_PACKAGE_sqlite3-cli is not set # CONFIG_PACKAGE_unixodbc-tools is not set # CONFIG_PACKAGE_adb is not set # CONFIG_PACKAGE_ap51-flash is not set # CONFIG_PACKAGE_at is not set # CONFIG_PACKAGE_bandwidthd is not set # CONFIG_PACKAGE_bandwidthd-pgsql is not set # CONFIG_PACKAGE_bandwidthd-php is not set # CONFIG_PACKAGE_bandwidthd-sqlite is not set # CONFIG_PACKAGE_banhostlist is not set # CONFIG_PACKAGE_bc is not set # CONFIG_PACKAGE_bluelog is not set # CONFIG_PACKAGE_bluez-daemon is not set # CONFIG_PACKAGE_bluez-utils is not set # CONFIG_PACKAGE_bluez-utils-extra is not set # CONFIG_PACKAGE_bonniexx is not set # CONFIG_PACKAGE_bsdiff is not set # CONFIG_PACKAGE_bspatch is not set # CONFIG_PACKAGE_cal is not set # CONFIG_PACKAGE_canutils is not set # CONFIG_PACKAGE_cgroupfs-mount is not set # CONFIG_PACKAGE_cmdpad is not set # CONFIG_PACKAGE_coap-client is not set # CONFIG_PACKAGE_collectd is not set CONFIG_PACKAGE_coremark=y # CONFIG_PACKAGE_coreutils is not set # CONFIG_PACKAGE_crconf is not set # CONFIG_PACKAGE_crelay is not set # CONFIG_PACKAGE_csstidy is not set # CONFIG_PACKAGE_ct-bugcheck is not set # CONFIG_PACKAGE_dbus is not set # CONFIG_PACKAGE_dfu-util is not set # CONFIG_PACKAGE_digitemp is not set # CONFIG_PACKAGE_digitemp-usb is not set # CONFIG_PACKAGE_dmesg is not set # # Kernel features for Docker # CONFIG_DOCKER_KERNEL_OPTIONS=y # CONFIG_DOCKER_SECCOMP is not set # CONFIG_DOCKER_RES_SHAPE is not set # # Network # # CONFIG_DOCKER_NET_OVERLAY is not set # CONFIG_DOCKER_NET_MACVLAN is not set # CONFIG_DOCKER_NET_TFTP is not set # # Storage # # CONFIG_DOCKER_STO_EXT4 is not set # CONFIG_DOCKER_STO_BTRFS is not set # CONFIG_PACKAGE_dropbearconvert is not set # CONFIG_PACKAGE_dtc is not set # CONFIG_PACKAGE_dump1090 is not set # CONFIG_PACKAGE_ecdsautils is not set # CONFIG_PACKAGE_elektra-kdb is not set # CONFIG_PACKAGE_evtest is not set # CONFIG_PACKAGE_extract is not set # CONFIG_PACKAGE_fdt-utils is not set # CONFIG_PACKAGE_file is not set # CONFIG_PACKAGE_findutils-find is not set # CONFIG_PACKAGE_findutils-locate is not set # CONFIG_PACKAGE_findutils-xargs is not set # CONFIG_PACKAGE_flashrom is not set # CONFIG_PACKAGE_flashrom-pci is not set # CONFIG_PACKAGE_flashrom-spi is not set # CONFIG_PACKAGE_flashrom-usb is not set # CONFIG_PACKAGE_flent-tools is not set # CONFIG_PACKAGE_flock is not set # CONFIG_PACKAGE_fritz-caldata is not set # CONFIG_PACKAGE_fritz-tffs is not set # CONFIG_PACKAGE_ftdi_eeprom is not set # CONFIG_PACKAGE_gammu is not set # CONFIG_PACKAGE_gawk is not set # CONFIG_PACKAGE_getopt is not set # CONFIG_PACKAGE_giflib-utils is not set # CONFIG_PACKAGE_gkermit is not set # CONFIG_PACKAGE_gpioctl-sysfs is not set # CONFIG_PACKAGE_gpiod-tools is not set # CONFIG_PACKAGE_gpsd is not set # CONFIG_PACKAGE_gpsd-clients is not set # CONFIG_PACKAGE_grep is not set # CONFIG_PACKAGE_hamlib is not set # CONFIG_PACKAGE_haserl is not set # CONFIG_PACKAGE_haveged is not set # CONFIG_PACKAGE_hub-ctrl is not set # CONFIG_PACKAGE_hwclock is not set # CONFIG_PACKAGE_hwloc-utils is not set # CONFIG_PACKAGE_i2c-tools is not set # CONFIG_PACKAGE_iconv is not set # CONFIG_PACKAGE_iio-utils is not set # CONFIG_PACKAGE_inotifywait is not set # CONFIG_PACKAGE_inotifywatch is not set # CONFIG_PACKAGE_io is not set # CONFIG_PACKAGE_irqbalance is not set # CONFIG_PACKAGE_iwcap is not set # CONFIG_PACKAGE_iwinfo is not set # CONFIG_PACKAGE_jq is not set CONFIG_PACKAGE_jshn=y # CONFIG_PACKAGE_kmod is not set # CONFIG_PACKAGE_lcd4linux-custom is not set # CONFIG_PACKAGE_lcdproc-clients is not set # CONFIG_PACKAGE_lcdproc-drivers is not set # CONFIG_PACKAGE_lcdproc-server is not set # CONFIG_PACKAGE_less is not set # CONFIG_PACKAGE_less-wide is not set # CONFIG_PACKAGE_libimobiledevice-utils is not set CONFIG_PACKAGE_libjson-script=y # CONFIG_PACKAGE_libplist-utils is not set # CONFIG_PACKAGE_libsysrepo is not set # CONFIG_PACKAGE_libusbmuxd-utils is not set # CONFIG_PACKAGE_libxml2-utils is not set # CONFIG_PACKAGE_lm-sensors is not set # CONFIG_PACKAGE_lm-sensors-detect is not set # CONFIG_PACKAGE_logger is not set # CONFIG_PACKAGE_logrotate is not set # CONFIG_PACKAGE_look is not set # CONFIG_PACKAGE_losetup is not set # CONFIG_PACKAGE_lrzsz is not set # CONFIG_PACKAGE_lscpu is not set # CONFIG_PACKAGE_lsof is not set # CONFIG_PACKAGE_lxc is not set # CONFIG_PACKAGE_lxc-unprivileged is not set # CONFIG_PACKAGE_maccalc is not set # CONFIG_PACKAGE_macchanger is not set # CONFIG_PACKAGE_mbedtls-util is not set # CONFIG_PACKAGE_mbim-utils is not set # CONFIG_PACKAGE_mbtools is not set # CONFIG_PACKAGE_mc is not set # CONFIG_PACKAGE_mcookie is not set # CONFIG_PACKAGE_mmc-utils is not set # CONFIG_PACKAGE_moreutils is not set # CONFIG_PACKAGE_mount-utils is not set # CONFIG_PACKAGE_mpack is not set # CONFIG_PACKAGE_mt-st is not set # CONFIG_PACKAGE_namei is not set # CONFIG_PACKAGE_netopeer2-cli is not set # CONFIG_PACKAGE_netopeer2-keystored is not set # CONFIG_PACKAGE_netopeer2-server is not set # CONFIG_PACKAGE_netwhere is not set # CONFIG_PACKAGE_nsenter is not set # CONFIG_PACKAGE_oath-toolkit is not set # CONFIG_PACKAGE_open-plc-utils is not set # CONFIG_PACKAGE_open2300 is not set # CONFIG_PACKAGE_openobex is not set # CONFIG_PACKAGE_openobex-apps is not set # CONFIG_PACKAGE_openocd is not set # CONFIG_PACKAGE_opensc-utils is not set CONFIG_PACKAGE_openssl-util=y # CONFIG_PACKAGE_openzwave is not set # CONFIG_PACKAGE_openzwave-config is not set # CONFIG_PACKAGE_owipcalc is not set # CONFIG_PACKAGE_pciutils is not set # CONFIG_PACKAGE_pcsc-tools is not set # CONFIG_PACKAGE_pcscd is not set # CONFIG_PACKAGE_pps-tools is not set # CONFIG_PACKAGE_prlimit is not set # CONFIG_PACKAGE_procps-ng is not set # CONFIG_PACKAGE_progress is not set # CONFIG_PACKAGE_prometheus-node-exporter-lua is not set # CONFIG_PACKAGE_pv is not set # CONFIG_PACKAGE_qmi-utils is not set # CONFIG_PACKAGE_qrencode is not set # CONFIG_PACKAGE_rclone is not set # CONFIG_PACKAGE_relayctl is not set # CONFIG_PACKAGE_rename is not set # CONFIG_PACKAGE_rng-tools is not set # CONFIG_PACKAGE_rtl-ais is not set # CONFIG_PACKAGE_rtl-sdr is not set # CONFIG_PACKAGE_rtl_433 is not set # CONFIG_PACKAGE_sane-backends is not set # CONFIG_PACKAGE_sane-daemon is not set # CONFIG_PACKAGE_sane-frontends is not set # CONFIG_PACKAGE_setserial is not set # CONFIG_PACKAGE_shadow-utils is not set CONFIG_PACKAGE_shellsync=y # CONFIG_PACKAGE_sispmctl is not set # CONFIG_PACKAGE_slide-switch is not set # CONFIG_PACKAGE_smartd is not set # CONFIG_PACKAGE_smartmontools is not set # CONFIG_PACKAGE_smartmontools-drivedb is not set # CONFIG_PACKAGE_smstools3 is not set # CONFIG_PACKAGE_sockread is not set # CONFIG_PACKAGE_spi-tools is not set # CONFIG_PACKAGE_spidev-test is not set # CONFIG_PACKAGE_strace is not set CONFIG_STRACE_NONE=y # CONFIG_STRACE_LIBDW is not set # CONFIG_STRACE_LIBUNWIND is not set # CONFIG_PACKAGE_stress is not set # CONFIG_PACKAGE_sumo is not set # CONFIG_PACKAGE_sysrepo is not set # CONFIG_PACKAGE_sysrepocfg is not set # CONFIG_PACKAGE_sysrepoctl is not set # CONFIG_PACKAGE_sysstat is not set # CONFIG_PACKAGE_tar is not set # CONFIG_PACKAGE_taskwarrior is not set # CONFIG_PACKAGE_tini is not set # CONFIG_PACKAGE_tracertools is not set # CONFIG_PACKAGE_tree is not set # CONFIG_PACKAGE_triggerhappy is not set # CONFIG_PACKAGE_udns-dnsget is not set # CONFIG_PACKAGE_udns-ex-rdns is not set # CONFIG_PACKAGE_udns-rblcheck is not set # CONFIG_PACKAGE_ugps is not set # CONFIG_PACKAGE_uledd is not set # CONFIG_PACKAGE_unshare is not set # CONFIG_PACKAGE_usb-modeswitch is not set # CONFIG_PACKAGE_usbmuxd is not set # CONFIG_PACKAGE_usbreset is not set # CONFIG_PACKAGE_usbutils is not set # CONFIG_PACKAGE_uuidd is not set # CONFIG_PACKAGE_uuidgen is not set # CONFIG_PACKAGE_uvcdynctrl is not set # CONFIG_PACKAGE_v4l-utils is not set # CONFIG_PACKAGE_view1090 is not set # CONFIG_PACKAGE_watchcat is not set # CONFIG_PACKAGE_whereis is not set # CONFIG_PACKAGE_wifitoggle is not set # CONFIG_PACKAGE_xsltproc is not set # CONFIG_PACKAGE_xxd is not set # CONFIG_PACKAGE_yanglint is not set # CONFIG_PACKAGE_yara is not set # CONFIG_PACKAGE_yunbridge is not set # # Xorg # # # font-utils # # CONFIG_PACKAGE_fontconfig is not set
chrisneagu / FTC Skystone Dark Angels Romania 2020NOTICE This repository contains the public FTC SDK for the SKYSTONE (2019-2020) competition season. If you are looking for the current season's FTC SDK software, please visit the new and permanent home of the public FTC SDK: FtcRobotController repository Welcome! This GitHub repository contains the source code that is used to build an Android app to control a FIRST Tech Challenge competition robot. To use this SDK, download/clone the entire project to your local computer. Getting Started If you are new to robotics or new to the FIRST Tech Challenge, then you should consider reviewing the FTC Blocks Tutorial to get familiar with how to use the control system: FTC Blocks Online Tutorial Even if you are an advanced Java programmer, it is helpful to start with the FTC Blocks tutorial, and then migrate to the OnBot Java Tool or to Android Studio afterwards. Downloading the Project If you are an Android Studio programmer, there are several ways to download this repo. Note that if you use the Blocks or OnBot Java Tool to program your robot, then you do not need to download this repository. If you are a git user, you can clone the most current version of the repository: git clone https://github.com/FIRST-Tech-Challenge/SKYSTONE.git Or, if you prefer, you can use the "Download Zip" button available through the main repository page. Downloading the project as a .ZIP file will keep the size of the download manageable. You can also download the project folder (as a .zip or .tar.gz archive file) from the Downloads subsection of the Releases page for this repository. Once you have downloaded and uncompressed (if needed) your folder, you can use Android Studio to import the folder ("Import project (Eclipse ADT, Gradle, etc.)"). Getting Help User Documentation and Tutorials FIRST maintains online documentation with information and tutorials on how to use the FIRST Tech Challenge software and robot control system. You can access this documentation using the following link: SKYSTONE Online Documentation Note that the online documentation is an "evergreen" document that is constantly being updated and edited. It contains the most current information about the FIRST Tech Challenge software and control system. Javadoc Reference Material The Javadoc reference documentation for the FTC SDK is now available online. Click on the following link to view the FTC SDK Javadoc documentation as a live website: FTC Javadoc Documentation Documentation for the FTC SDK is also included with this repository. There is a subfolder called "doc" which contains several subfolders: The folder "apk" contains the .apk files for the FTC Driver Station and FTC Robot Controller apps. The folder "javadoc" contains the JavaDoc user documentation for the FTC SDK. Online User Forum For technical questions regarding the Control System or the FTC SDK, please visit the FTC Technology forum: FTC Technology Forum Release Information Version 5.5 (20200824-090813) Version 5.5 requires Android Studio 4.0 or later. New features Adds support for calling custom Java classes from Blocks OpModes (fixes SkyStone issue #161). Classes must be in the org.firstinspires.ftc.teamcode package. Methods must be public static and have no more than 21 parameters. Parameters declared as OpMode, LinearOpMode, Telemetry, and HardwareMap are supported and the argument is provided automatically, regardless of the order of the parameters. On the block, the sockets for those parameters are automatically filled in. Parameters declared as char or java.lang.Character will accept any block that returns text and will only use the first character in the text. Parameters declared as boolean or java.lang.Boolean will accept any block that returns boolean. Parameters declared as byte, java.lang.Byte, short, java.lang.Short, int, java.lang.Integer, long, or java.lang.Long, will accept any block that returns a number and will round that value to the nearest whole number. Parameters declared as float, java.lang.Float, double, java.lang.Double will accept any block that returns a number. Adds telemetry API method for setting display format Classic Monospace HTML (certain tags only) Adds blocks support for switching cameras. Adds Blocks support for TensorFlow Object Detection with a custom model. Adds support for uploading a custom TensorFlow Object Detection model in the Manage page, which is especially useful for Blocks and OnBotJava users. Shows new Control Hub blink codes when the WiFi band is switched using the Control Hub's button (only possible on Control Hub OS 1.1.2) Adds new warnings which can be disabled in the Advanced RC Settings Mismatched app versions warning Unnecessary 2.4 GHz WiFi usage warning REV Hub is running outdated firmware (older than version 1.8.2) Adds support for Sony PS4 gamepad, and reworks how gamepads work on the Driver Station Removes preference which sets gamepad type based on driver position. Replaced with menu which allows specifying type for gamepads with unknown VID and PID Attempts to auto-detect gamepad type based on USB VID and PID If gamepad VID and PID is not known, use type specified by user for that VID and PID If gamepad VID and PID is not known AND the user has not specified a type for that VID and PID, an educated guess is made about how to map the gamepad Driver Station will now attempt to automatically recover from a gamepad disconnecting, and re-assign it to the position it was assigned to when it dropped If only one gamepad is assigned and it drops: it can be recovered If two gamepads are assigned, and have different VID/PID signatures, and only one drops: it will be recovered If two gamepads are assigned, and have different VID/PID signatures, and BOTH drop: both will be recovered If two gamepads are assigned, and have the same VID/PID signatures, and only one drops: it will be recovered If two gamepads are assigned, and have the same VID/PID signatures, and BOTH drop: neither will be recovered, because of the ambiguity of the gamepads when they re-appear on the USB bus. There is currently one known edge case: if there are two gamepads with the same VID/PID signature plugged in, but only one is assigned, and they BOTH drop, it's a 50-50 chance of which one will be chosen for automatic recovery to the assigned position: it is determined by whichever one is re-enumerated first by the USB bus controller. Adds landscape user interface to Driver Station New feature: practice timer with audio cues New feature (Control Hub only): wireless network connection strength indicator (0-5 bars) New feature (Control Hub only): tapping on the ping/channel display will switch to an alternate display showing radio RX dBm and link speed (tap again to switch back) The layout will NOT autorotate. You can switch the layout from the Driver Station's settings menu. Breaking changes Removes support for Android versions 4.4 through 5.1 (KitKat and Lollipop). The minSdkVersion is now 23. Removes the deprecated LinearOpMode methods waitOneFullHardwareCycle() and waitForNextHardwareCycle() Enhancements Handles RS485 address of Control Hub automatically The Control Hub is automatically given a reserved address Existing configuration files will continue to work All addresses in the range of 1-10 are still available for Expansion Hubs The Control Hub light will now normally be solid green, without blinking to indicate the address The Control Hub will not be shown on the Expansion Hub Address Change settings page Improves REV Hub firmware updater The user can now choose between all available firmware update files Version 1.8.2 of the REV Hub firmware is bundled into the Robot Controller app. Text was added to clarify that Expansion Hubs can only be updated via USB. Firmware update speed was reduced to improve reliability Allows REV Hub firmware to be updated directly from the Manage webpage Improves log viewer on Robot Controller Horizontal scrolling support (no longer word wrapped) Supports pinch-to-zoom Uses a monospaced font Error messages are highlighted New color scheme Attempts to force-stop a runaway/stuck OpMode without restarting the entire app Not all types of runaway conditions are stoppable, but if the user code attempts to talk to hardware during the runaway, the system should be able to capture it. Makes various tweaks to the Self Inspect screen Renames "OS version" entry to "Android version" Renames "WiFi Direct Name" to "WiFi Name" Adds Control Hub OS version, when viewing the report of a Control Hub Hides the airplane mode entry, when viewing the report of a Control Hub Removes check for ZTE Speed Channel Changer Shows firmware version for all Expansion and Control Hubs Reworks network settings portion of Manage page All network settings are now applied with a single click The WiFi Direct channel of phone-based Robot Controllers can now be changed from the Manage page WiFi channels are filtered by band (2.4 vs 5 GHz) and whether they overlap with other channels The current WiFi channel is pre-selected on phone-based Robot Controllers, and Control Hubs running OS 1.1.2 or later. On Control Hubs running OS 1.1.2 or later, you can choose to have the system automatically select a channel on the 5 GHz band Improves OnBotJava New light and dark themes replace the old themes (chaos, github, chrome,...) the new default theme is light and will be used when you first update to this version OnBotJava now has a tabbed editor Read-only offline mode Improves function of "exit" menu item on Robot Controller and Driver Station Now guaranteed to be fully stopped and unloaded from memory Shows a warning message if a LinearOpMode exists prematurely due to failure to monitor for the start condition Improves error message shown when the Driver Station and Robot Controller are incompatible with each other Driver Station OpMode Control Panel now disabled while a Restart Robot is in progress Disables advanced settings related to WiFi direct when the Robot Controller is a Control Hub. Tint phone battery icons on Driver Station when low/critical. Uses names "Control Hub Portal" and "Control Hub" (when appropriate) in new configuration files Improve I2C read performance Very large improvement on Control Hub; up to ~2x faster with small (e.g. 6 byte) reads Not as apparent on Expansion Hubs connected to a phone Update/refresh build infrastructure Update to 'androidx' support library from 'com.android.support:appcompat', which is end-of-life Update targetSdkVersion and compileSdkVersion to 28 Update Android Studio's Android plugin to latest Fix reported build timestamp in 'About' screen Add sample illustrating manual webcam use: ConceptWebcam Bug fixes Fixes SkyStone issue #248 Fixes SkyStone issue #232 and modifies bulk caching semantics to allow for cache-preserving MANUAL/AUTO transitions. Improves performance when REV 2M distance sensor is unplugged Improves readability of Toast messages on certain devices Allows a Driver Station to connect to a Robot Controller after another has disconnected Improves generation of fake serial numbers for UVC cameras which do not provide a real serial number Previously some devices would assign such cameras a serial of 0:0 and fail to open and start streaming Fixes ftc_app issue #638. Fixes a slew of bugs with the Vuforia camera monitor including: Fixes bug where preview could be displayed with a wonky aspect ratio Fixes bug where preview could be cut off in landscape Fixes bug where preview got totally messed up when rotating phone Fixes bug where crosshair could drift off target when using webcams Fixes issue in UVC driver on some devices (ftc_app 681) if streaming was started/stopped multiple times in a row Issue manifested as kernel panic on devices which do not have this kernel patch. On affected devices which do have the patch, the issue was manifest as simply a failure to start streaming. The Tech Team believes that the root cause of the issue is a bug in the Linux kernel XHCI driver. A workaround was implemented in the SDK UVC driver. Fixes bug in UVC driver where often half the frames from the camera would be dropped (e.g. only 15FPS delivered during a streaming session configured for 30FPS). Fixes issue where TensorFlow Object Detection would show results whose confidence was lower than the minimum confidence parameter. Fixes a potential exploitation issue of CVE-2019-11358 in OnBotJava Fixes changing the address of an Expansion Hub with additional Expansion Hubs connected to it Preserves the Control Hub's network connection when "Restart Robot" is selected Fixes issue where device scans would fail while the Robot was restarting Fix RenderScript usage Use androidx.renderscript variant: increased compatibility Use RenderScript in Java mode, not native: simplifies build Fixes webcam-frame-to-bitmap conversion problem: alpha channel wasn't being initialized, only R, G, & B Fixes possible arithmetic overflow in Deadline Fixes deadlock in Vuforia webcam support which could cause 5-second delays when stopping OpMode Version 5.4 (20200108-101156) Fixes SkyStone issue #88 Adds an inspection item that notes when a robot controller (Control Hub) is using the factory default password. Fixes SkyStone issue #61 Fixes SkyStone issue #142 Fixes ftc_app issue #417 by adding more current and voltage monitoring capabilities for REV Hubs. Fixes a crash sometimes caused by OnBotJava activity Improves OnBotJava autosave functionality ftc_app #738 Fixes system responsiveness issue when an Expansion Hub is disconnected Fixes issue where IMU initialization could prevent Op Modes from stopping Fixes issue where AndroidTextToSpeech.speak() would fail if it was called too early Adds telemetry.speak() methods and blocks, which cause the Driver Station (if also updated) to speak text Adds and improves Expansion Hub-related warnings Improves Expansion Hub low battery warning Displays the warning immediately after the hub reports it Specifies whether the condition is current or occurred temporarily during an OpMode run Displays which hubs reported low battery Displays warning when hub loses and regains power during an OpMode run Fixes the hub's LED pattern after this condition Displays warning when Expansion Hub is not responding to commands Specifies whether the condition is current or occurred temporarily during an OpMode run Clarifies warning when Expansion Hub is not present at startup Specifies that this condition requires a Robot Restart before the hub can be used. The hub light will now accurately reflect this state Improves logging and reduces log spam during these conditions Syncs the Control Hub time and timezone to a connected web browser programming the robot, if a Driver Station is not available. Adds bulk read functionality for REV Hubs A bulk caching mode must be set at the Hub level with LynxModule#setBulkCachingMode(). This applies to all relevant SDK hardware classes that reference that Hub. The following following Hub bulk caching modes are available: BulkCachingMode.OFF (default): All hardware calls operate as usual. Bulk data can read through LynxModule#getBulkData() and processed manually. BulkCachingMode.AUTO: Applicable hardware calls are served from a bulk read cache that is cleared/refreshed automatically to ensure identical commands don't hit the same cache. The cache can also be cleared manually with LynxModule#clearBulkCache(), although this is not recommended. (advanced users) BulkCachingMode.MANUAL: Same as BulkCachingMode.AUTO except the cache is never cleared automatically. To avoid getting stale data, the cache must be manually cleared at the beginning of each loop body or as the user deems appropriate. Removes PIDF Annotation values added in Rev 5.3 (to AndyMark, goBILDA and TETRIX motor configurations). The new motor types will still be available but their Default control behavior will revert back to Rev 5.2 Adds new ConceptMotorBulkRead sample Opmode to demonstrate and compare Motor Bulk-Read modes for reducing I/O latencies. Version 5.3 (20191004-112306) Fixes external USB/UVC webcam support Makes various bugfixes and improvements to Blocks page, including but not limited to: Many visual tweaks Browser zoom and window resize behave better Resizing the Java preview pane works better and more consistently across browsers The Java preview pane consistently gets scrollbars when needed The Java preview pane is hidden by default on phones Internet Explorer 11 should work Large dropdown lists display properly on lower res screens Disabled buttons are now visually identifiable as disabled A warning is shown if a user selects a TFOD sample, but their device is not compatible Warning messages in a Blocks op mode are now visible by default. Adds goBILDA 5201 and 5202 motors to Robot Configurator Adds PIDF Annotation values to AndyMark, goBILDA and TETRIX motor configurations. This has the effect of causing the RUN_USING_ENCODERS and RUN_TO_POSITION modes to use PIDF vs PID closed loop control on these motors. This should provide more responsive, yet stable, speed control. PIDF adds Feedforward control to the basic PID control loop. Feedforward is useful when controlling a motor's speed because it "anticipates" how much the control voltage must change to achieve a new speed set-point, rather than requiring the integrated error to change sufficiently. The PIDF values were chosen to provide responsive, yet stable, speed control on a lightly loaded motor. The more heavily a motor is loaded (drag or friction), the more noticable the PIDF improvement will be. Fixes startup crash on Android 10 Fixes ftc_app issue #712 (thanks to FROGbots-4634) Fixes ftc_app issue #542 Allows "A" and lowercase letters when naming device through RC and DS apps. Version 5.2 (20190905-083277) Fixes extra-wide margins on settings activities, and placement of the new configuration button Adds Skystone Vuforia image target data. Includes sample Skystone Vuforia Navigation op modes (Java). Includes sample Skystone Vuforia Navigation op modes (Blocks). Adds TensorFlow inference model (.tflite) for Skystone game elements. Includes sample Skystone TensorFlow op modes (Java). Includes sample Skystone TensorFlow op modes (Blocks). Removes older (season-specific) sample op modes. Includes 64-bit support (to comply with Google Play requirements). Protects against Stuck OpModes when a Restart Robot is requested. (Thanks to FROGbots-4634) (ftc_app issue #709) Blocks related changes: Fixes bug with blocks generated code when hardware device name is a java or javascript reserved word. Shows generated java code for blocks, even when hardware items are missing from the active configuration. Displays warning icon when outdated Vuforia and TensorFlow blocks are used (SkyStone issue #27) Version 5.1 (20190820-222104) Defines default PIDF parameters for the following motors: REV Core Hex Motor REV 20:1 HD Hex Motor REV 40:1 HD Hex Motor Adds back button when running on a device without a system back button (such as a Control Hub) Allows a REV Control Hub to update the firmware on a REV Expansion Hub via USB Fixes SkyStone issue #9 Fixes ftc_app issue #715 Prevents extra DS User clicks by filtering based on current state. Prevents incorrect DS UI state changes when receiving new OpMode list from RC Adds support for REV Color Sensor V3 Adds a manual-refresh DS Camera Stream for remotely viewing RC camera frames. To show the stream on the DS, initialize but do not run a stream-enabled opmode, select the Camera Stream option in the DS menu, and tap the image to refresh. This feature is automatically enabled when using Vuforia or TFOD—no additional RC configuration is required for typical use cases. To hide the stream, select the same menu item again. Note that gamepads are disabled and the selected opmode cannot be started while the stream is open as a safety precaution. To use custom streams, consult the API docs for CameraStreamServer#setSource and CameraStreamSource. Adds many Star Wars sounds to RobotController resources. Added SKYSTONE Sounds Chooser Sample Program. Switches out startup, connect chimes, and error/warning sounds for Star Wars sounds Updates OnBot Java to use a WebSocket for communication with the robot The OnBot Java page no longer has to do a full refresh when a user switches from editing one file to another Known issues: Camera Stream The Vuforia camera stream inherits the issues present in the phone preview (namely ftc_app issue #574). This problem does not affect the TFOD camera stream even though it receives frames from Vuforia. The orientation of the stream frames may not always match the phone preview. For now, these frames may be rotated manually via a custom CameraStreamSource if desired. OnBotJava Browser back button may not always work correctly It's possible for a build to be queued, but not started. The OnBot Java build console will display a warning if this occurs. A user might not realize they are editing a different file if the user inadvertently switches from one file to another since this switch is now seamless. The name of the currently open file is displayed in the browser tab. Version 5.0 (built on 19.06.14) Support for the REV Robotics Control Hub. Adds a Java preview pane to the Blocks editor. Adds a new offline export feature to the Blocks editor. Display wifi channel in Network circle on Driver Station. Adds calibration for Logitech C270 Updates build tooling and target SDK. Compliance with Google's permissions infrastructure (Required after build tooling update). Keep Alives to mitigate the Motorola wifi scanning problem. Telemetry substitute no longer necessary. Improves Vuforia error reporting. Fixes ftctechnh/ftc_app issues 621, 713. Miscellaneous bug fixes and improvements. Version 4.3 (built on 18.10.31) Includes missing TensorFlow-related libraries and files. Version 4.2 (built on 18.10.30) Includes fix to avoid deadlock situation with WatchdogMonitor which could result in USB communication errors. Comm error appeared to require that user disconnect USB cable and restart the Robot Controller app to recover. robotControllerLog.txt would have error messages that included the words "E RobotCore: lynx xmit lock: #### abandoning lock:" Includes fix to correctly list the parent module address for a REV Robotics Expansion Hub in a configuration (.xml) file. Bug in versions 4.0 and 4.1 would incorrect list the address module for a parent REV Robotics device as "1". If the parent module had a higher address value than the daisy-chained module, then this bug would prevent the Robot Controller from communicating with the downstream Expansion Hub. Added requirement for ACCESS_COARSE_LOCATION to allow a Driver Station running Android Oreo to scan for Wi-Fi Direct devices. Added google() repo to build.gradle because aapt2 must be downloaded from the google() repository beginning with version 3.2 of the Android Gradle Plugin. Important Note: Android Studio users will need to be connected to the Internet the first time build the ftc_app project. Internet connectivity is required for the first build so the appropriate files can be downloaded from the Google repository. Users should not need to be connected to the Internet for subsequent builds. This should also fix buid issue where Android Studio would complain that it "Could not find com.android.tools.lint:lint-gradle:26.1.4" (or similar). Added support for REV Spark Mini motor controller as part of the configuration menu for a servo/PWM port on the REV Expansion Hub. Provide examples for playing audio files in an Op Mode. Block Development Tool Changes Includes a fix for a problem with the Velocity blocks that were reported in the FTC Technology forum (Blocks Programming subforum). Change the "Save completed successfully." message to a white color so it will contrast with a green background. Fixed the "Download image" feature so it will work if there are text blocks in the op mode. Introduce support for Google's TensorFlow Lite technology for object detetion for 2018-2019 game. TensorFlow lite can recognize Gold Mineral and Silver Mineral from 2018-2019 game. Example Java and Block op modes are included to show how to determine the relative position of the gold block (left, center, right). Version 4.1 (released on 18.09.24) Changes include: Fix to prevent crash when deprecated configuration annotations are used. Change to allow FTC Robot Controller APK to be auto-updated using FIRST Global Control Hub update scripts. Removed samples for non supported / non legal hardware. Improvements to Telemetry.addData block with "text" socket. Updated Blocks sample op mode list to include Rover Ruckus Vuforia example. Update SDK library version number. Version 4.0 (released on 18.09.12) Changes include: Initial support for UVC compatible cameras If UVC camera has a unique serial number, RC will detect and enumerate by serial number. If UVC camera lacks a unique serial number, RC will only support one camera of that type connected. Calibration settings for a few cameras are included (see TeamCode/src/main/res/xml/teamwebcamcalibrations.xml for details). User can upload calibration files from Program and Manage web interface. UVC cameras seem to draw a fair amount of electrical current from the USB bus. This does not appear to present any problems for the REV Robotics Control Hub. This does seem to create stability problems when using some cameras with an Android phone-based Robot Controller. FTC Tech Team is investigating options to mitigate this issue with the phone-based Robot Controllers. Updated sample Vuforia Navigation and VuMark Op Modes to demonstrate how to use an internal phone-based camera and an external UVC webcam. Support for improved motor control. REV Robotics Expansion Hub firmware 1.8 and greater will support a feed forward mechanism for closed loop motor control. FTC SDK has been modified to support PIDF coefficients (proportional, integral, derivative, and feed forward). FTC Blocks development tool modified to include PIDF programming blocks. Deprecated older PID-related methods and variables. REV's 1.8.x PIDF-related changes provide a more linear and accurate way to control a motor. Wireless Added 5GHz support for wireless channel changing for those devices that support it. Tested with Moto G5 and E4 phones. Also tested with other (currently non-approved) phones such as Samsung Galaxy S8. Improved Expansion Hub firmware update support in Robot Controller app Changes to make the system more robust during the firmware update process (when performed through Robot Controller app). User no longer has to disconnect a downstream daisy-chained Expansion Hub when updating an Expansion Hub's firmware. If user is updating an Expansion Hub's firmware through a USB connection, he/she does not have to disconnect RS485 connection to other Expansion Hubs. The user still must use a USB connection to update an Expansion Hub's firmware. The user cannot update the Expansion Hub firmware for a downstream device that is daisy chained through an RS485 connection. If an Expansion Hub accidentally gets "bricked" the Robot Controller app is now more likely to recognize the Hub when it scans the USB bus. Robot Controller app should be able to detect an Expansion Hub, even if it accidentally was bricked in a previous update attempt. Robot Controller app should be able to install the firmware onto the Hub, even if if accidentally was bricked in a previous update attempt. Resiliency FTC software can detect and enable an FTDI reset feature that is available with REV Robotics v1.8 Expansion Hub firmware and greater. When enabled, the Expansion Hub can detect if it hasn't communicated with the Robot Controller over the FTDI (USB) connection. If the Hub hasn't heard from the Robot Controller in a while, it will reset the FTDI connection. This action helps system recover from some ESD-induced disruptions. Various fixes to improve reliability of FTC software. Blocks Fixed errors with string and list indices in blocks export to java. Support for USB connected UVC webcams. Refactored optimized Blocks Vuforia code to support Rover Ruckus image targets. Added programming blocks to support PIDF (proportional, integral, derivative and feed forward) motor control. Added formatting options (under Telemetry and Miscellaneous categories) so user can set how many decimal places to display a numerical value. Support to play audio files (which are uploaded through Blocks web interface) on Driver Station in addition to the Robot Controller. Fixed bug with Download Image of Blocks feature. Support for REV Robotics Blinkin LED Controller. Support for REV Robotics 2m Distance Sensor. Added support for a REV Touch Sensor (no longer have to configure as a generic digital device). Added blocks for DcMotorEx methods. These are enhanced methods that you can use when supported by the motor controller hardware. The REV Robotics Expansion Hub supports these enhanced methods. Enhanced methods include methods to get/set motor velocity (in encoder pulses per second), get/set PIDF coefficients, etc.. Modest Improvements in Logging Decrease frequency of battery checker voltage statements. Removed non-FTC related log statements (wherever possible). Introduced a "Match Logging" feature. Under "Settings" a user can enable/disable this feature (it's disabled by default). If enabled, user provides a "Match Number" through the Driver Station user interface (top of the screen). The Match Number is used to create a log file specifically with log statements from that particular Op Mode run. Match log files are stored in /sdcard/FIRST/matlogs on the Robot Controller. Once an op mode run is complete, the Match Number is cleared. This is a convenient way to create a separate match log with statements only related to a specific op mode run. New Devices Support for REV Robotics Blinkin LED Controller. Support for REV Robotics 2m Distance Sensor. Added configuration option for REV 20:1 HD Hex Motor. Added support for a REV Touch Sensor (no longer have to configure as a generic digital device). Miscellaneous Fixed some errors in the definitions for acceleration and velocity in our javadoc documentation. Added ability to play audio files on Driver Station When user is configuring an Expansion Hub, the LED on the Expansion Hub will change blink pattern (purple-cyan) to indicate which Hub is currently being configured. Renamed I2cSensorType to I2cDeviceType. Added an external sample Op Mode that demonstrates localization using 2018-2019 (Rover Ruckus presented by QualComm) Vuforia targets. Added an external sample Op Mode that demonstrates how to use the REV Robotics 2m Laser Distance Sensor. Added an external sample Op Mode that demonstrates how to use the REV Robotics Blinkin LED Controller. Re-categorized external Java sample Op Modes to "TeleOp" instead of "Autonomous". Known issues: Initial support for UVC compatible cameras UVC cameras seem to draw significant amount of current from the USB bus. This does not appear to present any problems for the REV Robotics Control Hub. This does seem to create stability problems when using some cameras with an Android phone-based Robot Controller. FTC Tech Team is investigating options to mitigate this issue with the phone-based Robot Controllers. There might be a possible deadlock which causes the RC to become unresponsive when using a UVC webcam with a Nougat Android Robot Controller. Wireless When user selects a wireless channel, this channel does not necessarily persist if the phone is power cycled. Tech Team is hoping to eventually address this issue in a future release. Issue has been present since apps were introduced (i.e., it is not new with the v4.0 release). Wireless channel is not currently displayed for WiFi Direct connections. Miscellaneous The blink indication feature that shows which Expansion Hub is currently being configured does not work for a newly created configuration file. User has to first save a newly created configuration file and then close and re-edit the file in order for blink indicator to work. Version 3.6 (built on 17.12.18) Changes include: Blocks Changes Uses updated Google Blockly software to allow users to edit their op modes on Apple iOS devices (including iPad and iPhone). Improvement in Blocks tool to handle corrupt op mode files. Autonomous op modes should no longer get switched back to tele-op after re-opening them to be edited. The system can now detect type mismatches during runtime and alert the user with a message on the Driver Station. Updated javadoc documentation for setPower() method to reflect correct range of values (-1 to +1). Modified VuforiaLocalizerImpl to allow for user rendering of frames Added a user-overrideable onRenderFrame() method which gets called by the class's renderFrame() method. Version 3.5 (built on 17.10.30) Changes with version 3.5 include: Introduced a fix to prevent random op mode stops, which can occur after the Robot Controller app has been paused and then resumed (for example, when a user temporarily turns off the display of the Robot Controller phone, and then turns the screen back on). Introduced a fix to prevent random op mode stops, which were previously caused by random peer disconnect events on the Driver Station. Fixes issue where log files would be closed on pause of the RC or DS, but not re-opened upon resume. Fixes issue with battery handler (voltage) start/stop race. Fixes issue where Android Studio generated op modes would disappear from available list in certain situations. Fixes problem where OnBot Java would not build on REV Robotics Control Hub. Fixes problem where OnBot Java would not build if the date and time on the Robot Controller device was "rewound" (set to an earlier date/time). Improved error message on OnBot Java that occurs when renaming a file fails. Removed unneeded resources from android.jar binaries used by OnBot Java to reduce final size of Robot Controller app. Added MR_ANALOG_TOUCH_SENSOR block to Blocks Programming Tool. Version 3.4 (built on 17.09.06) Changes with version 3.4 include: Added telemetry.update() statement for BlankLinearOpMode template. Renamed sample Block op modes to be more consistent with Java samples. Added some additional sample Block op modes. Reworded OnBot Java readme slightly. Version 3.3 (built on 17.09.04) This version of the software includes improves for the FTC Blocks Programming Tool and the OnBot Java Programming Tool. Changes with verion 3.3 include: Android Studio ftc_app project has been updated to use Gradle Plugin 2.3.3. Android Studio ftc_app project is already using gradle 3.5 distribution. Robot Controller log has been renamed to /sdcard/RobotControllerLog.txt (note that this change was actually introduced w/ v3.2). Improvements in I2C reliability. Optimized I2C read for REV Expansion Hub, with v1.7 firmware or greater. Updated all external/samples (available through OnBot and in Android project folder). Vuforia Added support for VuMarks that will be used for the 2017-2018 season game. Blocks Update to latest Google Blockly release. Sample op modes can be selected as a template when creating new op mode. Fixed bug where the blocks would disappear temporarily when mouse button is held down. Added blocks for Range.clip and Range.scale. User can now disable/enable Block op modes. Fix to prevent occasional Blocks deadlock. OnBot Java Significant improvements with autocomplete function for OnBot Java editor. Sample op modes can be selected as a template when creating new op mode. Fixes and changes to complete hardware setup feature. Updated (and more useful) onBot welcome message. Known issues: Android Studio After updating to the new v3.3 Android Studio project folder, if you get error messages indicating "InvalidVirtualFileAccessException" then you might need to do a File->Invalidate Caches / Restart to clear the error. OnBot Java Sometimes when you push the build button to build all op modes, the RC returns an error message that the build failed. If you press the build button a second time, the build typically suceeds. Version 3.2 (built on 17.08.02) This version of the software introduces the "OnBot Java" Development Tool. Similar to the FTC Blocks Development Tool, the FTC OnBot Java Development Tool allows a user to create, edit and build op modes dynamically using only a Javascript-enabled web browser. The OnBot Java Development Tool is an integrated development environment (IDE) that is served up by the Robot Controller. Op modes are created and edited using a Javascript-enabled browser (Google Chromse is recommended). Op modes are saved on the Robot Controller Android device directly. The OnBot Java Development Tool provides a Java programming environment that does NOT need Android Studio. Changes with version 3.2 include: Enhanced web-based development tools Introduction of OnBot Java Development Tool. Web-based programming and management features are "always on" (user no longer needs to put Robot Controller into programming mode). Web-based management interface (where user can change Robot Controller name and also easily download Robot Controller log file). OnBot Java, Blocks and Management features available from web based interface. Blocks Programming Development Tool: Changed "LynxI2cColorRangeSensor" block to "REV Color/range sensor" block. Fixed tooltip for ColorSensor.isLightOn block. Added blocks for ColorSensor.getNormalizedColors and LynxI2cColorRangeSensor.getNormalizedColors. Added example op modes for digital touch sensor and REV Robotics Color Distance sensor. User selectable color themes. Includes many minor enhancements and fixes (too numerous to list). Known issues: Auto complete function is incomplete and does not support the following (for now): Access via this keyword Access via super keyword Members of the super cloass, not overridden by the class Any methods provided in the current class Inner classes Can't handle casted objects Any objects coming from an parenthetically enclosed expression Version 3.10 (built on 17.05.09) This version of the software provides support for the REV Robotics Expansion Hub. This version also includes improvements in the USB communication layer in an effort to enhance system resiliency. If you were using a 2.x version of the software previously, updating to version 3.1 requires that you also update your Driver Station software in addition to updating the Robot Controller software. Also note that in version 3.10 software, the setMaxSpeed and getMaxSpeed methods are no longer available (not deprecated, they have been removed from the SDK). Also note that the the new 3.x software incorporates motor profiles that a user can select as he/she configures the robot. Changes include: Blocks changes Added VuforiaTrackableDefaultListener.getPose and Vuforia.trackPose blocks. Added optimized blocks support for Vuforia extended tracking. Added atan2 block to the math category. Added useCompetitionFieldTargetLocations parameter to Vuforia.initialize block. If set to false, the target locations are placed at (0,0,0) with target orientation as specified in https://github.com/gearsincorg/FTCVuforiaDemo/blob/master/Robot_Navigation.java tutorial op mode. Incorporates additional improvements to USB comm layer to improve system resiliency (to recover from a greater number of communication disruptions). Additional Notes Regarding Version 3.00 (built on 17.04.13) In addition to the release changes listed below (see section labeled "Version 3.00 (built on 17.04.013)"), version 3.00 has the following important changes: Version 3.00 software uses a new version of the FTC Robocol (robot protocol). If you upgrade to v3.0 on the Robot Controller and/or Android Studio side, you must also upgrade the Driver Station software to match the new Robocol. Version 3.00 software removes the setMaxSpeed and getMaxSpeed methods from the DcMotor class. If you have an op mode that formerly used these methods, you will need to remove the references/calls to these methods. Instead, v3.0 provides the max speed information through the use of motor profiles that are selected by the user during robot configuration. Version 3.00 software currently does not have a mechanism to disable extra i2c sensors. We hope to re-introduce this function with a release in the near future. Version 3.00 (built on 17.04.13) *** Use this version of the software at YOUR OWN RISK!!! *** This software is being released as an "alpha" version. Use this version at your own risk! This pre-release software contains SIGNIFICANT changes, including changes to the Wi-Fi Direct pairing mechanism, rewrites of the I2C sensor classes, changes to the USB/FTDI layer, and the introduction of support for the REV Robotics Expansion Hub and the REV Robotics color-range-light sensor. These changes were implemented to improve the reliability and resiliency of the FTC control system. Please note, however, that version 3.00 is considered "alpha" code. This code is being released so that the FIRST community will have an opportunity to test the new REV Expansion Hub electronics module when it becomes available in May. The developers do not recommend using this code for critical applications (i.e., competition use). *** Use this version of the software at YOUR OWN RISK!!! *** Changes include: Major rework of sensor-related infrastructure. Includes rewriting sensor classes to implement synchronous I2C communication. Fix to reset Autonomous timer back to 30 seconds. Implementation of specific motor profiles for approved 12V motors (includes Tetrix, AndyMark, Matrix and REV models). Modest improvements to enhance Wi-Fi P2P pairing. Fixes telemetry log addition race. Publishes all the sources (not just a select few). Includes Block programming improvements Addition of optimized Vuforia blocks. Auto scrollbar to projects and sounds pages. Fixed blocks paste bug. Blocks execute after while-opModeIsActive loop (to allow for cleanup before exiting op mode). Added gyro integratedZValue block. Fixes bug with projects page for Firefox browser. Added IsSpeaking block to AndroidTextToSpeech. Implements support for the REV Robotics Expansion Hub Implements support for integral REV IMU (physically installed on I2C bus 0, uses same Bosch BNO055 9 axis absolute orientation sensor as Adafruit 9DOF abs orientation sensor). - Implements support for REV color/range/light sensor. Provides support to update Expansion Hub firmware through FTC SDK. Detects REV firmware version and records in log file. Includes support for REV Control Hub (note that the REV Control Hub is not yet approved for FTC use). Implements FTC Blocks programming support for REV Expansion Hub and sensor hardware. Detects and alerts when I2C device disconnect. Version 2.62 (built on 17.01.07) Added null pointer check before calling modeToByte() in finishModeSwitchIfNecessary method for ModernRoboticsUsbDcMotorController class. Changes to enhance Modern Robotics USB protocol robustness. Version 2.61 (released on 16.12.19) Blocks Programming mode changes: Fix to correct issue when an exception was thrown because an OpticalDistanceSensor object appears twice in the hardware map (the second time as a LightSensor). Version 2.6 (released on 16.12.16) Fixes for Gyro class: Improve (decrease) sensor refresh latency. fix isCalibrating issues. Blocks Programming mode changes: Blocks now ignores a device in the configuration xml if the name is empty. Other devices work in configuration work fine. Version 2.5 (internal release on released on 16.12.13) Blocks Programming mode changes: Added blocks support for AdafruitBNO055IMU. Added Download Op Mode button to FtcBocks.html. Added support for copying blocks in one OpMode and pasting them in an other OpMode. The clipboard content is stored on the phone, so the programming mode server must be running. Modified Utilities section of the toolbox. In Programming Mode, display information about the active connections. Fixed paste location when workspace has been scrolled. Added blocks support for the android Accelerometer. Fixed issue where Blocks Upload Op Mode truncated name at first dot. Added blocks support for Android SoundPool. Added type safety to blocks for Acceleration. Added type safety to blocks for AdafruitBNO055IMU.Parameters. Added type safety to blocks for AnalogInput. Added type safety to blocks for AngularVelocity. Added type safety to blocks for Color. Added type safety to blocks for ColorSensor. Added type safety to blocks for CompassSensor. Added type safety to blocks for CRServo. Added type safety to blocks for DigitalChannel. Added type safety to blocks for ElapsedTime. Added type safety to blocks for Gamepad. Added type safety to blocks for GyroSensor. Added type safety to blocks for IrSeekerSensor. Added type safety to blocks for LED. Added type safety to blocks for LightSensor. Added type safety to blocks for LinearOpMode. Added type safety to blocks for MagneticFlux. Added type safety to blocks for MatrixF. Added type safety to blocks for MrI2cCompassSensor. Added type safety to blocks for MrI2cRangeSensor. Added type safety to blocks for OpticalDistanceSensor. Added type safety to blocks for Orientation. Added type safety to blocks for Position. Added type safety to blocks for Quaternion. Added type safety to blocks for Servo. Added type safety to blocks for ServoController. Added type safety to blocks for Telemetry. Added type safety to blocks for Temperature. Added type safety to blocks for TouchSensor. Added type safety to blocks for UltrasonicSensor. Added type safety to blocks for VectorF. Added type safety to blocks for Velocity. Added type safety to blocks for VoltageSensor. Added type safety to blocks for VuforiaLocalizer.Parameters. Added type safety to blocks for VuforiaTrackable. Added type safety to blocks for VuforiaTrackables. Added type safety to blocks for enums in AdafruitBNO055IMU.Parameters. Added type safety to blocks for AndroidAccelerometer, AndroidGyroscope, AndroidOrientation, and AndroidTextToSpeech. Version 2.4 (released on 16.11.13) Fix to avoid crashing for nonexistent resources. Blocks Programming mode changes: Added blocks to support OpenGLMatrix, MatrixF, and VectorF. Added blocks to support AngleUnit, AxesOrder, AxesReference, CameraDirection, CameraMonitorFeedback, DistanceUnit, and TempUnit. Added blocks to support Acceleration. Added blocks to support LinearOpMode.getRuntime. Added blocks to support MagneticFlux and Position. Fixed typos. Made blocks for ElapsedTime more consistent with other objects. Added blocks to support Quaternion, Velocity, Orientation, AngularVelocity. Added blocks to support VuforiaTrackables, VuforiaTrackable, VuforiaLocalizer, VuforiaTrackableDefaultListener. Fixed a few blocks. Added type checking to new blocks. Updated to latest blockly. Added default variable blocks to navigation and matrix blocks. Fixed toolbox entry for openGLMatrix_rotation_withAxesArgs. When user downloads Blocks-generated op mode, only the .blk file is downloaded. When user uploads Blocks-generated op mode (.blk file), Javascript code is auto generated. Added DbgLog support. Added logging when a blocks file is read/written. Fixed bug to properly render blocks even if missing devices from configuration file. Added support for additional characters (not just alphanumeric) for the block file names (for download and upload). Added support for OpMode flavor (“Autonomous” or “TeleOp”) and group. Changes to Samples to prevent tutorial issues. Incorporated suggested changes from public pull 216 (“Replace .. paths”). Remove Servo Glitches when robot stopped. if user hits “Cancels” when editing a configuration file, clears the unsaved changes and reverts to original unmodified configuration. Added log info to help diagnose why the Robot Controller app was terminated (for example, by watch dog function). Added ability to transfer log from the controller. Fixed inconsistency for AngularVelocity Limit unbounded growth of data for telemetry. If user does not call telemetry.update() for LinearOpMode in a timely manner, data added for telemetry might get lost if size limit is exceeded. Version 2.35 (released on 16.10.06) Blockly programming mode - Removed unnecesary idle() call from blocks for new project. Version 2.30 (released on 16.10.05) Blockly programming mode: Mechanism added to save Blockly op modes from Programming Mode Server onto local device To avoid clutter, blocks are displayed in categorized folders Added support for DigitalChannel Added support for ModernRoboticsI2cCompassSensor Added support for ModernRoboticsI2cRangeSensor Added support for VoltageSensor Added support for AnalogInput Added support for AnalogOutput Fix for CompassSensor setMode block Vuforia Fix deadlock / make camera data available while Vuforia is running. Update to Vuforia 6.0.117 (recommended by Vuforia and Google to close security loophole). Fix for autonomous 30 second timer bug (where timer was in effect, even though it appeared to have timed out). opModeIsActive changes to allow cleanup after op mode is stopped (with enforced 2 second safety timeout). Fix to avoid reading i2c twice. Updated sample Op Modes. Improved logging and fixed intermittent freezing. Added digital I/O sample. Cleaned up device names in sample op modes to be consistent with Pushbot guide. Fix to allow use of IrSeekerSensorV3. Version 2.20 (released on 16.09.08) Support for Modern Robotics Compass Sensor. Support for Modern Robotics Range Sensor. Revise device names for Pushbot templates to match the names used in Pushbot guide. Fixed bug so that IrSeekerSensorV3 device is accessible as IrSeekerSensor in hardwareMap. Modified computer vision code to require an individual Vuforia license (per legal requirement from PTC). Minor fixes. Blockly enhancements: Support for Voltage Sensor. Support for Analog Input. Support for Analog Output. Support for Light Sensor. Support for Servo Controller. Version 2.10 (released on 16.09.03) Support for Adafruit IMU. Improvements to ModernRoboticsI2cGyro class Block on reset of z axis. isCalibrating() returns true while gyro is calibration. Updated sample gyro program. Blockly enhancements support for android.graphics.Color. added support for ElapsedTime. improved look and legibility of blocks. support for compass sensor. support for ultrasonic sensor. support for IrSeeker. support for LED. support for color sensor. support for CRServo prompt user to configure robot before using programming mode. Provides ability to disable audio cues. various bug fixes and improvements. Version 2.00 (released on 16.08.19) This is the new release for the upcoming 2016-2017 FIRST Tech Challenge Season. Channel change is enabled in the FTC Robot Controller app for Moto G 2nd and 3rd Gen phones. Users can now use annotations to register/disable their Op Modes. Changes in the Android SDK, JDK and build tool requirements (minsdk=19, java 1.7, build tools 23.0.3). Standardized units in analog input. Cleaned up code for existing analog sensor classes. setChannelMode and getChannelMode were REMOVED from the DcMotorController class. This is important - we no longer set the motor modes through the motor controller. setMode and getMode were added to the DcMotor class. ContinuousRotationServo class has been added to the FTC SDK. Range.clip() method has been overloaded so it can support this operation for int, short and byte integers. Some changes have been made (new methods added) on how a user can access items from the hardware map. Users can now set the zero power behavior for a DC motor so that the motor will brake or float when power is zero. Prototype Blockly Programming Mode has been added to FTC Robot Controller. Users can place the Robot Controller into this mode, and then use a device (such as a laptop) that has a Javascript enabled browser to write Blockly-based Op Modes directly onto the Robot Controller. Users can now configure the robot remotely through the FTC Driver Station app. Android Studio project supports Android Studio 2.1.x and compile SDK Version 23 (Marshmallow). Vuforia Computer Vision SDK integrated into FTC SDK. Users can use sample vision targets to get localization information on a standard FTC field. Project structure has been reorganized so that there is now a TeamCode package that users can use to place their local/custom Op Modes into this package. Inspection function has been integrated into the FTC Robot Controller and Driver Station Apps (Thanks Team HazMat… 9277 & 10650!). Audio cues have been incorporated into FTC SDK. Swap mechanism added to FTC Robot Controller configuration activity. For example, if you have two motor controllers on a robot, and you misidentified them in your configuration file, you can use the Swap button to swap the devices within the configuration file (so you do not have to manually re-enter in the configuration info for the two devices). Fix mechanism added to all user to replace an electronic module easily. For example, suppose a servo controller dies on your robot. You replace the broken module with a new module, which has a different serial number from the original servo controller. You can use the Fix button to automatically reconfigure your configuration file to use the serial number of the new module. Improvements made to fix resiliency and responsiveness of the system. For LinearOpMode the user now must for a telemetry.update() to update the telemetry data on the driver station. This update() mechanism ensures that the driver station gets the updated data properly and at the same time. The Auto Configure function of the Robot Controller is now template based. If there is a commonly used robot configuration, a template can be created so that the Auto Configure mechanism can be used to quickly configure a robot of this type. The logic to detect a runaway op mode (both in the LinearOpMode and OpMode types) and to abort the run, then auto recover has been improved/implemented. Fix has been incorporated so that Logitech F310 gamepad mappings will be correct for Marshmallow users. Release 16.07.08 For the ftc_app project, the gradle files have been modified to support Android Studio 2.1.x. Release 16.03.30 For the MIT App Inventor, the design blocks have new icons that better represent the function of each design component. Some changes were made to the shutdown logic to ensure the robust shutdown of some of our USB services. A change was made to LinearOpMode so as to allow a given instance to be executed more than once, which is required for the App Inventor. Javadoc improved/updated. Release 16.03.09 Changes made to make the FTC SDK synchronous (significant change!) waitOneFullHardwareCycle() and waitForNextHardwareCycle() are no longer needed and have been deprecated. runOpMode() (for a LinearOpMode) is now decoupled from the system's hardware read/write thread. loop() (for an OpMode) is now decoupled from the system's hardware read/write thread. Methods are synchronous. For example, if you call setMode(DcMotorController.RunMode.RESET_ENCODERS) for a motor, the encoder is guaranteed to be reset when the method call is complete. For legacy module (NXT compatible), user no longer has to toggle between read and write modes when reading from or writing to a legacy device. Changes made to enhance reliability/robustness during ESD event. Changes made to make code thread safe. Debug keystore added so that user-generated robot controller APKs will all use the same signed key (to avoid conflicts if a team has multiple developer laptops for example). Firmware version information for Modern Robotics modules are now logged. Changes made to improve USB comm reliability and robustness. Added support for voltage indicator for legacy (NXT-compatible) motor controllers. Changes made to provide auto stop capabilities for op modes. A LinearOpMode class will stop when the statements in runOpMode() are complete. User does not have to push the stop button on the driver station. If an op mode is stopped by the driver station, but there is a run away/uninterruptible thread persisting, the app will log an error message then force itself to crash to stop the runaway thread. Driver Station UI modified to display lowest measured voltage below current voltage (12V battery). Driver Station UI modified to have color background for current voltage (green=good, yellow=caution, red=danger, extremely low voltage). javadoc improved (edits and additional classes). Added app build time to About activity for driver station and robot controller apps. Display local IP addresses on Driver Station About activity. Added I2cDeviceSynchImpl. Added I2cDeviceSync interface. Added seconds() and milliseconds() to ElapsedTime for clarity. Added getCallbackCount() to I2cDevice. Added missing clearI2cPortActionFlag. Added code to create log messages while waiting for LinearOpMode shutdown. Fix so Wifi Direct Config activity will no longer launch multiple times. Added the ability to specify an alternate i2c address in software for the Modern Robotics gyro. Release 16.02.09 Improved battery checker feature so that voltage values get refreshed regularly (every 250 msec) on Driver Station (DS) user interface. Improved software so that Robot Controller (RC) is much more resilient and “self-healing” to USB disconnects: If user attempts to start/restart RC with one or more module missing, it will display a warning but still start up. When running an op mode, if one or more modules gets disconnected, the RC & DS will display warnings,and robot will keep on working in spite of the missing module(s). If a disconnected module gets physically reconnected the RC will auto detect the module and the user will regain control of the recently connected module. Warning messages are more helpful (identifies the type of module that’s missing plus its USB serial number). Code changes to fix the null gamepad reference when users try to reference the gamepads in the init() portion of their op mode. NXT light sensor output is now properly scaled. Note that teams might have to readjust their light threshold values in their op modes. On DS user interface, gamepad icon for a driver will disappear if the matching gamepad is disconnected or if that gamepad gets designated as a different driver. Robot Protocol (ROBOCOL) version number info is displayed in About screen on RC and DS apps. Incorporated a display filter on pairing screen to filter out devices that don’t use the “-“ format. This filter can be turned off to show all WiFi Direct devices. Updated text in License file. Fixed formatting error in OpticalDistanceSensor.toString(). Fixed issue on with a blank (“”) device name that would disrupt WiFi Direct Pairing. Made a change so that the WiFi info and battery info can be displayed more quickly on the DS upon connecting to RC. Improved javadoc generation. Modified code to make it easier to support language localization in the future. Release 16.01.04 Updated compileSdkVersion for apps Prevent Wifi from entering power saving mode removed unused import from driver station Corrrected "Dead zone" joystick code. LED.getDeviceName and .getConnectionInfo() return null apps check for ROBOCOL_VERSION mismatch Fix for Telemetry also has off-by-one errors in its data string sizing / short size limitations error User telemetry output is sorted. added formatting variants to DbgLog and RobotLog APIs code modified to allow for a long list of op mode names. changes to improve thread safety of RobocolDatagramSocket Fix for "missing hardware leaves robot controller disconnected from driver station" error fix for "fast tapping of Init/Start causes problems" (toast is now only instantiated on UI thread). added some log statements for thread life cycle. moved gamepad reset logic inside of initActiveOpMode() for robustness changes made to mitigate risk of race conditions on public methods. changes to try and flag when WiFi Direct name contains non-printable characters. fix to correct race condition between .run() and .close() in ReadWriteRunnableStandard. updated FTDI driver made ReadWriteRunnableStanard interface public. fixed off-by-one errors in Command constructor moved specific hardware implmentations into their own package. moved specific gamepad implemnatations to the hardware library. changed LICENSE file to new BSD version. fixed race condition when shutting down Modern Robotics USB devices. methods in the ColorSensor classes have been synchronized. corrected isBusy() status to reflect end of motion. corrected "back" button keycode. the notSupported() method of the GyroSensor class was changed to protected (it should not be public). Release 15.11.04.001 Added Support for Modern Robotics Gyro. The GyroSensor class now supports the MR Gyro Sensor. Users can access heading data (about Z axis) Users can also access raw gyro data (X, Y, & Z axes). Example MRGyroTest.java op mode included. Improved error messages More descriptive error messages for exceptions in user code. Updated DcMotor API Enable read mode on new address in setI2cAddress Fix so that driver station app resets the gamepads when switching op modes. USB-related code changes to make USB comm more responsive and to display more explicit error messages. Fix so that USB will recover properly if the USB bus returns garbage data. Fix USB initializtion race condition. Better error reporting during FTDI open. More explicit messages during USB failures. Fixed bug so that USB device is closed if event loop teardown method was not called. Fixed timer UI issue Fixed duplicate name UI bug (Legacy Module configuration). Fixed race condition in EventLoopManager. Fix to keep references stable when updating gamepad. For legacy Matrix motor/servo controllers removed necessity of appending "Motor" and "Servo" to controller names. Updated HT color sensor driver to use constants from ModernRoboticsUsbLegacyModule class. Updated MR color sensor driver to use constants from ModernRoboticsUsbDeviceInterfaceModule class. Correctly handle I2C Address change in all color sensors Updated/cleaned up op modes. Updated comments in LinearI2cAddressChange.java example op mode. Replaced the calls to "setChannelMode" with "setMode" (to match the new of the DcMotor method). Removed K9AutoTime.java op mode. Added MRGyroTest.java op mode (demonstrates how to use MR Gyro Sensor). Added MRRGBExample.java op mode (demonstrates how to use MR Color Sensor). Added HTRGBExample.java op mode (demonstrates how to use HT legacy color sensor). Added MatrixControllerDemo.java (demonstrates how to use legacy Matrix controller). Updated javadoc documentation. Updated release .apk files for Robot Controller and Driver Station apps. Release 15.10.06.002 Added support for Legacy Matrix 9.6V motor/servo controller. Cleaned up build.gradle file. Minor UI and bug fixes for driver station and robot controller apps. Throws error if Ultrasonic sensor (NXT) is not configured for legacy module port 4 or 5. Release 15.08.03.001 New user interfaces for FTC Driver Station and FTC Robot Controller apps. An init() method is added to the OpMode class. For this release, init() is triggered right before the start() method. Eventually, the init() method will be triggered when the user presses an "INIT" button on driver station. The init() and loop() methods are now required (i.e., need to be overridden in the user's op mode). The start() and stop() methods are optional. A new LinearOpMode class is introduced. Teams can use the LinearOpMode mode to create a linear (not event driven) program model. Teams can use blocking statements like Thread.sleep() within a linear op mode. The API for the Legacy Module and Core Device Interface Module have been updated. Support for encoders with the Legacy Module is now working. The hardware loop has been updated for better performance.
innermost47 / AI DjThe sampler that dreams. AI-powered VST3 for real-time music generation. Generate tempo-synced loops, trigger via MIDI, sculpt the unexpected. 8-track sampler meets infinite sound engine. No pre-made tracks—just raw material you control. Play with AI. Stay human.
arekbauer / FaceDownShowcase repository for FaceDown: A sensor-based focus timer. Demonstrating Jetpack Compose, Material 3 Expressive, Room, and raw SensorManager integration.
siamect / ProviewProview is probably the first Open Source system for process control and automation in the world. The largest Proview installation is in SSAB Oxelösund where the entire production line from raw materials to rolled plate are controlled and supervised by over 400 Proview systems.
OG-Frogger / Toad 3 Blooketjavascript:(function()%7Bfunction start() %7B%0A loadGUI()%3B%0A addUtils()%3B%0A%7D%0A%0Afunction wait(time) %7B%0A return new Promise(resolve %3D> setTimeout(resolve%2C time))%3B%0A%7D%0A%0Avar getValues %3D () %3D> new Promise((e%2C t) %3D> %7B%0A try %7B%0A let n %3D window.webpackJsonp.map(e %3D> Object.keys(e%5B1%5D).map(t %3D> e%5B1%5D%5Bt%5D)).reduce((e%2C t) %3D> %5B...e%2C ...t%5D%2C %5B%5D).find(e %3D> %2F%5Cw%7B8%7D-%5Cw%7B4%7D-%5Cw%7B4%7D-%5Cw%7B4%7D-%5Cw%7B12%7D%2F.test(e.toString()) %26%26 %2F%5C(new TextEncoder%5C)%5C.encode%5C(%5C"(.%2B%3F)%5C"%5C)%2F.test(e.toString())).toString()%3B%0A e(%7B%0A blooketBuild%3A n.match(%2F%5Cw%7B8%7D-%5Cw%7B4%7D-%5Cw%7B4%7D-%5Cw%7B4%7D-%5Cw%7B12%7D%2F)%5B0%5D%2C%0A secret%3A n.match(%2F%5C(new TextEncoder%5C)%5C.encode%5C(%5C"(.%2B%3F)%5C"%5C)%2F)%5B1%5D%0A %7D)%0A %7D catch %7B%0A t("Could not fetch auth details")%0A %7D%0A%7D)%3B%0Avar encodeValues %3D async (e%2C t) %3D> %7B%0A let d %3D window.crypto.getRandomValues(new Uint8Array(12))%3B%0A return window.btoa(Array.from(d).map(e %3D> String.fromCharCode(e)).join("") %2B Array.from(new Uint8Array(await window.crypto.subtle.encrypt(%7B%0A name%3A "AES-GCM"%2C%0A iv%3A d%0A %7D%2C await window.crypto.subtle.importKey("raw"%2C await window.crypto.subtle.digest("SHA-256"%2C (new TextEncoder).encode(t))%2C %7B%0A name%3A "AES-GCM"%0A %7D%2C !1%2C %5B"encrypt"%5D)%2C (new TextEncoder).encode(JSON.stringify(e))))).map(e %3D> String.fromCharCode(e)).join(""))%0A%7D%3B%0A%0A%0Afunction loadGUI() %7B%0A var frame %3D document.createElement("iframe")%3B%0A frame.id %3D "blooo"%0A frame.style.display %3D "none"%3B%0A frame.style.width %3D "1px"%3B%0A frame.style.height %3D "1px"%0A document.body.appendChild(frame)%3B%0A%0A window.alert %3D frame.contentWindow.alert%3B%0A window.prompt %3D frame.contentWindow.prompt%3B%0A window.confirm %3D frame.contentWindow.confirm%3B%0A%0A%0A let element %3D document.createElement('div')%3B%0A element.innerHTML %3D %60<div id%3D"GUI"> <style>details > summary%7Bcursor%3A pointer%3B transition%3A 1s%3B list-style%3A circle%3B%7D.hack%7Bborder%3A none%3B background%3A hsl(0%2C 0%25%2C 20%25)%3B padding%3A 7px%3B margin%3A 5px%3B width%3A 70%25%3B color%3A white%3B transition%3A 0.1s%3B border-radius%3A 5px%3B cursor%3A pointer%3B%7D.hack%3Ahover%7Bbackground%3A hsl(0%2C 1%25%2C 31%25)%3B%7D<%2Fstyle> <div style%3D"cursor%3A all-scroll%3B padding-top%3A 2px%3B font-size%3A 1.5rem%3B text-align%3A center%3B">Toad_UI<button id%3D"gui-" style%3D"background%3A black%3B height%3A 45px%3B width%3A 45px%3B border%3A none%3B cursor%3A pointer%3B position%3A absolute%3B top%3A -10px%3B right%3A 90%25%3B font-size%3A 2.5rem%3B border-radius%3A 10px%3B font-family%3A Nunito%3B font-weight%3A bolder%3B padding-top%3A -10px%3B padding-right%3A -15px%3B color%3A white%3B">-<%2Fbutton> <button id%3D"guiX" style%3D"background%3A black%3B height%3A 45px%3B width%3A 45px%3B border%3A none%3B cursor%3A pointer%3B position%3A absolute%3B top%3A -10px%3B right%3A -10px%3B font-size%3A 1.5rem%3B border-radius%3A 10px%3B font-family%3A Nunito%3B font-weight%3A bolder%3B padding-top%3A 10px%3B padding-right%3A 15px%3B color%3A white%3B">X<%2Fbutton> <%2Fdiv><div style%3D"display%3A block%3B margin%3A 10px%3B min-height%3A 70px%3B"> <div id%3D"curPage">No Game Found?<%2Fdiv><div id%3D"name">Name%3A None<%2Fdiv><div>(E To Hide UI)<%2Fdiv><details open%3D""> <summary style%3D"padding%3A 10px%3B font-size%3A 1.5em%3B font-weight%3A bolder">Main Mods<%2Fsummary> <button id%3D"token" class%3D"hack">Daily 500 Tokens/XP<%2Fbutton> <button id%3D"spoof" class%3D"hack">Unlock Blooks<%2Fbutton> <button id%3D"open" class%3D"hack">Spam Open Boxes<%2Fbutton> <button id%3D"sell" class%3D"hack"> Sell Duplicates<%2Fbutton> <button id%3D"correct" class%3D"hack">All Answer Correct<%2Fbutton> <%2Fdetails><br><div id%3D"LoadedGame"> <%2Fdiv><div> Open source on <a href%3D"https%3A%2F%2F">Deez<%2Fa><%2Fdiv><%2Fdiv>%60%3B%0A element.style %3D %60width%3A 350px%3B background%3A rgb(64%2C 64%2C 64)%3B border-radius%3A 8px%3B position%3A absolute%3B text-align%3A center%3B font-family%3A Nunito%3B color%3A white%3B overflow%3A hidden%3B top%3A 5%25%3B left%3A 40%25%3B%60%3B%0A document.body.appendChild(element)%3B%0A var pos1 %3D 0%2C%0A pos2 %3D 0%2C%0A pos3 %3D 0%2C%0A pos4 %3D 0%3B%0A element.onmousedown %3D ((e %3D window.event) %3D> %7B%0A e.preventDefault()%3B%0A pos3 %3D e.clientX%3B%0A pos4 %3D e.clientY%3B%0A document.onmouseup %3D (() %3D> %7B%0A document.onmouseup %3D null%3B%0A document.onmousemove %3D null%3B%0A %7D)%3B%0A document.onmousemove %3D ((e) %3D> %7B%0A e %3D e %7C%7C window.event%3B%0A e.preventDefault()%3B%0A pos1 %3D pos3 - e.clientX%3B%0A pos2 %3D pos4 - e.clientY%3B%0A pos3 %3D e.clientX%3B%0A pos4 %3D e.clientY%3B%0A let top %3D (element.offsetTop - pos2) > 0 %3F (element.offsetTop - pos2) %3A 0%3B%0A let left %3D (element.offsetLeft - pos1) > 0 %3F (element.offsetLeft - pos1) %3A 0%3B%0A element.style.top %3D top %2B "px"%3B%0A element.style.left %3D left %2B "px"%3B%0A %7D)%3B%0A %7D)%3B%0A%7D%0Astart()%3B%0Aasync function debuggerHelp(how) %7B%0A const response %3D await fetch(%27https%3A%2F%2Fapi.blooket.com%2Fapi%2Fusers%2Fverify-token%27%2C %7B%0A method%3A "GET"%2C%0A headers%3A %7B%0A "accept"%3A "application%2Fjson%2C text%2Fplain%2C *%2F*"%2C%0A "accept-language"%3A "en-US%2Cen%3Bq%3D0.9%2Cru%3Bq%3D0.8"%2C%0A %7D%2C%0A credentials%3A "include"%0A %7D)%3B%0A const data %3D await response.json()%3B%0A let name %3D data.name%3B%0A let role %3D data.role%3B%0A window.blooketname %3D name%3B%0A window.blooketrole %3D role%3B%0A startDebugger(name)%3B%0A%7D%0A%0Afunction addtokens(event) %7B%0A try %7B%0A fetch("https%3A%2F%2Fapi.blooket.com%2Fapi%2Fusers"%2C %7B%0A credentials%3A "include"%0A %7D).then(x %3D> x.json()).then(x %3D> %7B%0A getValues().then(async e %3D> %7B%0A fetch("https%3A%2F%2Fapi.blooket.com%2Fapi%2Fusers%2Fadd-rewards"%2C %7B%0A method%3A "put"%2C%0A credentials%3A "include"%2C%0A headers%3A %7B%0A "content-type"%3A "application%2Fjson"%2C%0A "X-Blooket-Build"%3A e.blooketBuild%0A %7D%2C%0A body%3A await encodeValues(%7B%0A name%3A x.name%2C%0A addedTokens%3A 500%2C%0A addedXp%3A 300%0A %7D%2C e.secret)%0A %7D).then(() %3D> alert(%27Added daily rewawrds!%27)).catch(() %3D> alert(%27There was an error when adding rewards!%27))%3B%0A %7D).catch(() %3D> alert(%27There was an error encoding requests!%27))%3B%0A %7D).catch(() %3D> alert(%27There was an error getting username!%27))%3B%0A window.console.clear()%0A %7D catch (hack) %7B%0A if (confirm(%27An error has occured%2C would you like to open the debugger%3F%27)) %7B%0A debuggerHelp()%0A %7D%3B%0A %7D%3B%0A%7D%3B%0A%0Afunction selldupes(event) %7B%0A fetch("https%3A%2F%2Fapi.blooket.com%2Fapi%2Fusers"%2C %7B%0A credentials%3A "include"%0A %7D).then(x %3D> x.json()).then(x %3D> %7B%0A let blooks %3D Object.entries(x.unlocks).map(x %3D> %5Bx%5B0%5D%2C x%5B1%5D - 1%5D).filter(x %3D> x%5B1%5D > 0)%3B%0A let wait %3D ms %3D> new Promise(r %3D> setTimeout(r%2C ms))%3B%0A getValues().then(async e %3D> %7B%0A let error %3D false%3B%0A alert(%27Selling duplicate blooks%2C please wait%27)%3B%0A for (let %5Bblook%2C numSold%5D of blooks) %7B%0A fetch("https%3A%2F%2Fapi.blooket.com%2Fapi%2Fusers%2Fsellblook"%2C %7B%0A method%3A "put"%2C%0A credentials%3A "include"%2C%0A headers%3A %7B%0A "content-type"%3A "application%2Fjson"%2C%0A "X-Blooket-Build"%3A e.blooketBuild%0A %7D%2C%0A body%3A await encodeValues(%7B%0A name%3A x.name%2C%0A blook%2C%0A numSold%0A %7D%2C e.secret)%0A %7D).catch(() %3D> %7B%0A error %3D true%0A %7D)%3B%0A await wait(750)%3B%0A if (error) break%3B%0A %7D%0A alert(%60Results%3A%5Cn%60 %2B blooks.map((x) %3D> %60 %24%7Bx%5B1%5D%7D %24%7Bx%5B0%5D%7D%60).join(%60%5Cn%60))%3B%0A %7D).catch(() %3D> alert(%27There was an error encoding requests!%27))%3B%0A %7D).catch(() %3D> alert(%27There was an error getting user data!%27))%3B%0A%7D%0A%0Afunction spoofblooks(event) %7B%0A try %7B%0A if (window.location.pathname %3D%3D "%2Fplay%2Flobby") %7B%0A let hack %3D Object.values(document.querySelector(%27%23app > div > div%27))%5B1%5D.children%5B1%5D._owner%3B%0A hack.stateNode.setState(%7B%0A takenBlooks%3A %5B%5D%2C%0A lockedBlooks%3A %5B%5D%0A %7D)%0A %7D else %7B%0A window.alert("Run this in a lobby (https%3A%2F%2Fblooket.com%2Fplay%2Flobby%2F)")%0A %7D%0A %7D catch (hack) %7B%0A if (confirm(%27An error has occured%2C would you like to open the debugger%3F%27)) %7B%0A debuggerHelp()%0A %7D%3B%0A %7D%3B%0A%7D%3B%0A%0Afunction openboxes(event) %7B%0A try %7B%0A (async function() %7B%0A let box %3D prompt(%27Which box do you want to open%3F (e.g. Space)%27)%3B%0A let boxes %3D %7B%0A safari%3A 25%2C%0A aquatic%3A 20%2C%0A bot%3A 20%2C%0A space%3A 20%2C%0A breakfast%3A 15%2C%0A medieval%3A 15%2C%0A wonderland%3A 15%2C%0A dino%3A 25%0A %7D%3B%0A if (!Object.keys(boxes).includes(box.toLowerCase())) %7B%0A return alert(%27I could not find that box!%27)%0A %7D%3B%0A let amount %3D prompt(%27How many boxes do you want to open%3F%27)%3B%0A fetch("https%3A%2F%2Fapi.blooket.com%2Fapi%2Fusers"%2C %7B%0A credentials%3A "include"%0A %7D).then(x %3D> x.json()).then(x %3D> %7B%0A if (x.tokens < boxes%5Bbox.toLowerCase()%5D * amount) amount %3D Math.floor(x.tokens %2F boxes%5Bbox.toLowerCase()%5D)%3B%0A if (!amount) return alert(%27You do not have enough tokens!%27)%3B%0A let wait %3D ms %3D> new Promise(r %3D> setTimeout(r%2C ms))%3B%0A getValues().then(async e %3D> %7B%0A let error %3D false%2C%0A blooks %3D %5B%5D%3B%0A for (let i %3D 0%3B i < amount%3B i%2B%2B) %7B%0A fetch("https%3A%2F%2Fapi.blooket.com%2Fapi%2Fusers%2Funlockblook"%2C %7B%0A method%3A "put"%2C%0A credentials%3A "include"%2C%0A headers%3A %7B%0A "content-type"%3A "application%2Fjson"%2C%0A "X-Blooket-Build"%3A e.blooketBuild%0A %7D%2C%0A body%3A await encodeValues(%7B%0A name%3A x.name%2C%0A box%3A box.charAt(0).toUpperCase() %2B box.slice(1).toLowerCase()%0A %7D%2C e.secret)%0A %7D).then(async x %3D> %7B%0A let blook %3D await x.json()%3B%0A blooks.push(blook.unlockedBlook)%3B%0A alert(%60%24%7Bblook.unlockedBlook%7D (%24%7Bi %2B 1%7D%2F%24%7Bamount%7D)%60)%3B%0A %7D).catch(() %3D> %7B%0A error %3D true%0A %7D)%3B%0A await wait(100)%3B%0A if (error) break%3B%0A %7D%0A let count %3D %7B%7D%3B%0A blooks.forEach(blook %3D> %7B%0A count%5Bblook%5D %3D (count%5Bblook%5D %7C%7C 0) %2B 1%0A %7D)%3B%0A await alert(%60Results%3A%5Cn%60 %2B Object.entries(count).map((x) %3D> %60 %24%7Bx%5B1%5D%7D %24%7Bx%5B0%5D%7D%60).join(%60%5Cn%60))%3B%0A %7D).catch(() %3D> alert(%27There was an error encoding requests!%27))%3B%0A %7D).catch(() %3D> alert(%27There was an error getting username!%27))%3B%0A %7D)()%3B%0A window.console.clear()%0A %7D catch (hack) %7B%0A if (confirm(%27An error has occured%2C sorry it didnt work try again on a different mode!%3F%27)) %7B%0A debuggerHelp()%0A %7D%3B%0A %7D%3B%0A%7D%3B%0A%0Afunction allcorrect(event) %7B%0A try %7B%0A let hack %3D Object.values(document.querySelector(%27%23app > div > div%27))%5B1%5D.children%5B1%5D._owner%3B%0A hack.stateNode.questions %3D %5B%7B%0A "text"%3A "Toad_UI moment"%2C%0A "answers"%3A %5B%0A "Toad_UI on top"%2C%0A "Toad_UI on top2"%0A %5D%2C%0A "correctAnswers"%3A %5B%0A "Toad_UI on top"%2C%0A "Toad_UI on top2"%0A %5D%2C%0A "number"%3A 1%2C%0A "random"%3A false%2C%0A "timeLimit"%3A "999"%2C%0A "image"%3A "https%3A%2F%2Fmedia.blooket.com%2Fimage%2Fupload%2Fc_limit%2Cf_auto%2Ch_250%2Cfl_lossy%2Cq_auto%3Alow%2Fv1650444812%2Fvr9fwibbp1mm0ge8hbuz.jpg"%2C%0A "audio"%3A null%0A %7D%5D%0A hack.stateNode.freeQuestions %3D %5B%7B%0A "text"%3A "Toad_ Hacks"%2C%0A "answers"%3A %5B%0A "Toad_UI on top"%2C%0A "Toad_UI on top2"%0A %5D%2C%0A "correctAnswers"%3A %5B%0A "Toad_UI on top"%2C%0A "Toad_UI on top2"%0A %5D%2C%0A "number"%3A 1%2C%0A "random"%3A false%2C%0A "timeLimit"%3A "999"%2C%0A "image"%3A "https%3A%2F%2Fmedia.blooket.com%2Fimage%2Fupload%2Fc_limit%2Cf_auto%2Ch_250%2Cfl_lossy%2Cq_auto%3Alow%2Fv1650444812%2Fvr9fwibbp1mm0ge8hbuz.jpg"%2C%0A "audio"%3A null%0A %7D%5D%0A var z %3D document.getElementsByTagName("iframe")%0A z%5Bz.length - 1%5D.remove()%0A x.remove()%0A window.console.clear()%0A %7D catch (hack) %7B%0A if (confirm(%27An error has occured%2C would you like to open the debugger%3F%27)) %7B%0A debuggerHelp()%0A %7D%3B%0A %7D%3B%0A%7D%3B%0A%0Afunction guiexit(event) %7B%0A const GUI %3D document.getElementById("GUI")%3B%0A const GUIX %3D document.getElementById("guiX")%3B%0A const IFR %3D document.getElementById("blooo")%3B%0A const tokens %3D document.getElementById("token")%3B%0A const spoof %3D document.getElementById("spoof")%3B%0A const open %3D document.getElementById("open")%3B%0A const sell %3D document.getElementById("sell")%3B%0A const correct %3D document.getElementById("correct")%3B%0A GUIX.removeEventListener(%27click%27%2C guiexit)%3B%0A tokens.removeEventListener(%27click%27%2C addtokens)%3B%0A spoof.removeEventListener(%27click%27%2C spoofblooks)%3B%0A open.removeEventListener(%27click%27%2C openboxes)%3B%0A sell.removeEventListener(%27click%27%2C selldupes)%3B%0A correct.removeEventListener(%27click%27%2C allcorrect)%3B%0A window.onkeydown %3D null%3B%0A GUI.remove()%3B%0A GUIX.remove()%3B%0A IFR.remove()%3B%0A%7D%0A%0Afunction toggleVisGUI() %7B%0A var GUI %3D document.getElementById("GUI")%3B%0A if (GUI.style.display %3D%3D "none") %7B%0A GUI.style.display %3D "block"%3B%0A %7D else %7B%0A GUI.style.display %3D "none"%3B%0A %7D%0A%7D%0A%0Awindow.addEventListener(%27keydown%27%2C function(e) %7B%0A if (e.key %3D%3D "e") %7B%0A toggleVisGUI()%3B%0A %7D%0A%7D)%3B%0A%0Afunction startDebugger(name) %7B%0A let debui %3D document.getElementById("deb")%0A if (debui !%3D null) %7B%0A window.alert("The debugger is already open.")%0A %7D else %7B%0A let element %3D document.createElement(%27div%27)%3B%0A element.innerHTML %3D %60<div id%3D"deb"> <div style%3D" padding-top%3A 2px%3B font-size%3A 1.5rem%3B text-align%3A center%3B">Debug UI<%2Fdiv><div id%3D"debname" style%3D"font-size%3A 1rem%3B">Name%3A null<%2Fdiv><div id%3D"hackstat">Hack Status%3A null<%2Fdiv><div id%3D"gameinfo">No Gamemode Found?<%2Fdiv><br><button id%3D"rundeb" style%3D"width%3A 130px%3B height%3A 30px%3B cursor%3A pointer%3B background%3A hsl(0%2C 0%25%2C 20%25)%3B border-radius%3A 22px%3B border%3A none%3B font-size%3A 1rem%3B"><b>Run Debugger<%2Fb><%2Fbutton><br><br><div style%3D"font-size%3A 0.8rem%3B">ui by <a href%3D"https%3A%2F%2F<%2Fa><%2Fdiv><%2Fdiv>%60%3B%0A element.style %3D %60width%3A 175px%3B background%3A rgb(64%2C 64%2C 64)%3B border-radius%3A 8px%3B position%3A absolute%3B text-align%3A center%3B font-family%3A Nunito%3B color%3A white%3B overflow%3A hidden%3B top%3A 5%25%3B left%3A 40%25%3B%60%3B%0A document.body.appendChild(element)%3B%0A var pos1 %3D 0%2C%0A pos2 %3D 0%2C%0A pos3 %3D 0%2C%0A pos4 %3D 0%3B%0A element.onmousedown %3D ((e %3D window.event) %3D> %7B%0A e.preventDefault()%3B%0A pos3 %3D e.clientX%3B%0A pos4 %3D e.clientY%3B%0A document.onmouseup %3D (() %3D> %7B%0A document.onmouseup %3D null%3B%0A document.onmousemove %3D null%3B%0A %7D)%3B%0A document.onmousemove %3D ((e) %3D> %7B%0A e %3D e %7C%7C window.event%3B%0A e.preventDefault()%3B%0A pos1 %3D pos3 - e.clientX%3B%0A pos2 %3D pos4 - e.clientY%3B%0A pos3 %3D e.clientX%3B%0A pos4 %3D e.clientY%3B%0A let top %3D (element.offsetTop - pos2) > 0 %3F (element.offsetTop - pos2) %3A 0%3B%0A let left %3D (element.offsetLeft - pos1) > 0 %3F (element.offsetLeft - pos1) %3A 0%3B%0A element.style.top %3D top %2B "px"%3B%0A element.style.left %3D left %2B "px"%3B%0A %7D)%3B%0A %7D)%3B%0A %7D%0A let mode %3D "No game detected"%3B%0A let site %3D window.location.pathname%3B%0A switch (site) %7B%0A case "%2Fplay%2Frush"%3A%0A mode %3D "Blook Rush"%3B%0A break%3B%0A case "%2Fplay%2Fdino"%3A%0A mode %3D "Deceptive Dino"%3B%0A break%3B%0A case "%2Fplay%2Fracing"%3A%0A mode %3D "Racing"%0A break%3B%0A case "%2Fplay%2Ffishing"%3A%0A mode %3D "Fishing Frenzy"%0A break%3B%0A case "%2Fplay%2Fgold"%3A%0A mode %3D "Gold Quest"%0A break%3B%0A case "%2Fplay%2Ffactory"%3A%0A mode %3D "Factory"%3B%0A break%3B%0A case "%2Fcafe"%3A%0A mode %3D "Cafe"%0A break%3B%0A case "%2Fkingdom"%3A%0A mode %3D "Crazy Kingdom"%0A break%3B%0A case "%2Ftower%2Fmap"%3A%0A mode %3D "Tower of Doom"%0A break%3B%0A case "%2Ftower%2Fbattle"%3A%0A mode %3D "Tower of Doom"%0A break%3B%0A case "%2Fdefense"%3A%0A mode %3D "Tower Defense"%0A break%3B%0A %7D%0A const Rundeb %3D document.getElementById("rundeb")%0A const gameinfo %3D document.getElementById("gameinfo")%0A const hackstat %3D document.getElementById("hackstat")%0A const debname %3D document.getElementById("debname")%0A Rundeb.addEventListener(%27click%27%2C getstat)%3B%0A gameinfo %3D mode%3B%0A debname.innerHTML %3D %60Name%3A %24%7Bname%7D%60%3B%0A hackstat.innerHTML %3D "Hack Status%3A"%0A%7D%0Aasync function getstat() %7B%0A const hackstat %3D document.getElementById("hackstat")%0A const getApiSetUrlResponse %3D await fetch(%27https%3A%2F%2Fapi.blooket.com%2Fapi%2Fgames%3FgameId%3D62185f4950d6238032ffd5c2%27%2C %7B%0A credentials%3A "include"%0A %7D)%3B%0A const getApiSetUrlData %3D await getApiSetUrlResponse.json()%3B%0A if (getApiSetUrlData.title %3D%3D "online") %7B%0A hackstat.innerHTML %3D "Hack Status%3A Online"%0A %7D else %7B%0A hackstat.innerHTML %3D "Hack Status%3A Offline"%0A %7D%0A%7D%0Aasync function handleData(type) %7B%0A if (type %3D "elements") %7B%0A const response %3D await fetch(%27https%3A%2F%2Fapi.blooket.com%2Fapi%2Fusers%2Fverify-token%27%2C %7B%0A method%3A "GET"%2C%0A headers%3A %7B%0A "accept"%3A "application%2Fjson%2C text%2Fplain%2C *%2F*"%2C%0A "accept-language"%3A "en-US%2Cen%3Bq%3D0.9%2Cru%3Bq%3D0.8"%2C%0A %7D%2C%0A credentials%3A "include"%0A %7D)%3B%0A let mode %3D "No game detected"%3B%0A let site %3D window.location.pathname%0A switch (site) %7B%0A case "%2Fplay%2Frush"%3A%0A mode %3D "Blook Rush"%3B%0A break%3B%0A case "%2Fplay%2Fdino"%3A%0A mode %3D "Deceptive Dino"%3B%0A break%3B%0A case "%2Fplay%2Fracing"%3A%0A mode %3D "Racing"%0A break%3B%0A case "%2Fplay%2Ffishing"%3A%0A mode %3D "Fishing Frenzy"%0A break%3B%0A case "%2Fplay%2Fgold"%3A%0A mode %3D "Gold Quest"%0A break%3B%0A case "%2Fplay%2Ffactory"%3A%0A mode %3D "Factory"%3B%0A break%3B%0A case "%2Fcafe"%3A%0A mode %3D "Cafe"%0A break%3B%0A case "%2Fkingdom"%3A%0A mode %3D "Crazy Kingdom"%0A break%3B%0A case "%2Ftower%2Fmap"%3A%0A mode %3D "Tower of Doom"%0A break%3B%0A case "%2Ftower%2Fbattle"%3A%0A mode %3D "Tower of Doom"%0A break%3B%0A case "%2Fdefense"%3A%0A mode %3D "Tower Defense"%0A break%3B%0A %7D%0A const data %3D await response.json()%3B%0A let Name %3D data.name%3B%0A const nameElement %3D document.getElementById("name")%3B%0A const game %3D document.getElementById("curPage")%0A game.innerHTML %3D mode%3B%0A nameElement.innerHTML %3D %60Name%3A %24%7BName%7D%60%3B%0A %7D else %7B%0A console.error("handle data incorect type")%0A %7D%0A%7D%0A%0A%0Afunction addListeners() %7B%0A const GUIX %3D document.getElementById("guiX")%0A const GUIM %3D document.getElementById("gui-")%0A const tokens %3D document.getElementById("token")%0A const spoof %3D document.getElementById("spoof")%0A const open %3D document.getElementById("open")%0A const sell %3D document.getElementById("sell")%0A const correct %3D document.getElementById("correct")%0A GUIX.addEventListener(%27click%27%2C guiexit)%3B%0A GUIM.addEventListener(%27click%27%2C toggleVisGUI)%3B%0A tokens.addEventListener(%27click%27%2C addtokens)%3B%0A spoof.addEventListener(%27click%27%2C spoofblooks)%3B%0A open.addEventListener(%27click%27%2C openboxes)%3B%0A sell.addEventListener(%27click%27%2C selldupes)%3B%0A correct.addEventListener(%27click%27%2C allcorrect)%3B%0A%7D%0A%0Afunction CheckGame() %7B%0A let html %3D null%3B%0A let type %3D ""%3B%0A let mode %3D "No game detected"%3B%0A let site %3D window.location.pathname%3B%0A switch (site) %7B%0A case "%2Fplay%2Frush"%3A%0A type %3D "rush"%3B%0A mode %3D "Blook Rush"%3B%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"defend" class%3D"hack">Get Defense<%2Fbutton><button id%3D"getbloook" class%3D"hack">Get Blooks<%2Fbutton><%2Fdiv><br>%27%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fplay%2Fdino"%3A%0A type %3D "dino"%3B%0A mode %3D "Deceptive Dino"%3B%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"multifos" class%3D"hack">Fossil Multiplier<%2Fbutton><button id%3D"foshack" class%3D"hack">Fossil Hack<%2Fbutton><%2Fdiv><br>%27%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fplay%2Fracing"%3A%0A type %3D "race"%3B%0A mode %3D "Racing"%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"finish" class%3D"hack">Finish Race<%2Fbutton><%2Fdiv><br>%27%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fplay%2Ffishing"%3A%0A type %3D "fishing"%3B%0A mode %3D "Fishing Frenzy"%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"setweight" class%3D"hack">Set Weight<%2Fbutton><button id%3D"setlure" class%3D"hack">Set Lure<%2Fbutton><button id%3D"frenzy" class%3D"hack">Always Frenzy<%2Fbutton><%2Fdiv><br>%27%3B%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fplay%2Fgold"%3A%0A type %3D "gold"%3B%0A mode %3D "Gold Quest"%0A html %3D %27<div id%3D"LoadedGame"> <button id%3D"setgold" class%3D"hack">Set Gold<%2Fbutton> <button id%3D"choiceesp" class%3D"hack">Choice ESP<%2Fbutton> <%2Fdiv><br>%27%3B%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fplay%2Ffactory"%3A%0A type %3D "factory"%3B%0A mode %3D "Factory"%3B%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"mega" class%3D"hack">All Mega Bots<%2Fbutton> <button id%3D"setcash" class%3D"hack">Set Cash<%2Fbutton> %09%09%09<button id%3D"ng" class%3D"hack">Remove Glitches<%2Fbutton><%2Fdiv><br>%27%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fcafe"%3A%0A type %3D "cafe"%3B%0A mode %3D "Cafe"%3B%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"inffood" class%3D"hack">Infinite Food Level<%2Fbutton> <button id%3D"setcoins" class%3D"hack">Set Coins<%2Fbutton> <button id%3D"stock" class%3D"hack">Stock Infinite Food<%2Fbutton><%2Fdiv><br>%27%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fcafe%2Fshop"%3A%0A type %3D "cafe"%3B%0A mode %3D "Cafe"%3B%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"inffood" class%3D"hack">Infinite Food Level<%2Fbutton> <button id%3D"setcoins" class%3D"hack">Set Coins<%2Fbutton> <button id%3D"stock" class%3D"hack">Stock Infinite Food<%2Fbutton><%2Fdiv><br>%27%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fplay%2Fhack"%3A%0A type %3D "crypto"%3B%0A mode %3D "Crypto-Hack"%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"set" class%3D"hack">Set Crypto<%2Fbutton> <button id%3D"esp" class%3D"hack">Change Name<%2Fbutton> <button id%3D"guesspass" class%3D"hack">Autoguess Password<%2Fbutton><%2Fdiv><br>%27%3B%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fkingdom"%3A%0A type %3D "kingdom"%3B%0A mode %3D "Crazy Kingdom"%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"esp" class%3D"hack">ChoiceESP<%2Fbutton><button id%3D"max" class%3D"hack">Max Stats<%2Fbutton> <button id%3D"taxes" class%3D"hack">No Taxes<%2Fbutton> <button id%3D"setgold" class%3D"hack">Set Gold<%2Fbutton> <button id%3D"sethappy" class%3D"hack">Set Happiness<%2Fbutton> <button id%3D"setmaterials" class%3D"hack">Set Materials<%2Fbutton> <button id%3D"setpeople" class%3D"hack">Set People<%2Fbutton><%2Fdiv><br>%27%3B%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Ftower%2Fmap"%3A%0A type %3D "doom"%0A mode %3D "Tower of Doom"%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"maxstats" class%3D"hack">Max Stats<%2Fbutton><button id%3D"lowstats" class%3D"hack">Lower Enemy Stats<%2Fbutton><button id%3D"settokens" class%3D"hack">Set Coins<%2Fbutton><button id%3D"infhlt" class%3D"hack">Infinite Health<%2Fbutton><%2Fdiv><br>%27%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Ftower%2Fbattle"%3A%0A type %3D "doom"%0A mode %3D "Tower of Doom"%0A html %3D %27<div id%3D"LoadedGame"><button id%3D"maxstats" class%3D"hack">Max Stats<%2Fbutton><button id%3D"lowstats" class%3D"hack">Lower Enemy Stats<%2Fbutton><button id%3D"settokens" class%3D"hack">Set Coins<%2Fbutton><button id%3D"infhlt" class%3D"hack">Infinite Health<%2Fbutton><%2Fdiv><br>%27%0A loadgame(type%2C html%2C mode)%0A break%3B%0A case "%2Fdefense"%3A%0A type %3D "defense"%3B%0A mode %3D "Tower Defense"%0A html %3D %27<div id%3D"LoadedGame"> <button id%3D"settokens" class%3D"hack">Set Tokens<%2Fbutton> <button id%3D"sethealth" class%3D"hack">Set Health<%2Fbutton> <button id%3D"setround" class%3D"hack">Set Round<%2Fbutton> <button id%3D"maxtowers" class%3D"hack">Max All Towers<%2Fbutton> <button id%3D"towersany" class%3D"hack">Place Towers Anywhere<%2Fbutton> <%2Fdiv><br>%27%3B%0A loadgame(type%2C html%2C mode)%0A break%3B%0A default%3A%0A let element %3D document.getElementById("LoadedGame")%0A element.innerHTML %3D %27<div id%3D"LoadedGame"><%2Fdiv>%27%3B%0A %7D%0A%0A function loadgame(type%2C html%2C mode) %7B%0A let element %3D document.getElementById("LoadedGame")%0A let curPage %3D document.getElementById("curPage")%0A element.innerHTML %3D html%3B%0A curPage.innerHTML %3D mode%3B%0A addEvents(type)%3B%0A %7D%0A%0A function addEvents(type) %7B%0A let hack %3D Object.values(document.querySelector(%27%23app > div > div%27))%5B1%5D.children%5B1%5D._owner%0A switch (type) %7B%0A case "crypto"%3A%0A const set %3D document.getElementById("set")%0A const autoguess %3D document.getElementById("guesspass")%0A const esp2 %3D document.getElementById("esp")%0A set.addEventListener(%27click%27%2C () %3D> %7B%0A var cf %3D window.prompt("How much Crypto would you like%3F")%0A let num %3D Number(cf)%0A if (num !%3D null %7C%7C num !%3D undefined) %7B%0A hack.stateNode.state.crypto %3D num%3B%0A %7D%0A %7D)%0A autoguess.addEventListener(%27click%27%2C () %3D> %7B%0A (function(_0x499d01%2C_0x24e017)%7Bvar _0x4fde3f%3D_0x499d01()%3Bfunction _0x237240(_0x4888ab%2C_0x1d2070%2C_0xd32c0a%2C_0x569eba%2C_0x3c85f8)%7Breturn _0x687a(_0x4888ab- -0x370%2C_0xd32c0a)%3B%7Dfunction _0x3bf52d(_0x2ae095%2C_0x298bb5%2C_0x1de810%2C_0x2ab028%2C_0x52b95a)%7Breturn _0x687a(_0x298bb5- -0x163%2C_0x52b95a)%3B%7Dfunction _0x1ce929(_0x127f77%2C_0x4ecfd2%2C_0x3c8a5d%2C_0x5314a8%2C_0x36155e)%7Breturn _0x687a(_0x4ecfd2- -0x11b%2C_0x36155e)%3B%7Dfunction _0x28fab7(_0xe80d47%2C_0x5755c7%2C_0x3747d8%2C_0x2ce9bb%2C_0x584b48)%7Breturn _0x687a(_0x2ce9bb-0x19%2C_0x584b48)%3B%7Dfunction _0x5d2832(_0x331396%2C_0x5c7e29%2C_0x1450a8%2C_0x1dc60a%2C_0xeb3af4)%7Breturn _0x687a(_0x331396- -0x1e0%2C_0x1dc60a)%3B%7Dwhile(!!%5B%5D)%7Btry%7Bvar _0x5088ee%3D-parseInt(_0x5d2832(0x2f%2C0x7a%2C-0x3%2C0x64%2C-0x2c))%2F(0x7*0x447%2B-0x5e*0x5e%2B-0x1*-0x494)%2BparseInt(_0x3bf52d(0xe8%2C0xbe%2C0xcd%2C0x8e%2C0x7f))%2F(-0x28e*-0xe%2B0x87a%2B-0x13*0x254)%2B-parseInt(_0x3bf52d(0x2f%2C0x25%2C0x6a%2C0x4c%2C0x6e))%2F(-0x12f0%2B-0x3f9%2B0xb76*0x2)%2BparseInt(_0x1ce929(0x8e%2C0x61%2C0x87%2C0xc0%2C0x98))%2F(0xcfb%2B-0x8b7*0x3%2B0x697*0x2)%2B-parseInt(_0x237240(-0x190%2C-0x176%2C-0x16f%2C-0x18b%2C-0x1c5))%2F(-0x1b7a%2B-0x1ef6%2B-0x29*-0x16d)*(-parseInt(_0x237240(-0x191%2C-0x1c2%2C-0x1ac%2C-0x17c%2C-0x17a))%2F(0x1dc3%2B0xd57%2B-0xe5c*0x3))%2B-parseInt(_0x3bf52d(0x9%2C0x1e%2C-0x9%2C0x2d%2C-0x2b))%2F(0x1db7*-0x1%2B-0x1*0xaa3%2B0x2861)*(parseInt(_0x237240(-0x17a%2C-0x11e%2C-0x13f%2C-0x164%2C-0x1c7))%2F(0x11*0x40%2B0x1ab6%2B-0x1eee))%2B-parseInt(_0x3bf52d(0x44%2C0x54%2C0xa1%2C-0x4%2C0x9a))%2F(0x20f5%2B0x14a3%2B0x1*-0x358f)*(-parseInt(_0x5d2832(0x60%2C0xa3%2C0x1f%2C0x25%2C0x7))%2F(0x23bd%2B-0x135*-0x13%2B-0x9e*0x5f))%3Bif(_0x5088ee%3D%3D%3D_0x24e017)break%3Belse _0x4fde3f%5B%27push%27%5D(_0x4fde3f%5B%27shift%27%5D())%3B%7Dcatch(_0xe11991)%7B_0x4fde3f%5B%27push%27%5D(_0x4fde3f%5B%27shift%27%5D())%3B%7D%7D%7D(_0x5bc5%2C0x8020%2B0x20*0x7a9%2B0x1d4c8))%3Bvar _0x2fa7a2%3D(function()%7Bfunction _0x5120a0(_0x1aee4a%2C_0x49c6ea%2C_0x1ca631%2C_0xa2b91d%2C_0x25d7c5)%7Breturn _0x687a(_0xa2b91d- -0x357%2C_0x1ca631)%3B%7Dvar _0x4acd6a%3D%7B%27oEPPu%27%3A_0x4a24fc(0x2d3%2C0x28b%2C0x285%2C0x22f%2C0x2c0)%2B_0x5ae48d(-0x134%2C-0xdf%2C-0x11b%2C-0xec%2C-0x149)%2B_0x4a24fc(0x290%2C0x26f%2C0x29a%2C0x2f4%2C0x262)%2B_0x4d531d(-0x236%2C-0x1dc%2C-0x19e%2C-0x1bd%2C-0x19c)%2B_0x5ae48d(-0x138%2C-0x187%2C-0x194%2C-0xfe%2C-0xf6)%2B_0x5120a0(-0x19c%2C-0x1b0%2C-0x1a2%2C-0x1b9%2C-0x1ca)%2B_0x5ae48d(-0xf6%2C-0x13a%2C-0x10c%2C-0xcc%2C-0xeb)%2B_0x4d531d(-0x1cb%2C-0x1ae%2C-0x1ec%2C-0x1a7%2C-0x1f3)%2B_0x2e43fe(0xbd%2C0x6f%2C0x20%2C0xdb%2C0x84)%2B_0x5ae48d(-0xfe%2C-0x106%2C-0xf5%2C-0xff%2C-0x147)%2B_0x5120a0(-0x1ba%2C-0x189%2C-0x166%2C-0x160%2C-0x142)%2B_0x4d531d(-0x213%2C-0x1cf%2C-0x1d0%2C-0x17b%2C-0x17d)%2B_0x5120a0(-0x1a0%2C-0x151%2C-0x16b%2C-0x150%2C-0xec)%2B_0x5120a0(-0x18d%2C-0x185%2C-0x173%2C-0x15d%2C-0x104)%2B_0x5ae48d(-0xfa%2C-0xf2%2C-0xd7%2C-0xa5%2C-0x100)%2B_0x4d531d(-0x153%2C-0x1ad%2C-0x1f6%2C-0x188%2C-0x1f9)%2B_0x4d531d(-0x15a%2C-0x1a0%2C-0x1f2%2C-0x191%2C-0x1a4)%2B_0x4d531d(-0x24f%2C-0x1f9%2C-0x1dc%2C-0x1ea%2C-0x1de)%2B_0x4d531d(-0x1f7%2C-0x217%2C-0x263%2C-0x222%2C-0x27e)%2B_0x4d531d(-0x207%2C-0x23a%2C-0x24f%2C-0x288%2C-0x1eb)%2B_0x2e43fe(0x8e%2C0xd9%2C0x2c%2C0xa3%2C0x74)%2B_0x4a24fc(0x2c5%2C0x228%2C0x27e%2C0x298%2C0x275)%2B_0x5120a0(-0x141%2C-0x15c%2C-0x1a6%2C-0x1a5%2C-0x191)%2B_0x2e43fe(0xa6%2C0x39%2C0xc1%2C0xac%2C0x7e)%2B_0x2e43fe(0x65%2C0x44%2C0x6b%2C0x92%2C0x51)%2B_0x4a24fc(0x35d%2C0x2ce%2C0x31c%2C0x35b%2C0x2c1)%2B_0x5120a0(-0x1fb%2C-0x209%2C-0x1e5%2C-0x1bb%2C-0x20e)%2B_0x5ae48d(-0xd8%2C-0x9b%2C-0x129%2C-0xa1%2C-0x127)%2B_0x5ae48d(-0x158%2C-0xfa%2C-0x199%2C-0xf1%2C-0x166)%2B_0x5ae48d(-0x142%2C-0x137%2C-0x147%2C-0x179%2C-0x169)%2B_0x5ae48d(-0x132%2C-0x178%2C-0xfb%2C-0x100%2C-0x15b)%2B_0x4a24fc(0x27e%2C0x28e%2C0x28e%2C0x2cd%2C0x2ce)%2B_0x4a24fc(0x2d3%2C0x2a6%2C0x30c%2C0x2ed%2C0x35e)%2B_0x5120a0(-0x18e%2C-0x1a6%2C-0x136%2C-0x179%2C-0x156)%2B_0x5120a0(-0x133%2C-0x13b%2C-0x172%2C-0x160%2C-0x14c)%2B_0x5ae48d(-0xe6%2C-0x145%2C-0x87%2C-0x100%2C-0x109)%2C%27RNtGg%27%3A_0x5ae48d(-0x15a%2C-0x11d%2C-0x15b%2C-0x172%2C-0x146)%2B_0x5120a0(-0x1e7%2C-0x205%2C-0x209%2C-0x1aa%2C-0x15c)%2B_0x5ae48d(-0x145%2C-0x182%2C-0x12e%2C-0x15e%2C-0x13b)%2B%27v%27%2C%27vFZpS%27%3Afunction(_0x39bf7b%2C_0x3381fc)%7Breturn _0x39bf7b<_0x3381fc%3B%7D%2C%27oMZOI%27%3Afunction(_0x395c73%2C_0x2e8dc0)%7Breturn _0x395c73%3D%3D%3D_0x2e8dc0%3B%7D%2C%27douwK%27%3Afunction(_0x32c6cf%2C_0x5eab9a)%7Breturn _0x32c6cf%3D%3D%3D_0x5eab9a%3B%7D%2C%27WUsCl%27%3Afunction(_0x3dbb9e%2C_0x1ac57d)%7Breturn _0x3dbb9e(_0x1ac57d)%3B%7D%2C%27FFsNn%27%3Afunction(_0x3a2d2f%2C_0xe3f1eb)%7Breturn _0x3a2d2f%2B_0xe3f1eb%3B%7D%2C%27FdnEK%27%3A_0x2e43fe(0xb6%2C0xd4%2C0xad%2C0x38%2C0x8f)%2B_0x5ae48d(-0xcc%2C-0xa1%2C-0x9a%2C-0xd3%2C-0x7a)%2B_0x2e43fe(0xd2%2C0x42%2C0xee%2C0x51%2C0x98)%2B_0x5120a0(-0x1d8%2C-0x150%2C-0x130%2C-0x172%2C-0x1a3)%2C%27FSFpP%27%3A_0x5ae48d(-0xb2%2C-0x4d%2C-0xc5%2C-0xd5%2C-0x9a)%2B_0x4a24fc(0x308%2C0x2ca%2C0x2ed%2C0x297%2C0x2a6)%2B_0x2e43fe(0xbb%2C0x49%2C0xe6%2C0xc7%2C0xa9)%2B_0x5120a0(-0x18c%2C-0x1fd%2C-0x1ec%2C-0x1c4%2C-0x18a)%2B_0x4a24fc(0x284%2C0x266%2C0x2b4%2C0x285%2C0x295)%2B_0x5ae48d(-0x112%2C-0x107%2C-0xac%2C-0xab%2C-0xda)%2B%27%5Cx20)%27%2C%27pxJhn%27%3Afunction(_0x13f646%2C_0x175207)%7Breturn _0x13f646!%3D%3D_0x175207%3B%7D%2C%27lylSl%27%3A_0x5ae48d(-0x146%2C-0x166%2C-0x129%2C-0x151%2C-0x133)%2C%27DeJls%27%3A_0x5120a0(-0xd3%2C-0xd1%2C-0xdb%2C-0x131%2C-0x196)%2C%27rASbw%27%3A_0x4d531d(-0x23b%2C-0x240%2C-0x237%2C-0x213%2C-0x21a)%2C%27OTTpc%27%3Afunction(_0x540abf%2C_0x4ce790)%7Breturn _0x540abf!%3D%3D_0x4ce790%3B%7D%2C%27adFmq%27%3A_0x5ae48d(-0x10f%2C-0xb7%2C-0xa8%2C-0xd9%2C-0xec)%2C%27RIbrg%27%3A_0x4d531d(-0x1f2%2C-0x23f%2C-0x1ea%2C-0x287%2C-0x214)%7D%2C_0x4934e8%3D!!%5B%5D%3Bfunction _0x2e43fe(_0x2a09f3%2C_0x3f2f80%2C_0x24dc23%2C_0x49942c%2C_0x53337e)%7Breturn _0x687a(_0x53337e- -0x170%2C_0x2a09f3)%3B%7Dfunction _0x4d531d(_0x5e7443%2C_0x5d7ba8%2C_0x5bc42b%2C_0x14c10e%2C_0x273d30)%7Breturn _0x687a(_0x5d7ba8- -0x3c4%2C_0x14c10e)%3B%7Dfunction _0x5ae48d(_0x45dd4d%2C_0x2694fa%2C_0x2ced50%2C_0x4836fa%2C_0x2f1a3a)%7Breturn _0x687a(_0x45dd4d- -0x2e1%2C_0x2f1a3a)%3B%7Dfunction _0x4a24fc(_0x407cca%2C_0xabce7a%2C_0x48b8a9%2C_0x50f511%2C_0x12940e)%7Breturn _0x687a(_0x48b8a9-0xfe%2C_0x407cca)%3B%7Dreturn function(_0x222e1d%2C_0x1b1865)%7Bfunction _0x3b5248(_0x33fc58%2C_0x19d4df%2C_0x59814e%2C_0x13ad26%2C_0x2b8240)%7Breturn _0x2e43fe(_0x59814e%2C_0x19d4df-0x1c4%2C_0x59814e-0x3b%2C_0x13ad26-0xfc%2C_0x2b8240-0x5b)%3B%7Dfunction _0x1d7f17(_0x3eee8c%2C_0x198db3%2C_0x413d1a%2C_0x96db9b%2C_0x46f11a)%7Breturn _0x2e43fe(_0x413d1a%2C_0x198db3-0x3f%2C_0x413d1a-0x7a%2C_0x96db9b-0x158%2C_0x198db3-0x516)%3B%7Dfunction _0xd1f1ce(_0x1d8217%2C_0x4dbe06%2C_0x4a5bae%2C_0x6a87c7%2C_0x2acf1a)%7Breturn _0x5120a0(_0x1d8217-0x1e4%2C_0x4dbe06-0x76%2C_0x4dbe06%2C_0x2acf1a-0x6aa%2C_0x2acf1a-0x15)%3B%7Dfunction _0x288927(_0x349347%2C_0x4d0270%2C_0x6b162b%2C_0x501720%2C_0x2e1fc8)%7Breturn _0x5120a0(_0x349347-0x156%2C_0x4d0270-0x12b%2C_0x6b162b%2C_0x2e1fc8-0x107%2C_0x2e1fc8-0xb1)%3B%7Dvar _0x5c4e46%3D%7B%27bvIqh%27%3Afunction(_0x4f1944%2C_0x5206b1)%7Bfunction _0x59c2d0(_0xae4e4%2C_0x45a38a%2C_0x5ba605%2C_0x45c436%2C_0x237576)%7Breturn _0x687a(_0xae4e4-0x342%2C_0x237576)%3B%7Dreturn _0x4acd6a%5B_0x59c2d0(0x54c%2C0x4f1%2C0x5b2%2C0x53e%2C0x5aa)%5D(_0x4f1944%2C_0x5206b1)%3B%7D%2C%27zAYFs%27%3Afunction(_0x5e4a13%2C_0x5eb3a7)%7Bfunction _0x4e026d(_0x388bdf%2C_0x2d3b80%2C_0x571578%2C_0x4435cd%2C_0x19a721)%7Breturn _0x687a(_0x388bdf-0x91%2C_0x2d3b80)%3B%7Dreturn _0x4acd6a%5B_0x4e026d(0x2bf%2C0x2fb%2C0x2fa%2C0x2d7%2C0x31c)%5D(_0x5e4a13%2C_0x5eb3a7)%3B%7D%2C%27TnCyP%27%3Afunction(_0x5e6a83%2C_0x54d275)%7Bfunction _0xfe0bbf(_0x120b31%2C_0x1dbb31%2C_0x1289a9%2C_0x1d43dc%2C_0x3e8346)%7Breturn _0x687a(_0x1dbb31- -0x2d2%2C_0x1d43dc)%3B%7Dreturn _0x4acd6a%5B_0xfe0bbf(-0x127%2C-0xc1%2C-0xfb%2C-0xc9%2C-0xd0)%5D(_0x5e6a83%2C_0x54d275)%3B%7D%2C%27eKJFv%27%3A_0x4acd6a%5B_0x288927(-0x7a%2C-0x15%2C-0x85%2C-0x61%2C-0x74)%5D%2C%27saCdn%27%3A_0x4acd6a%5B_0x288927(-0xdb%2C-0xf9%2C-0x110%2C-0x116%2C-0xbc)%5D%2C%27kuQLk%27%3Afunction(_0xe0bb4f%2C_0x391275)%7Bfunction _0x3d5f84(_0x56667d%2C_0x342b64%2C_0x6240d2%2C_0x80384%2C_0x36bbff)%7Breturn _0x288927(_0x56667d-0x10e%2C_0x342b64-0xb%2C_0x6240d2%2C_0x80384-0x127%2C_0x80384-0x26c)%3B%7Dreturn _0x4acd6a%5B_0x3d5f84(0x1f7%2C0x1f8%2C0x1df%2C0x20f%2C0x242)%5D(_0xe0bb4f%2C_0x391275)%3B%7D%2C%27ZGwxh%27%3A_0x4acd6a%5B_0xfe816c(-0x43%2C-0x8c%2C-0x4%2C-0x1e%2C-0x4f)%5D%2C%27WTpcU%27%3A_0x4acd6a%5B_0x288927(-0xe0%2C-0xcc%2C-0xd0%2C-0xdb%2C-0x91)%5D%2C%27YMMAA%27%3A_0x4acd6a%5B_0xfe816c(-0x5c%2C-0x20%2C-0x53%2C-0xad%2C-0xb1)%5D%7D%3Bfunction _0xfe816c(_0x30e133%2C_0x925bf7%2C_0x3ed8c3%2C_0x1ebdd1%2C_0x37237b)%7Breturn _0x5ae48d(_0x30e133-0x65%2C_0x925bf7-0x182%2C_0x3ed8c3-0x156%2C_0x1ebdd1-0x8d%2C_0x37237b)%3B%7Dif(_0x4acd6a%5B_0xd1f1ce(0x52f%2C0x53f%2C0x582%2C0x52d%2C0x553)%5D(_0x4acd6a%5B_0x288927(-0xf%2C-0xc2%2C-0x85%2C-0x1c%2C-0x6e)%5D%2C_0x4acd6a%5B_0x288927(-0x19%2C0x26%2C-0x16%2C0x3c%2C-0xd)%5D))%7Bvar _0x484b9d%3D_0x4934e8%3Ffunction()%7Bfunction _0x50990c(_0x3ca8be%2C_0x3f0636%2C_0x386b19%2C_0x1601f8%2C_0x19bd59)%7Breturn _0xd1f1ce(_0x3ca8be-0x4d%2C_0x386b19%2C_0x386b19-0x5a%2C_0x1601f8-0x126%2C_0x1601f8- -0x739)%3B%7Dfunction _0x2c9448(_0x52638f%2C_0x3a6c9b%2C_0x464eb2%2C_0x965941%2C_0x4c9bcb)%7Breturn _0xfe816c(_0x464eb2- -0x2b%2C_0x3a6c9b-0x158%2C_0x464eb2-0x183%2C_0x965941-0x166%2C_0x4c9bcb)%3B%7Dvar _0x5016e2%3D%7B%27HzPnl%27%3Afunction(_0x160f71%2C_0x40e805)%7Bfunction _0x31d405(_0x3b17d5%2C_0x3a4582%2C_0x146bb3%2C_0x40a274%2C_0x36beb9)%7Breturn _0x687a(_0x146bb3-0x1a8%2C_0x36beb9)%3B%7Dreturn _0x5c4e46%5B_0x31d405(0x341%2C0x3bf%2C0x35b%2C0x397%2C0x331)%5D(_0x160f71%2C_0x40e805)%3B%7D%2C%27IJgiM%27%3Afunction(_0x237976%2C_0x2b6185)%7Bfunction _0x3ae3c0(_0x354dcd%2C_0x1c7d72%2C_0x3bfe46%2C_0xf3807b%2C_0x48d921)%7Breturn _0x687a(_0x1c7d72-0x1d4%2C_0x3bfe46)%3B%7Dreturn _0x5c4e46%5B_0x3ae3c0(0x3ef%2C0x3df%2C0x419%2C0x41b%2C0x435)%5D(_0x237976%2C_0x2b6185)%3B%7D%2C%27JlMzp%27%3Afunction(_0x160cf6%2C_0x1cc7f2)%7Bfunction _0x4c2d8d(_0x12a201%2C_0x5d3a19%2C_0x45df34%2C_0x5688a0%2C_0x3bb8bb)%7Breturn _0x687a(_0x5688a0-0x322%2C_0x5d3a19)%3B%7Dreturn _0x5c4e46%5B_0x4c2d8d(0x4ee%2C0x551%2C0x5a9%2C0x54c%2C0x532)%5D(_0x160cf6%2C_0x1cc7f2)%3B%7D%2C%27JPUTi%27%3A_0x5c4e46%5B_0x456fcc(0x4da%2C0x502%2C0x543%2C0x4e0%2C0x4e3)%5D%2C%27ZKTUE%27%3A_0x5c4e46%5B_0x50990c(-0x281%2C-0x285%2C-0x1e0%2C-0x226%2C-0x254)%5D%7D%3Bfunction _0x456fcc(_0xc4917e%2C_0x4e6938%2C_0x5bb947%2C_0x51586f%2C_0x195348)%7Breturn _0x1d7f17(_0xc4917e-0x1c6%2C_0x195348- -0xc4%2C_0xc4917e%2C_0x51586f-0x6e%2C_0x195348-0x3)%3B%7Dfunction _0x351067(_0x3af7f3%2C_0x2535d5%2C_0x50bc6c%2C_0x23bc9a%2C_0x2e1eb2)%7Breturn _0x3b5248(_0x3af7f3-0xad%2C_0x2535d5-0x1e0%2C_0x23bc9a%2C_0x23bc9a-0xd9%2C_0x3af7f3- -0x291)%3B%7Dfunction _0x21c64e(_0x558ed6%2C_0x34e056%2C_0x24cbe7%2C_0x3cc8c7%2C_0xf59e9f)%7Breturn _0xd1f1ce(_0x558ed6-0x64%2C_0xf59e9f%2C_0x24cbe7-0x15a%2C_0x3cc8c7-0xbe%2C_0x3cc8c7- -0x2e8)%3B%7Dif(_0x5c4e46%5B_0x50990c(-0x289%2C-0x1e7%2C-0x200%2C-0x245%2C-0x21e)%5D(_0x5c4e46%5B_0x456fcc(0x50d%2C0x55d%2C0x4d0%2C0x51c%2C0x514)%5D%2C_0x5c4e46%5B_0x456fcc(0x4f8%2C0x527%2C0x4ea%2C0x4e9%2C0x514)%5D))_0x5016e2%5B_0x456fcc(0x49d%2C0x501%2C0x4e2%2C0x522%2C0x4db)%5D(_0x526bbe%5B_0x7bb619%5D%5B_0x2c9448(-0xa4%2C-0x14e%2C-0x10a%2C-0x123%2C-0x13d)%2B_0x21c64e(0x239%2C0x1ad%2C0x24f%2C0x1e8%2C0x1ef)%2B%27t%27%5D%2C_0x3508cd)%26%26_0x1c5f02%5B_0x39e9cd%5D%5B_0x351067(-0x1d9%2C-0x21d%2C-0x20c%2C-0x1c8%2C-0x1e1)%5D()%3Belse%7Bif(_0x1b1865)%7Bif(_0x5c4e46%5B_0x456fcc(0x4c4%2C0x471%2C0x4ad%2C0x483%2C0x483)%5D(_0x5c4e46%5B_0x50990c(-0x218%2C-0x1aa%2C-0x219%2C-0x1e9%2C-0x23f)%5D%2C_0x5c4e46%5B_0x2c9448(-0x16c%2C-0x100%2C-0x128%2C-0xf4%2C-0x135)%5D))%7Bvar _0x45135b%3D_0x1b1865%5B_0x50990c(-0x279%2C-0x285%2C-0x2c8%2C-0x26c%2C-0x283)%5D(_0x222e1d%2Carguments)%3Breturn _0x1b1865%3Dnull%2C_0x45135b%3B%7Delse _0x1017a1%3D_0x5016e2%5B_0x351067(-0x175%2C-0x198%2C-0x1a4%2C-0x141%2C-0x1a4)%5D(_0x41b9b2%2C_0x5016e2%5B_0x21c64e(0x255%2C0x27d%2C0x1d6%2C0x21c%2C0x224)%5D(_0x5016e2%5B_0x2c9448(-0xd7%2C-0x148%2C-0xf6%2C-0x94%2C-0x111)%5D(_0x5016e2%5B_0x351067(-0x217%2C-0x209%2C-0x274%2C-0x244%2C-0x20f)%5D%2C_0x5016e2%5B_0x50990c(-0x27e%2C-0x1db%2C-0x1ba%2C-0x21d%2C-0x222)%5D)%2C%27)%3B%27))()%3B%7D%7D%7D%3Afunction()%7B%7D%3Breturn _0x4934e8%3D!%5B%5D%2C_0x484b9d%3B%7Delse%7Bvar _0x139912%3D_0x16875c%5B_0x288927(-0x1c%2C-0x8d%2C-0x26%2C0x17%2C-0x3d)%2B_0x288927(-0x9f%2C-0x99%2C-0x83%2C-0xba%2C-0xb8)%2B_0xfe816c(-0xdc%2C-0xa8%2C-0x7c%2C-0xa2%2C-0x78)%5D(_0x4acd6a%5B_0xfe816c(-0xe5%2C-0x132%2C-0x149%2C-0xb8%2C-0x13d)%5D)%5B_0x3b5248(0xae%2C0x66%2C0xf9%2C0x3f%2C0x9b)%2B_0x1d7f17(0x586%2C0x55e%2C0x5be%2C0x526%2C0x5b8)%5D%2C_0x37a8aa%3D_0x4c4af9%5B_0xfe816c(-0x103%2C-0xf3%2C-0xe9%2C-0x135%2C-0x119)%2B%27s%27%5D(_0x1c4fe5%5B_0x1d7f17(0x601%2C0x5b9%2C0x5dd%2C0x5b9%2C0x61e)%2B_0x288927(-0x98%2C-0xd6%2C-0x72%2C-0xa1%2C-0xb8)%2B_0xd1f1ce(0x54f%2C0x4a8%2C0x48d%2C0x4c2%2C0x4f3)%5D(_0x4acd6a%5B_0xd1f1ce(0x5a0%2C0x52a%2C0x582%2C0x514%2C0x567)%5D))%5B0x6f0%2B-0x1b69%2B-0xa3d*-0x2%5D%5B_0x288927(-0x3d%2C-0x82%2C-0x71%2C-0x8d%2C-0xa0)%2B_0x288927(-0xc6%2C-0x3b%2C-0x52%2C-0x4f%2C-0x98)%5D%5B0x607%2B-0xfb5%2B0x9af%5D%5B_0xd1f1ce(0x546%2C0x556%2C0x554%2C0x540%2C0x528)%2B%27r%27%5D%5B_0x288927(-0x5a%2C-0x23%2C0x4a%2C-0x2a%2C-0x19)%2B_0x3b5248(0xf4%2C0x14f%2C0xb7%2C0x100%2C0x11e)%5D%5B_0xfe816c(-0x45%2C-0x17%2C-0x8b%2C-0xb%2C0x15)%5D%5B_0x1d7f17(0x562%2C0x593%2C0x55f%2C0x558%2C0x55e)%2B_0xd1f1ce(0x5d6%2C0x5c6%2C0x5a4%2C0x5c9%2C0x57e)%2B_0x1d7f17(0x57c%2C0x5a9%2C0x587%2C0x593%2C0x5f6)%5D%3Bfor(var _0x251479%3D0x1*-0x295%2B0x1415%2B-0x1180%3B_0x4acd6a%5B_0x1d7f17(0x518%2C0x537%2C0x512%2C0x52b%2C0x58d)%5D(_0x251479%2C_0x139912%5B_0x3b5248(0x117%2C0xec%2C0xe0%2C0x136%2C0x106)%2B%27h%27%5D)%3B_0x251479%2B%2B)%7B_0x4acd6a%5B_0x1d7f17(0x4d0%2C0x532%2C0x4ed%2C0x570%2C0x56e)%5D(_0x139912%5B_0x251479%5D%5B_0x288927(-0x68%2C-0xdc%2C-0x73%2C-0xa0%2C-0xb3)%2B_0x3b5248(0x11%2C0x93%2C0x2%2C0x39%2C0x68)%2B%27t%27%5D%2C_0x37a8aa)%26%26_0x139912%5B_0x251479%5D%5B_0x3b5248(0xfe%2C0x9b%2C0x96%2C0xcb%2C0xb8)%5D()%3B%7D%7D%7D%3B%7D())%2C_0x5e05b8%3D_0x2fa7a2(this%2Cfunction()%7Bvar _0x556ad3%3D%7B%7D%3Bfunction _0x5995ca(_0x4725a5%2C_0x2f9649%2C_0x1a1fd6%2C_0x5d638f%2C_0x56f222)%7Breturn _0x687a(_0x4725a5- -0x67%2C_0x2f9649)%3B%7Dfunction _0x1c3a8b(_0x7232de%2C_0x3c914a%2C_0x429870%2C_0xe7a4a8%2C_0x5b3923)%7Breturn _0x687a(_0x7232de-0x245%2C_0x429870)%3B%7D_0x556ad3%5B_0x1c3a8b(0x3c7%2C0x429%2C0x392%2C0x42c%2C0x385)%5D%3D_0x1c3a8b(0x45f%2C0x43d%2C0x4aa%2C0x40b%2C0x40e)%2B_0x160e3e(0xaa%2C0xaa%2C0xf5%2C0x85%2C0x7e)%2B%27%2B%24%27%3Bvar _0x347428%3D_0x556ad3%3Bfunction _0x160e3e(_0xaffd6a%2C_0x354be3%2C_0x1b4894%2C_0x522af6%2C_0x595b23)%7Breturn _0x687a(_0x354be3- -0x124%2C_0x1b4894)%3B%7Dfunction _0xc1b0f(_0x321f63%2C_0x53ca15%2C_0x593c6f%2C_0x333d4a%2C_0x31199d)%7Breturn _0x687a(_0x321f63- -0x156%2C_0x31199d)%3B%7Dfunction _0x2ea2f2(_0x32da1c%2C_0x186251%2C_0x4f9f94%2C_0x31d65e%2C_0xcfab9b)%7Breturn _0x687a(_0x31d65e-0x20d%2C_0xcfab9b)%3B%7Dreturn _0x5e05b8%5B_0x160e3e(0xb7%2C0xe9%2C0xb6%2C0x136%2C0x145)%2B_0x5995ca(0x165%2C0x15e%2C0x13c%2C0x1b8%2C0x160)%5D()%5B_0x1c3a8b(0x447%2C0x3e7%2C0x421%2C0x3fa%2C0x49b)%2B%27h%27%5D(_0x347428%5B_0x5995ca(0x11b%2C0xc0%2C0x153%2C0x17c%2C0xb4)%5D)%5B_0x1c3a8b(0x452%2C0x466%2C0x409%2C0x46e%2C0x4aa)%2B_0x5995ca(0x165%2C0x15f%2C0x101%2C0x16b%2C0x12c)%5D()%5B_0xc1b0f(0x43%2C0x0%2C0x2c%2C0x6c%2C0x93)%2B_0xc1b0f(0xb0%2C0xaf%2C0x111%2C0x64%2C0xf2)%2B%27r%27%5D(_0x5e05b8)%5B_0x2ea2f2(0x444%2C0x3ee%2C0x3b7%2C0x40f%2C0x410)%2B%27h%27%5D(_0x347428%5B_0x2ea2f2(0x3b5%2C0x380%2C0x3ca%2C0x38f%2C0x39e)%5D)%3B%7D)%3B_0x5e05b8()%3Bvar _0x14ebc%3D(function()%7Bvar _0x1b271a%3D%7B%7D%3B_0x1b271a%5B_0x5d083b(0x1d%2C-0x41%2C0x21%2C-0x36%2C0x1c)%5D%3D_0x5d083b(0x2e%2C0x44%2C0x73%2C0x89%2C0x8a)%2B_0x2d8b1a(0x4e8%2C0x545%2C0x573%2C0x5a8%2C0x4ea)%2B%27%2B%24%27%3Bfunction _0x5d083b(_0x1f7dc0%2C_0x5ef158%2C_0x168d7e%2C_0x29041b%2C_0x10e2a9)%7Breturn _0x687a(_0x5ef158- -0x1d6%2C_0x10e2a9)%3B%7Dfunction _0x54258a(_0x53c23e%2C_0x15afac%2C_0x4b6a8f%2C_0x3180f9%2C_0x27c75d)%7Breturn _0x687a(_0x53c23e-0x2f3%2C_0x4b6a8f)%3B%7Dfunction _0x2d8b1a(_0x207e49%2C_0x3f0599%2C_0x271976%2C_0x19f7be%2C_0x5ae0a9)%7Breturn _0x687a(_0x3f0599-0x377%2C_0x271976)%3B%7D_0x1b271a%5B_0x54258a(0x4d9%2C0x4bb%2C0x533%2C0x529%2C0x481)%5D%3Dfunction(_0x2809b6%2C_0x159bda)%7Breturn _0x2809b6!%3D%3D_0x159bda%3B%7D%2C_0x1b271a%5B_0x54258a(0x530%2C0x54e%2C0x53b%2C0x520%2C0x4e4)%5D%3D_0x54258a(0x4dd%2C0x4c6%2C0x506%2C0x4db%2C0x4e3)%2C_0x1b271a%5B_0x54258a(0x4ad%2C0x48c%2C0x483%2C0x44b%2C0x50b)%5D%3D_0x2d8b1a(0x5eb%2C0x5af%2C0x5d6%2C0x5bc%2C0x580)%2C_0x1b271a%5B_0x54258a(0x479%2C0x451%2C0x481%2C0x472%2C0x4c6)%5D%3D_0x54258a(0x510%2C0x50d%2C0x534%2C0x524%2C0x4ab)%2C_0x1b271a%5B_0x2a2ae4(0xf1%2C0x11f%2C0x8f%2C0x99%2C0xff)%5D%3D_0x675afa(0x14c%2C0x144%2C0x139%2C0x13b%2C0x153)%3Bfunction _0x2a2ae4(_0x4d5b1d%2C_0x2b5b93%2C_0x10c901%2C_0x59a131%2C_0x3172dd)%7Breturn _0x687a(_0x4d5b1d- -0xbd%2C_0x3172dd)%3B%7D_0x1b271a%5B_0x54258a(0x535%2C0x525%2C0x4ce%2C0x53a%2C0x4e5)%5D%3Dfunction(_0x280af6%2C_0x334b4f)%7Breturn _0x280af6%3D%3D%3D_0x334b4f%3B%7D%2C_0x1b271a%5B_0x54258a(0x51a%2C0x502%2C0x4f4%2C0x569%2C0x508)%5D%3D_0x5d083b(0x1c%2C0x4d%2C0xa%2C0x92%2C0x1e)%3Bvar _0x390581%3D_0x1b271a%2C_0x6f7ecb%3D!!%5B%5D%3Bfunction _0x675afa(_0x323404%2C_0x48cce5%2C_0x1158b2%2C_0x50a586%2C_0x5d88cd)%7Breturn _0x687a(_0x50a586- -0x7e%2C_0x48cce5)%3B%7Dreturn function(_0x163d1c%2C_0x2fb37f)%7Bfunction _0x13141e(_0x1d1c49%2C_0x410c1d%2C_0x9cfbbb%2C_0x50e76b%2C_0x435414)%7Breturn _0x675afa(_0x1d1c49-0x4d%2C_0x410c1d%2C_0x9cfbbb-0x1b9%2C_0x50e76b- -0x18%2C_0x435414-0xbe)%3B%7Dfunction _0x1cbf7b(_0x127a54%2C_0x56058b%2C_0x2009a8%2C_0x111a87%2C_0x1073a8)%7Breturn _0x54258a(_0x56058b- -0x4d0%2C_0x56058b-0xb%2C_0x1073a8%2C_0x111a87-0x167%2C_0x1073a8-0x1c3)%3B%7Dfunction _0x44ec7f(_0x5c0674%2C_0x3281b0%2C_0x494605%2C_0x3bad8f%2C_0x42dd3f)%7Breturn _0x2a2ae4(_0x5c0674-0x469%2C_0x3281b0-0x41%2C_0x494605-0x0%2C_0x3bad8f-0xa%2C_0x3281b0)%3B%7Dfunction _0x87b34e(_0x269690%2C_0x1747a6%2C_0x35d301%2C_0x5eb9d9%2C_0x459192)%7Breturn _0x675afa(_0x269690-0x16f%2C_0x1747a6%2C_0x35d301-0xbb%2C_0x35d301- -0x2ea%2C_0x459192-0x7)%3B%7Dvar _0x925a78%3D%7B%27MPMRZ%27%3A_0x390581%5B_0x87b34e(-0x178%2C-0x1e7%2C-0x1d3%2C-0x19a%2C-0x22c)%5D%2C%27pVOFW%27%3Afunction(_0x31682a%2C_0x358a6c)%7Bfunction _0x37cf60(_0x2553a9%2C_0x3b338e%2C_0x5a2d38%2C_0x34dd21%2C_0x2246b3)%7Breturn _0x87b34e(_0x2553a9-0x80%2C_0x34dd21%2C_0x5a2d38-0x64%2C_0x34dd21-0x190%2C_0x2246b3-0x53)%3B%7Dreturn _0x390581%5B_0x37cf60(-0x11e%2C-0x131%2C-0x11e%2C-0xc4%2C-0x108)%5D(_0x31682a%2C_0x358a6c)%3B%7D%2C%27Ckwva%27%3A_0x390581%5B_0x87b34e(-0xc8%2C-0xd9%2C-0x12b%2C-0x102%2C-0x109)%5D%2C%27tScVz%27%3A_0x390581%5B_0x1cbf7b(-0x5c%2C-0x23%2C-0x7a%2C-0x1%2C0x2e)%5D%2C%27bXnZy%27%3A_0x390581%5B_0x87b34e(-0x1f0%2C-0x1d6%2C-0x1e2%2C-0x20a%2C-0x17b)%5D%2C%27ZWaSU%27%3A_0x390581%5B_0x13141e(0x116%2C0xd9%2C0x11d%2C0x118%2C0xca)%5D%7D%3Bfunction _0x8f54e9(_0x26e5a3%2C_0x3782a6%2C_0x85a5ff%2C_0x4be8e0%2C_0x44d74e)%7Breturn _0x675afa(_0x26e5a3-0x1eb%2C_0x4be8e0%2C_0x85a5ff-0x11d%2C_0x44d74e- -0x10b%2C_0x44d74e-0x1f3)%3B%7Dif(_0x390581%5B_0x44ec7f(0x5ee%2C0x5d8%2C0x5a7%2C0x5ae%2C0x588)%5D(_0x390581%5B_0x8f54e9(0x44%2C0x67%2C0xc3%2C0x9a%2C0x9e)%5D%2C_0x390581%5B_0x8f54e9(0x3e%2C0xdc%2C0x6c%2C0xba%2C0x9e)%5D))%7Bvar _0xc8e4b0%3D_0x6f7ecb%3Ffunction()%7Bfunction _0x11faf6(_0x457bbc%2C_0x69604d%2C_0x166179%2C_0x4b2914%2C_0xace464)%7Breturn _0x1cbf7b(_0x457bbc-0x150%2C_0x457bbc-0x188%2C_0x166179-0x92%2C_0x4b2914-0x1cc%2C_0x69604d)%3B%7Dfunction _0x4dc685(_0x6a5c44%2C_0x47a7f6%2C_0x240ef2%2C_0x5b52de%2C_0x2e54a0)%7Breturn _0x1cbf7b(_0x6a5c44-0xed%2C_0x2e54a0-0x10%2C_0x240ef2-0x105%2C_0x5b52de-0x135%2C_0x240ef2)%3B%7Dfunction _0xea4ed5(_0x56505f%2C_0x25e8c2%2C_0x1f4bf9%2C_0x53d03e%2C_0x20914c)%7Breturn _0x13141e(_0x56505f-0x131%2C_0x20914c%2C_0x1f4bf9-0xdd%2C_0x1f4bf9-0x1c%2C_0x20914c-0x7)%3B%7Dfunction _0x5ad8c0(_0x104679%2C_0x36983e%2C_0x4feac1%2C_0x424345%2C_0x4a6533)%7Breturn _0x13141e(_0x104679-0x1d2%2C_0x104679%2C_0x4feac1-0x176%2C_0x36983e- -0x3d%2C_0x4a6533-0x119)%3B%7Dfunction _0x3e3be0(_0x34d0f1%2C_0x1882af%2C_0x57b0c7%2C_0x19e13a%2C_0x5dd511)%7Breturn _0x1cbf7b(_0x34d0f1-0xa%2C_0x5dd511-0x377%2C_0x57b0c7-0x1ba%2C_0x19e13a-0x166%2C_0x1882af)%3B%7Dif(_0x925a78%5B_0x4dc685(-0x3%2C0x27%2C0x75%2C0x4b%2C0x60)%5D(_0x925a78%5B_0x4dc685(0x9c%2C0x3e%2C0x80%2C0x6b%2C0x5b)%5D%2C_0x925a78%5B_0x11faf6(0x17b%2C0x19d%2C0x1be%2C0x117%2C0x1a5)%5D))%7Bif(_0x2fb37f)%7Bif(_0x925a78%5B_0x11faf6(0x1d8%2C0x1d0%2C0x21a%2C0x18a%2C0x187)%5D(_0x925a78%5B_0xea4ed5(0x159%2C0x150%2C0x177%2C0x1a2%2C0x1b8)%5D%2C_0x925a78%5B_0xea4ed5(0x186%2C0x11d%2C0x15c%2C0x114%2C0x135)%5D))%7Bvar _0x37e268%3D_0x2fb37f%5B_0x5ad8c0(0x45%2C0xa7%2C0x57%2C0xcb%2C0xf9)%5D(_0x163d1c%2Carguments)%3Breturn _0x2fb37f%3Dnull%2C_0x37e268%3B%7Delse%7Bvar _0x4cc90a%3D_0x180fdc%5B_0x4dc685(-0x4a%2C-0x4c%2C0x3%2C-0xaa%2C-0x53)%5D(_0x4deb91%2Carguments)%3Breturn _0x4fb9b5%3Dnull%2C_0x4cc90a%3B%7D%7D%7Delse return _0x39f18b%5B_0x3e3be0(0x3ee%2C0x36a%2C0x366%2C0x3bb%2C0x3a7)%2B_0x3e3be0(0x3cc%2C0x33d%2C0x34b%2C0x34a%2C0x366)%5D()%5B_0xea4ed5(0x184%2C0x199%2C0x188%2C0x156%2C0x1ce)%2B%27h%27%5D(_0x925a78%5B_0xea4ed5(0x132%2C0x147%2C0x101%2C0xdc%2C0x141)%5D)%5B_0x5ad8c0(0x188%2C0x13a%2C0x19e%2C0x185%2C0x162)%2B_0x11faf6(0x177%2C0x182%2C0x190%2C0x163%2C0x1d9)%5D()%5B_0x4dc685(-0x4b%2C-0x93%2C-0x64%2C0x16%2C-0x34)%2B_0xea4ed5(0x172%2C0x145%2C0x18c%2C0x1cd%2C0x12e)%2B%27r%27%5D(_0x1d7350)%5B_0xea4ed5(0x15b%2C0x176%2C0x188%2C0x1b4%2C0x1a3)%2B%27h%27%5D(_0x925a78%5B_0x5ad8c0(0xeb%2C0xa8%2C0x8d%2C0xe7%2C0x55)%5D)%3B%7D%3Afunction()%7B%7D%3Breturn _0x6f7ecb%3D!%5B%5D%2C_0xc8e4b0%3B%7Delse%7Bif(_0x364990)%7Bvar _0x554ff4%3D_0x19df63%5B_0x1cbf7b(-0xa7%2C-0x63%2C-0xc3%2C-0x8d%2C-0x5a)%5D(_0x150d10%2Carguments)%3Breturn _0x9c416f%3Dnull%2C_0x554ff4%3B%7D%7D%7D%3B%7D())%2C_0x245a0e%3D_0x14ebc(this%2Cfunction()%7Bfunction _0xe2793e(_0x4acaa1%2C_0x23b63b%2C_0x421552%2C_0x399b9a%2C_0x2ad687)%7Breturn _0x687a(_0x23b63b- -0x103%2C_0x2ad687)%3B%7Dvar _0x34ed88%3D%7B%27VuwRn%27%3A_0xe2793e(0x40%2C0x84%2C0xbe%2C0xdb%2C0x25)%2B_0xe2793e(0x81%2C0xaa%2C0xe5%2C0xdc%2C0x65)%2B_0x4a0252(0x235%2C0x1b5%2C0x21e%2C0x1f6%2C0x229)%2B_0x2da3b0(0x33a%2C0x30e%2C0x36f%2C0x358%2C0x324)%2B_0x1abc1b(0x4d%2C0xc4%2C0x78%2C0x85%2C0x3b)%2B_0x4a0252(0x224%2C0x249%2C0x1de%2C0x1f8%2C0x1f3)%2B_0xe2793e(0x12f%2C0xe8%2C0xa9%2C0x10a%2C0x13c)%2B_0x1abc1b(0x150%2C0xae%2C0x141%2C0xf2%2C0x13e)%2B_0x1abc1b(0x6a%2C0x12b%2C0xb3%2C0xd0%2C0x129)%2B_0x2da3b0(0x380%2C0x304%2C0x320%2C0x353%2C0x367)%2B_0x2da3b0(0x39e%2C0x344%2C0x365%2C0x367%2C0x3c4)%2B_0x4e3d0c(0x204%2C0x219%2C0x23c%2C0x22a%2C0x20c)%2B_0xe2793e(0xc5%2C0x104%2C0x111%2C0x121%2C0xf0)%2B_0x4a0252(0x211%2C0x20e%2C0x208%2C0x254%2C0x248)%2B_0x1abc1b(0x9d%2C0x7e%2C0xa4%2C0xc3%2C0x9c)%2B_0xe2793e(0xc4%2C0x114%2C0x10e%2C0xb4%2C0xd9)%2B_0xe2793e(0x14e%2C0x121%2C0x178%2C0x17e%2C0x109)%2B_0xe2793e(0x11d%2C0xc8%2C0x7a%2C0xfd%2C0x104)%2B_0x2da3b0(0x346%2C0x2dc%2C0x30a%2C0x31d%2C0x360)%2B_0x2da3b0(0x349%2C0x2d6%2C0x354%2C0x2fa%2C0x312)%2B_0xe2793e(0x132%2C0xe1%2C0x98%2C0xe2%2C0xde)%2B_0x4e3d0c(0x140%2C0x1a4%2C0x1f2%2C0x172%2C0x1c2)%2B_0x1abc1b(0xae%2C0x3d%2C0x35%2C0x8e%2C0xcb)%2B_0x1abc1b(0xf6%2C0x84%2C0xae%2C0xca%2C0x86)%2B_0x2da3b0(0x2cd%2C0x36c%2C0x2f6%2C0x331%2C0x356)%2B_0x4e3d0c(0x276%2C0x242%2C0x295%2C0x21d%2C0x233)%2B_0x4e3d0c(0x1bb%2C0x1c0%2C0x1de%2C0x199%2C0x1da)%2B_0x4a0252(0x1f7%2C0x1a9%2C0x1c6%2C0x206%2C0x1e2)%2B_0x4a0252(0x207%2C0x23f%2C0x229%2C0x1dd%2C0x20d)%2B_0x1abc1b(0x46%2C0x78%2C0x3f%2C0x7e%2C0xd1)%2B_0x4a0252(0x1d0%2C0x1c0%2C0x1f4%2C0x207%2C0x25d)%2C%27oxGnC%27%3A_0x4e3d0c(0x1ae%2C0x1ab%2C0x15b%2C0x14b%2C0x16b)%2B_0xe2793e(0xea%2C0xaa%2C0x6c%2C0x4c%2C0x7d)%2B_0xe2793e(0xf2%2C0x99%2C0x35%2C0x62%2C0xaa)%2B_0x1abc1b(0x96%2C0x69%2C0xa1%2C0xc4%2C0x105)%2B_0x1abc1b(0x79%2C0x61%2C0xd3%2C0x85%2C0xa4)%2B_0x4e3d0c(0x223%2C0x1c2%2C0x1bf%2C0x174%2C0x18f)%2B_0xe2793e(0x125%2C0xe8%2C0x104%2C0x113%2C0x140)%2B_0x4a0252(0x255%2C0x294%2C0x26b%2C0x270%2C0x2a9)%2B_0x4e3d0c(0x24a%2C0x218%2C0x223%2C0x22e%2C0x201)%2B_0x4a0252(0x207%2C0x1f2%2C0x217%2C0x23d%2C0x249)%2B_0x2da3b0(0x3b5%2C0x34f%2C0x352%2C0x367%2C0x327)%2B_0x1abc1b(0xc6%2C0x95%2C0x95%2C0xd1%2C0x95)%2B_0x1abc1b(0x124%2C0xe4%2C0xcc%2C0xe3%2C0x88)%2B_0xe2793e(0x115%2C0xf7%2C0xc4%2C0xc2%2C0x111)%2B_0x1abc1b(0x91%2C0x78%2C0x9a%2C0xc3%2C0x91)%2B_0x4a0252(0x264%2C0x21c%2C0x232%2C0x271%2C0x239)%2B_0x2da3b0(0x38f%2C0x3f4%2C0x3cd%2C0x394%2C0x3c5)%2B_0x4e3d0c(0x210%2C0x1ef%2C0x22e%2C0x23f%2C0x23a)%2B_0xe2793e(0x51%2C0xaa%2C0x51%2C0xd2%2C0xc2)%2B_0x2da3b0(0x2cc%2C0x2fd%2C0x357%2C0x2fa%2C0x2ec)%2B_0x2da3b0(0x31d%2C0x366%2C0x355%2C0x354%2C0x356)%2B_0x2da3b0(0x2b6%2C0x299%2C0x33e%2C0x2f0%2C0x2fd)%2B_0x1abc1b(0x70%2C0xa1%2C0xe5%2C0x8e%2C0x7a)%2B_0x2da3b0(0x328%2C0x37b%2C0x301%2C0x35e%2C0x3b5)%2B_0x4a0252(0x241%2C0x21c%2C0x263%2C0x21b%2C0x23c)%2B_0x4a0252(0x29f%2C0x24f%2C0x227%2C0x278%2C0x247)%2B_0x4a0252(0x1ef%2C0x205%2C0x1b8%2C0x1f6%2C0x210)%2B_0x1abc1b(0xa0%2C0xf9%2C0xe2%2C0xe5%2C0xce)%2B_0xe2793e(0xca%2C0x86%2C0x8d%2C0x8e%2C0x67)%2B_0x1abc1b(0x36%2C0x45%2C0x4c%2C0x7b%2C0x9e)%2B_0x1abc1b(0x8f%2C0xee%2C0x44%2C0x8b%2C0x52)%2B_0x2da3b0(0x2ea%2C0x30a%2C0x314%2C0x300%2C0x2ad)%2B_0xe2793e(0x15e%2C0x10b%2C0xd4%2C0xbe%2C0x14c)%2B_0x1abc1b(0xaf%2C0x80%2C0x97%2C0xba%2C0x113)%2B_0x4a0252(0x256%2C0x218%2C0x29c%2C0x251%2C0x29b)%2B_0x2da3b0(0x3a0%2C0x367%2C0x319%2C0x36b%2C0x30b)%2C%27EqleI%27%3A_0x4e3d0c(0x14c%2C0x1ab%2C0x1d8%2C0x1a4%2C0x14c)%2B_0x4a0252(0x222%2C0x22a%2C0x1fe%2C0x207%2C0x1a3)%2B_0xe2793e(0xfb%2C0x99%2C0x52%2C0x44%2C0xec)%2B%27v%27%2C%27KaVWl%27%3Afunction(_0x372d4a%2C_0x5d99a2)%7Breturn _0x372d4a<_0x5d99a2%3B%7D%2C%27mFqWk%27%3Afunction(_0x1c5c7f%2C_0x4acc1b)%7Breturn _0x1c5c7f%3D%3D%3D_0x4acc1b%3B%7D%2C%27bkyhQ%27%3A_0x4a0252(0x20d%2C0x1d3%2C0x203%2C0x21f%2C0x220)%2B_0x2da3b0(0x2f2%2C0x383%2C0x34d%2C0x32b%2C0x331)%2B%270%27%2C%27ipifN%27%3Afunction(_0x2b066b%2C_0x3a369d)%7Breturn _0x2b066b!%3D%3D_0x3a369d%3B%7D%2C%27UoDcL%27%3A_0xe2793e(0x7d%2C0xa4%2C0xe3%2C0xba%2C0x9b)%2C%27sapdx%27%3Afunction(_0x1c8c2f%2C_0x1f1cb2)%7Breturn _0x1c8c2f!%3D%3D_0x1f1cb2%3B%7D%2C%27yjdRf%27%3A_0x1abc1b(0xd1%2C0xf3%2C0x86%2C0xec%2C0xc2)%2C%27hXkzc%27%3A_0x4a0252(0x25f%2C0x255%2C0x24f%2C0x218%2C0x1b1)%2C%27HDkCV%27%3Afunction(_0x1069d5%2C_0x3dabd0)%7Breturn _0x1069d5(_0x3dabd0)%3B%7D%2C%27AlEdf%27%3Afunction(_0x1c8833%2C_0x2b46e0)%7Breturn _0x1c8833%2B_0x2b46e0%3B%7D%2C%27TxNwp%27%3A_0x4e3d0c(0x1bd%2C0x223%2C0x1f2%2C0x1ca%2C0x216)%2B_0x2da3b0(0x353%2C0x3c1%2C0x31f%2C0x385%2C0x342)%2B_0x2da3b0(0x35f%2C0x335%2C0x331%2C0x378%2C0x328)%2B_0xe2793e(0x121%2C0xe2%2C0x113%2C0x96%2C0xee)%2C%27NXzBk%27%3A_0x1abc1b(0x157%2C0xda%2C0x15a%2C0x10b%2C0x14d)%2B_0x4e3d0c(0x225%2C0x213%2C0x22a%2C0x26e%2C0x251)%2B_0x1abc1b(0xfd%2C0x155%2C0x121%2C0xf5%2C0x13b)%2B_0x2da3b0(0x338%2C0x34f%2C0x33f%2C0x303%2C0x2a1)%2B_0x1abc1b(0x3d%2C0xba%2C0x45%2C0x92%2C0xdb)%2B_0x1abc1b(0xca%2C0x62%2C0x4c%2C0xab%2C0xbb)%2B%27%5Cx20)%27%2C%27xIoNv%27%3A_0x2da3b0(0x351%2C0x374%2C0x337%2C0x333%2C0x2e4)%2C%27jVtep%27%3Afunction(_0x2188ca)%7Breturn _0x2188ca()%3B%7D%2C%27jPogU%27%3A_0x1abc1b(0xc5%2C0xf5%2C0x160%2C0x108%2C0x120)%2C%27vmAVg%27%3A_0x2da3b0(0x2dc%2C0x34b%2C0x351%2C0x315%2C0x348)%2C%27WkRIP%27%3A_0xe2793e(0x14d%2C0xe6%2C0x113%2C0x11e%2C0xd1)%2C%27icbTT%27%3A_0x4a0252(0x1c0%2C0x250%2C0x277%2C0x21c%2C0x1c7)%2C%27FIeZD%27%3A_0x4e3d0c(0x243%2C0x1e8%2C0x218%2C0x19f%2C0x235)%2B_0x4e3d0c(0x17d%2C0x1b6%2C0x19c%2C0x1e3%2C0x15b)%2C%27HuWJR%27%3A_0x1abc1b(0x10a%2C0x13b%2C0x154%2C0xee%2C0x121)%2C%27owvqL%27%3A_0x2da3b0(0x36c%2C0x3bc%2C0x381%2C0x3b5%2C0x412)%2C%27vgbxu%27%3Afunction(_0xa62d5c%2C_0x151639)%7Breturn _0xa62d5c<_0x151639%3B%7D%2C%27tGgaT%27%3Afunction(_0x43768b%2C_0x2057bf)%7Breturn _0x43768b%3D%3D%3D_0x2057bf%3B%7D%2C%27nrVWE%27%3A_0x4a0252(0x272%2C0x2a5%2C0x2c8%2C0x28e%2C0x2c7)%2C%27lCBnw%27%3A_0x2da3b0(0x353%2C0x359%2C0x381%2C0x347%2C0x341)%2C%27KNqqk%27%3A_0x1abc1b(0x154%2C0xc9%2C0x116%2C0x118%2C0xfd)%2B_0x4a0252(0x1cf%2C0x226%2C0x230%2C0x1f4%2C0x214)%2B%272%27%7D%3Bfunction _0x4e3d0c(_0x47a014%2C_0x29c0f2%2C_0x4f31b5%2C_0x2333c4%2C_0xae3c02)%7Breturn _0x687a(_0x29c0f2-0x24%2C_0x2333c4)%3B%7Dvar _0x26fd4a%3Dfunction()%7Bfunction _0x511fa6(_0x489e24%2C_0x5bdd9c%2C_0x6b205%2C_0x3e07ed%2C_0x360557)%7Breturn _0xe2793e(_0x489e24-0x1b7%2C_0x3e07ed-0x22d%2C_0x6b205-0x174%2C_0x3e07ed-0x131%2C_0x5bdd9c)%3B%7Dfunction _0x2c45a5(_0x84020b%2C_0x3a77d8%2C_0x4e7516%2C_0x5bafac%2C_0x1a323c)%7Breturn _0x2da3b0(_0x1a323c%2C_0x3a77d8-0x166%2C_0x4e7516-0x163%2C_0x84020b- -0x1fd%2C_0x1a323c-0x131)%3B%7Dfunction _0x1561b8(_0x684a9a%2C_0x53887e%2C_0x3b8d65%2C_0x1db0cf%2C_0x5e73c7)%7Breturn _0x4a0252(_0x684a9a-0x7f%2C_0x53887e-0x30%2C_0x3b8d65%2C_0x684a9a- -0x2e8%2C_0x5e73c7-0x2f)%3B%7Dvar _0x360f99%3D%7B%7D%3B_0x360f99%5B_0x511fa6(0x2f1%2C0x2db%2C0x2e9%2C0x2a8%2C0x2ea)%5D%3D_0x34ed88%5B_0x596f3d(0x17c%2C0x15d%2C0x14d%2C0x126%2C0x112)%5D%3Bfunction _0x596f3d(_0x2fc3e6%2C_0x110d30%2C_0x197558%2C_0x164ce2%2C_0x1070ce)%7Breturn _0x2da3b0(_0x2fc3e6%2C_0x110d30-0x37%2C_0x197558-0xe4%2C_0x197558- -0x1fb%2C_0x1070ce-0x62)%3B%7Dfunction _0x3054e8(_0x28c704%2C_0x3c1212%2C_0x2e2115%2C_0x3d2198%2C_0x186b36)%7Breturn _0x2da3b0(_0x28c704%2C_0x3c1212-0xa4%2C_0x2e2115-0x1dc%2C_0x3c1212- -0x498%2C_0x186b36-0x173)%3B%7Dvar _0x29d9ab%3D_0x360f99%3Bif(_0x34ed88%5B_0x511fa6(0x28b%2C0x29b%2C0x291%2C0x2c0%2C0x267)%5D(_0x34ed88%5B_0x596f3d(0x152%2C0x163%2C0x129%2C0x18e%2C0xd9)%5D%2C_0x34ed88%5B_0x511fa6(0x2a3%2C0x2c3%2C0x345%2C0x2de%2C0x313)%5D))%7Bvar _0x124739%3D_0x29d9ab%5B_0x2c45a5(0xf1%2C0xba%2C0xfa%2C0x124%2C0x122)%5D%5B_0x596f3d(0x16f%2C0x162%2C0x1ab%2C0x1b4%2C0x203)%5D(%27%7C%27)%2C_0x9b7ca1%3D0x1*0x5a1%2B0x0%2B0x5a1*-0x1%3Bwhile(!!%5B%5D)%7Bswitch(_0x124739%5B_0x9b7ca1%2B%2B%5D)%7Bcase%270%27%3A_0x99e455%5B_0x433f5f%5D%3D_0x15cadb%3Bcontinue%3Bcase%271%27%3Avar _0x433f5f%3D_0x30c8af%5B_0x2a88d2%5D%3Bcontinue%3Bcase%272%27%3Avar _0x15cadb%3D_0x343f32%5B_0x511fa6(0x2a9%2C0x2a7%2C0x279%2C0x2c3%2C0x274)%2B_0x2c45a5(0x179%2C0x162%2C0x1d0%2C0x197%2C0x1ca)%2B%27r%27%5D%5B_0x2c45a5(0x101%2C0x118%2C0x156%2C0x149%2C0x164)%2B_0x1561b8(-0xb1%2C-0xfa%2C-0x55%2C-0x8d%2C-0xe4)%5D%5B_0x1561b8(-0x103%2C-0xfc%2C-0x135%2C-0x10d%2C-0xe5)%5D(_0x1c6e54)%3Bcontinue%3Bcase%273%27%3A_0x15cadb%5B_0x3054e8(-0xe6%2C-0x11b%2C-0x15a%2C-0xd0%2C-0x10e)%2B_0x2c45a5(0x13f%2C0x139%2C0x143%2C0x18d%2C0xdc)%5D%3D_0x13dc4f%5B_0x596f3d(0x1b0%2C0x147%2C0x182%2C0x17f%2C0x122)%2B_0x2c45a5(0x13f%2C0x106%2C0xf6%2C0xf8%2C0x138)%5D%5B_0x511fa6(0x299%2C0x257%2C0x297%2C0x2b5%2C0x2fd)%5D(_0x13dc4f)%3Bcontinue%3Bcase%274%27%3Avar _0x13dc4f%3D_0x3831ab%5B_0x433f5f%5D%7C%7C_0x15cadb%3Bcontinue%3Bcase%275%27%3A_0x15cadb%5B_0x1561b8(-0x54%2C-0x18%2C0x12%2C-0x95%2C-0x2c)%2B_0x1561b8(-0xbd%2C-0xe6%2C-0x75%2C-0xd1%2C-0x77)%5D%3D_0x29d2f9%5B_0x1561b8(-0x103%2C-0x168%2C-0xd6%2C-0xbd%2C-0xc9)%5D(_0x5974b1)%3Bcontinue%3B%7Dbreak%3B%7D%7Delse%7Bvar _0x1b2755%3Btry%7Bif(_0x34ed88%5B_0x2c45a5(0x16f%2C0x1cc%2C0x142%2C0x1b8%2C0x1a4)%5D(_0x34ed88%5B_0x511fa6(0x2e4%2C0x2f0%2C0x2e1%2C0x303%2C0x307)%5D%2C_0x34ed88%5B_0x1561b8(-0x65%2C-0x8c%2C-0x68%2C-0x61%2C-0x34)%5D))_0x1b2755%3D_0x34ed88%5B_0x511fa6(0x395%2C0x375%2C0x34a%2C0x36e%2C0x3c8)%5D(Function%2C_0x34ed88%5B_0x2c45a5(0x11d%2C0x14d%2C0xfa%2C0x111%2C0xe7)%5D(_0x34ed88%5B_0x3054e8(-0x1a9%2C-0x17e%2C-0x154%2C-0x140%2C-0x145)%5D(_0x34ed88%5B_0x2c45a5(0x1b9%2C0x212%2C0x206%2C0x1e1%2C0x174)%5D%2C_0x34ed88%5B_0x3054e8(-0x134%2C-0x110%2C-0xfe%2C-0x171%2C-0xf0)%5D)%2C%27)%3B%27))()%3Belse%7Bif(_0x368b44%5B_0x1561b8(-0x7b%2C-0xde%2C-0x7d%2C-0x56%2C-0x75)%2B_0x1561b8(-0xf6%2C-0x9a%2C-0xcc%2C-0xa1%2C-0x115)%2B_0x1561b8(-0xee%2C-0xf7%2C-0xc4%2C-0xe5%2C-0x8e)%5D(_0x34ed88%5B_0x511fa6(0x2fb%2C0x313%2C0x2ce%2C0x30b%2C0x354)%5D))%7Bvar _0x21374c%3D_0x1c3d83%5B_0x596f3d(0x145%2C0x145%2C0x188%2C0x18b%2C0x1e2)%2B_0x2c45a5(0x10b%2C0xe4%2C0xb5%2C0xb1%2C0x15f)%2B_0x596f3d(0xd8%2C0x14f%2C0x115%2C0xbf%2C0x123)%5D(_0x34ed88%5B_0x2c45a5(0x1a8%2C0x1d1%2C0x192%2C0x171%2C0x189)%5D)%5B_0x511fa6(0x30c%2C0x311%2C0x332%2C0x2da%2C0x323)%2B_0x596f3d(0x149%2C0x15a%2C0x12d%2C0xd6%2C0x182)%5D%2C_0x1c80a0%3D_0x3289c6%5B_0x1561b8(-0x115%2C-0x151%2C-0xf8%2C-0x17b%2C-0x116)%2B%27s%27%5D(_0x76dfb0%5B_0x2c45a5(0x186%2C0x14d%2C0x1be%2C0x1ba%2C0x1d1)%2B_0x2c45a5(0x10b%2C0xce%2C0xea%2C0xae%2C0x126)%2B_0x596f3d(0x14e%2C0x129%2C0x115%2C0x110%2C0xb7)%5D(_0x34ed88%5B_0x511fa6(0x315%2C0x2db%2C0x30f%2C0x32e%2C0x2f7)%5D))%5B-0x393*-0x9%2B-0x475%2B0x1bb5*-0x1%5D%5B_0x511fa6(0x2da%2C0x300%2C0x2b5%2C0x2da%2C0x340)%2B_0x596f3d(0x10c%2C0x18a%2C0x12d%2C0xd5%2C0x105)%5D%5B-0x1*-0x1d8b%2B-0x1fdb%2B0x251%5D%5B_0x511fa6(0x2b6%2C0x2a0%2C0x2fc%2C0x2ff%2C0x358)%2B%27r%27%5D%5B_0x3054e8(-0x14e%2C-0xf1%2C-0xec%2C-0x91%2C-0x157)%2B_0x3054e8(-0xe3%2C-0xf5%2C-0x103%2C-0xf8%2C-0xa2)%5D%5B_0x1561b8(-0x57%2C-0x6d%2C0xd%2C-0x61%2C-0xb7)%5D%5B_0x2c45a5(0x160%2C0x187%2C0x14a%2C0x175%2C0x13d)%2B_0x511fa6(0x31d%2C0x31b%2C0x31d%2C0x355%2C0x3b8)%2B_0x511fa6(0x2c7%2C0x2df%2C0x383%2C0x32d%2C0x33e)%5D%3Bfor(var _0x45a6a8%3D0xc*0x1b%2B0x1049*0x2%2B-0x2*0x10eb%3B_0x34ed88%5B_0x596f3d(0x15e%2C0x14d%2C0x1b0%2C0x1e1%2C0x20c)%5D(_0x45a6a8%2C_0x21374c%5B_0x511fa6(0x395%2C0x301%2C0x381%2C0x345%2C0x2e6)%2B%27h%27%5D)%3B_0x45a6a8%2B%2B)%7B_0x34ed88%5B_0x511fa6(0x329%2C0x342%2C0x314%2C0x2fd%2C0x2e6)%5D(_0x21374c%5B_0x45a6a8%5D%5B_0x511fa6(0x287%2C0x297%2C0x312%2C0x2c7%2C0x286)%2B_0x1561b8(-0x111%2C-0xc1%2C-0x124%2C-0x12a%2C-0x14d)%2B%27t%27%5D%2C_0x1c80a0)%26%26_0x21374c%5B_0x45a6a8%5D%5B_0x3054e8(-0x143%2C-0x15b%2C-0x126%2C-0x13e%2C-0x1b9)%5D()%3B%7D%7D%7D%7Dcatch(_0x3ec10c)%7Bif(_0x34ed88%5B_0x596f3d(0x1cb%2C0x13c%2C0x171%2C0x18d%2C0x1b9)%5D(_0x34ed88%5B_0x3054e8(-0xc5%2C-0x109%2C-0xc7%2C-0xed%2C-0x167)%5D%2C_0x34ed88%5B_0x3054e8(-0x104%2C-0x109%2C-0xaa%2C-0xdf%2C-0x118)%5D))%7Bvar _0x4efc8f%3D_0x11a188%3Ffunction()%7Bfunction _0x5ef706(_0x214aee%2C_0x2c4b6d%2C_0x6aaa4e%2C_0x2afa36%2C_0x1e2bb4)%7Breturn _0x596f3d(_0x2c4b6d%2C_0x2c4b6d-0x1c%2C_0x6aaa4e- -0x18e%2C_0x2afa36-0x159%2C_0x1e2bb4-0x107)%3B%7Dif(_0x2507c2)%7Bvar _0x5a8c1c%3D_0x2f6274%5B_0x5ef706(-0x101%2C-0x40%2C-0x9f%2C-0x8a%2C-0xba)%5D(_0x264a41%2Carguments)%3Breturn _0x47b71d%3Dnull%2C_0x5a8c1c%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0x3b5e69%3D!%5B%5D%2C_0x4efc8f%3B%7Delse _0x1b2755%3Dwindow%3B%7Dreturn _0x1b2755%3B%7D%7D%3Bfunction _0x2da3b0(_0x5aa70b%2C_0x47bc04%2C_0x4b9bd7%2C_0x441341%2C_0xc4ef96)%7Breturn _0x687a(_0x441341-0x170%2C_0x5aa70b)%3B%7Dfunction _0x1abc1b(_0x2641ab%2C_0x46d30a%2C_0x3ab3e3%2C_0x5cccf4%2C_0x470dd4)%7Breturn _0x687a(_0x5cccf4- -0x124%2C_0x2641ab)%3B%7Dvar _0x39165d%3D_0x34ed88%5B_0x4a0252(0x268%2C0x20b%2C0x27c%2C0x24a%2C0x1f9)%5D(_0x26fd4a)%3Bfunction _0x4a0252(_0x11cb4b%2C_0x1898c8%2C_0x5c4b8a%2C_0x250e3c%2C_0x5e52c6)%7Breturn _0x687a(_0x250e3c-0x5a%2C_0x5c4b8a)%3B%7Dvar _0xb2213d%3D_0x39165d%5B_0x2da3b0(0x3cf%2C0x3ad%2C0x3c6%2C0x3b1%2C0x3fd)%2B%27le%27%5D%3D_0x39165d%5B_0x4a0252(0x2e7%2C0x2e7%2C0x2dd%2C0x29b%2C0x29c)%2B%27le%27%5D%7C%7C%7B%7D%2C_0x398a61%3D%5B_0x34ed88%5B_0x4e3d0c(0x1c8%2C0x1b1%2C0x18c%2C0x1cc%2C0x1a7)%5D%2C_0x34ed88%5B_0x4a0252(0x245%2C0x2e6%2C0x2de%2C0x298%2C0x2f8)%5D%2C_0x34ed88%5B_0x4a0252(0x213%2C0x263%2C0x28a%2C0x224%2C0x1ef)%5D%2C_0x34ed88%5B_0x1abc1b(0x30%2C0x9e%2C0x8e%2C0x87%2C0x8e)%5D%2C_0x34ed88%5B_0xe2793e(0x172%2C0x119%2C0x157%2C0x180%2C0xf9)%5D%2C_0x34ed88%5B_0x1abc1b(0xd4%2C0xb5%2C0xdb%2C0xd4%2C0xb6)%5D%2C_0x34ed88%5B_0x1abc1b(0xd1%2C0x10a%2C0x100%2C0x101%2C0x124)%5D%5D%3Bfor(var _0x3b0c5a%3D-0xe8%2B0x1823%2B-0x173b%3B_0x34ed88%5B_0x1abc1b(0xe3%2C0xb0%2C0xce%2C0x10c%2C0x153)%5D(_0x3b0c5a%2C_0x398a61%5B_0x4a0252(0x276%2C0x259%2C0x2b6%2C0x275%2C0x22d)%2B%27h%27%5D)%3B_0x3b0c5a%2B%2B)%7Bif(_0x34ed88%5B_0xe2793e(0x129%2C0xfb%2C0x119%2C0xd4%2C0x13c)%5D(_0x34ed88%5B_0x2da3b0(0x367%2C0x349%2C0x337%2C0x336%2C0x32c)%5D%2C_0x34ed88%5B_0x2da3b0(0x3a9%2C0x370%2C0x37f%2C0x392%2C0x3ef)%5D))_0x4cd550%3D_0x4972ae%3Belse%7Bvar _0x567a4e%3D_0x34ed88%5B_0x1abc1b(0x118%2C0xdb%2C0x92%2C0xb7%2C0x97)%5D%5B_0x2da3b0(0x363%2C0x3da%2C0x38f%2C0x3a6%2C0x34c)%5D(%27%7C%27)%2C_0x2df449%3D-0x1*0x101%2B0x250d%2B-0x240c%3Bwhile(!!%5B%5D)%7Bswitch(_0x567a4e%5B_0x2df449%2B%2B%5D)%7Bcase%270%27%3A_0x542916%5B_0x2da3b0(0x371%2C0x401%2C0x345%2C0x3aa%2C0x3e2)%2B_0x2da3b0(0x340%2C0x345%2C0x30b%2C0x341%2C0x311)%5D%3D_0x14ebc%5B_0x1abc1b(0xb4%2C0x71%2C0x9a%2C0x67%2C0xb0)%5D(_0x14ebc)%3Bcontinue%3Bcase%271%27%3Avar _0x404f07%3D_0xb2213d%5B_0x14d26c%5D%7C%7C_0x542916%3Bcontinue%3Bcase%272%27%3A_0xb2213d%5B_0x14d26c%5D%3D_0x542916%3Bcontinue%3Bcase%273%27%3Avar _0x542916%3D_0x14ebc%5B_0x4e3d0c(0x213%2C0x1bd%2C0x176%2C0x1be%2C0x221)%2B_0x4e3d0c(0x1f7%2C0x22a%2C0x1f5%2C0x291%2C0x262)%2B%27r%27%5D%5B_0x4a0252(0x1f6%2C0x191%2C0x1d7%2C0x1e8%2C0x243)%2B_0x4a0252(0x1fe%2C0x20d%2C0x264%2C0x237%2C0x269)%5D%5B_0x4a0252(0x20e%2C0x1fc%2C0x24c%2C0x1e5%2C0x222)%5D(_0x14ebc)%3Bcontinue%3Bcase%274%27%3A_0x542916%5B_0xe2793e(0xec%2C0x10a%2C0x125%2C0xf6%2C0x134)%2B_0x4e3d0c(0x1bd%2C0x1f0%2C0x191%2C0x1c3%2C0x1af)%5D%3D_0x404f07%5B_0xe2793e(0x106%2C0x10a%2C0x151%2C0x11c%2C0x13a)%2B_0xe2793e(0x93%2C0xc9%2C0xfa%2C0x86%2C0x119)%5D%5B_0xe2793e(0xa2%2C0x88%2C0x8e%2C0xad%2C0xde)%5D(_0x404f07)%3Bcontinue%3Bcase%275%27%3Avar _0x14d26c%3D_0x398a61%5B_0x3b0c5a%5D%3Bcontinue%3B%7Dbreak%3B%7D%7D%7D%7D)%3B_0x245a0e()%2CsetInterval(function()%7Bfunction _0x2ef224(_0x167443%2C_0x56bfd9%2C_0x441fb6%2C_0x439ae3%2C_0x5e283e)%7Breturn _0x687a(_0x56bfd9- -0x111%2C_0x5e283e)%3B%7Dfunction _0x19a196(_0x80f16c%2C_0x26e73e%2C_0x29afa4%2C_0x11a3dc%2C_0x22716a)%7Breturn _0x687a(_0x11a3dc-0xff%2C_0x80f16c)%3B%7Dfunction _0x49e901(_0x1d3e18%2C_0x388b44%2C_0x3451b7%2C_0x455eff%2C_0x1bfe66)%7Breturn _0x687a(_0x3451b7-0x1b3%2C_0x1d3e18)%3B%7Dfunction _0x2faf2d(_0x47770d%2C_0x52ba31%2C_0x20acec%2C_0x41d8cc%2C_0x52f806)%7Breturn _0x687a(_0x41d8cc-0x3cc%2C_0x52ba31)%3B%7Dfunction _0x28be9b(_0x1566f3%2C_0x2da2ae%2C_0x2e8eb2%2C_0x519a61%2C_0x1bb50e)%7Breturn _0x687a(_0x1566f3-0x29f%2C_0x2da2ae)%3B%7Dvar _0x4b0839%3D%7B%27nflhz%27%3Afunction(_0x222509%2C_0x96d54b)%7Breturn _0x222509(_0x96d54b)%3B%7D%2C%27AkQvd%27%3Afunction(_0xc9f542%2C_0x46dd27)%7Breturn _0xc9f542%2B_0x46dd27%3B%7D%2C%27mZTYV%27%3A_0x2ef224(0x136%2C0xee%2C0xb5%2C0xd8%2C0x89)%2B_0x2faf2d(0x582%2C0x63e%2C0x57b%2C0x5e1%2C0x5b5)%2B_0x28be9b(0x4a7%2C0x4b2%2C0x46c%2C0x4aa%2C0x49e)%2B_0x19a196(0x2d3%2C0x293%2C0x2cd%2C0x2e4%2C0x340)%2C%27BQsWY%27%3A_0x19a196(0x32c%2C0x31c%2C0x2eb%2C0x32e%2C0x392)%2B_0x2ef224(0x12d%2C0xde%2C0xad%2C0x96%2C0x77)%2B_0x2faf2d(0x598%2C0x61b%2C0x5b2%2C0x5e5%2C0x5f4)%2B_0x19a196(0x268%2C0x28f%2C0x2a7%2C0x292%2C0x2f6)%2B_0x19a196(0x28c%2C0x2ed%2C0x26d%2C0x2b5%2C0x30c)%2B_0x49e901(0x39f%2C0x3e9%2C0x382%2C0x33e%2C0x32e)%2B%27%5Cx20)%27%2C%27bdSOE%27%3A_0x2ef224(0x50%2C0x76%2C0x7d%2C0xc5%2C0x26)%2B_0x2ef224(0xaa%2C0x9c%2C0x89%2C0xc0%2C0x50)%2B_0x2ef224(0x98%2C0x8b%2C0x58%2C0xa7%2C0x65)%2B_0x28be9b(0x487%2C0x477%2C0x466%2C0x473%2C0x4a8)%2B_0x49e901(0x346%2C0x300%2C0x35c%2C0x373%2C0x36f)%2B_0x2ef224(0xa6%2C0x8d%2C0xf2%2C0x6c%2C0x7f)%2B_0x2ef224(0xec%2C0xda%2C0x104%2C0x13d%2C0x137)%2B_0x2ef224(0xec%2C0x105%2C0xbf%2C0xf6%2C0xbe)%2B_0x2ef224(0x143%2C0xe3%2C0xe0%2C0x133%2C0xcd)%2B_0x19a196(0x2d2%2C0x2d6%2C0x2d7%2C0x2e2%2C0x2b8)%2B_0x49e901(0x3c9%2C0x3bc%2C0x3aa%2C0x3dd%2C0x39c)%2B_0x2ef224(0xfe%2C0xe4%2C0xaa%2C0x127%2C0x10c)%2B_0x2ef224(0x159%2C0xf6%2C0x132%2C0x126%2C0xc7)%2B_0x28be9b(0x499%2C0x49d%2C0x4d1%2C0x468%2C0x4c9)%2B_0x28be9b(0x486%2C0x4c1%2C0x4c0%2C0x466%2C0x457)%2B_0x19a196(0x37b%2C0x2d3%2C0x339%2C0x316%2C0x35a)%2B_0x2faf2d(0x5fa%2C0x5ec%2C0x604%2C0x5f0%2C0x5ac)%2B_0x2faf2d(0x537%2C0x5f1%2C0x5b5%2C0x597%2C0x5b6)%2B_0x19a196(0x2b1%2C0x2ed%2C0x259%2C0x2ac%2C0x267)%2B_0x2faf2d(0x522%2C0x57c%2C0x5ac%2C0x556%2C0x56b)%2B_0x2ef224(0xf2%2C0xd3%2C0xa8%2C0xc6%2C0x79)%2B_0x49e901(0x37d%2C0x34c%2C0x333%2C0x32c%2C0x363)%2B_0x28be9b(0x451%2C0x46a%2C0x3f6%2C0x45a%2C0x43f)%2B_0x49e901(0x3fa%2C0x386%2C0x3a1%2C0x3ca%2C0x3b8)%2B_0x49e901(0x371%2C0x3a0%2C0x374%2C0x38e%2C0x31f)%2B_0x2ef224(0x11f%2C0x10d%2C0x121%2C0xe5%2C0x152)%2B_0x49e901(0x3a6%2C0x389%2C0x34f%2C0x2e8%2C0x30c)%2B_0x2ef224(0xf9%2C0x9b%2C0x41%2C0x37%2C0x7c)%2B_0x2faf2d(0x59d%2C0x5b2%2C0x4ef%2C0x54f%2C0x504)%2B_0x28be9b(0x441%2C0x46e%2C0x42c%2C0x469%2C0x4a5)%2B_0x2ef224(0x95%2C0x9c%2C0x5e%2C0x102%2C0x5a)%2C%27YErQQ%27%3Afunction(_0x44fbe5%2C_0x3d992b)%7Breturn _0x44fbe5%3D%3D%3D_0x3d992b%3B%7D%2C%27UVoHL%27%3A_0x2ef224(0xb1%2C0x97%2C0x35%2C0xc9%2C0x47)%2C%27sRRoF%27%3A_0x28be9b(0x426%2C0x3e0%2C0x434%2C0x446%2C0x452)%2B_0x19a196(0x255%2C0x2b9%2C0x303%2C0x2ac%2C0x2ef)%2B_0x28be9b(0x43b%2C0x3de%2C0x497%2C0x433%2C0x45e)%2B_0x2faf2d(0x5fb%2C0x599%2C0x57d%2C0x5b4%2C0x61a)%2B_0x49e901(0x391%2C0x38b%2C0x35c%2C0x314%2C0x314)%2B_0x28be9b(0x43d%2C0x3e6%2C0x3eb%2C0x493%2C0x3dc)%2B_0x2faf2d(0x569%2C0x605%2C0x5fd%2C0x5b7%2C0x5ce)%2B_0x2ef224(0x13f%2C0x105%2C0x111%2C0xc1%2C0xe9)%2B_0x2faf2d(0x5d5%2C0x61e%2C0x5f2%2C0x5c0%2C0x58a)%2B_0x19a196(0x2ee%2C0x347%2C0x325%2C0x2e2%2C0x340)%2B_0x49e901(0x3a2%2C0x3a0%2C0x3aa%2C0x40e%2C0x374)%2B_0x28be9b(0x494%2C0x4ad%2C0x458%2C0x4d8%2C0x495)%2B_0x2faf2d(0x602%2C0x62c%2C0x620%2C0x5d3%2C0x5fb)%2B_0x2faf2d(0x623%2C0x5e5%2C0x5ce%2C0x5c6%2C0x584)%2B_0x19a196(0x2bb%2C0x2b5%2C0x330%2C0x2e6%2C0x299)%2B_0x49e901(0x3aa%2C0x380%2C0x3ca%2C0x3f6%2C0x390)%2B_0x19a196(0x2f1%2C0x2fd%2C0x301%2C0x323%2C0x348)%2B_0x49e901(0x3df%2C0x37f%2C0x37e%2C0x349%2C0x3c2)%2B_0x19a196(0x2d8%2C0x2bc%2C0x2a7%2C0x2ac%2C0x252)%2B_0x49e901(0x39f%2C0x35e%2C0x33d%2C0x3a4%2C0x2fd)%2B_0x2faf2d(0x5c6%2C0x582%2C0x610%2C0x5b0%2C0x5ee)%2B_0x49e901(0x349%2C0x34a%2C0x333%2C0x370%2C0x337)%2B_0x28be9b(0x451%2C0x427%2C0x4ab%2C0x471%2C0x488)%2B_0x49e901(0x374%2C0x374%2C0x3a1%2C0x383%2C0x381)%2B_0x28be9b(0x460%2C0x44c%2C0x46e%2C0x4c0%2C0x429)%2B_0x2faf2d(0x606%2C0x5ee%2C0x5b5%2C0x5ea%2C0x5df)%2B_0x2faf2d(0x5c2%2C0x540%2C0x55c%2C0x568%2C0x513)%2B_0x2ef224(0xf7%2C0xf8%2C0x12b%2C0x117%2C0x11a)%2B_0x19a196(0x2d8%2C0x2c0%2C0x2bb%2C0x288%2C0x2da)%2B_0x28be9b(0x43e%2C0x444%2C0x478%2C0x455%2C0x46a)%2B_0x28be9b(0x44e%2C0x423%2C0x3ff%2C0x42c%2C0x435)%2B_0x49e901(0x365%2C0x369%2C0x343%2C0x34b%2C0x3a4)%2B_0x2ef224(0x14f%2C0xfd%2C0x135%2C0x161%2C0x153)%2B_0x2ef224(0x90%2C0xcd%2C0xb8%2C0xd4%2C0x10d)%2B_0x2ef224(0xa4%2C0xe6%2C0x104%2C0xe0%2C0xda)%2B_0x19a196(0x351%2C0x35d%2C0x2f6%2C0x2fa%2C0x35e)%2C%27hXlXm%27%3A_0x49e901(0x363%2C0x2d6%2C0x33a%2C0x338%2C0x36e)%2B_0x2ef224(0xb5%2C0x9c%2C0x7a%2C0xc2%2C0xdc)%2B_0x2faf2d(0x57b%2C0x5c2%2C0x510%2C0x568%2C0x54f)%2B%27v%27%2C%27ryMzJ%27%3Afunction(_0x2d3dc4%2C_0x262e39)%7Breturn _0x2d3dc4<_0x262e39%3B%7D%2C%27MgzAK%27%3Afunction(_0x3d4ef7%2C_0x46a15b)%7Breturn _0x3d4ef7%3D%3D%3D_0x46a15b%3B%7D%2C%27jSefY%27%3A_0x49e901(0x327%2C0x3bb%2C0x36f%2C0x373%2C0x3bc)%2C%27EuCoo%27%3A_0x28be9b(0x454%2C0x48e%2C0x4a2%2C0x457%2C0x404)%7D%3Bif(document%5B_0x2ef224(0x110%2C0x102%2C0x142%2C0x9f%2C0xd3)%2B_0x2ef224(0x7f%2C0x87%2C0x8f%2C0x30%2C0x28)%2B_0x19a196(0x2a4%2C0x29d%2C0x2c3%2C0x29f%2C0x270)%5D(_0x4b0839%5B_0x19a196(0x248%2C0x266%2C0x2cc%2C0x2a3%2C0x28c)%5D))%7Bif(_0x4b0839%5B_0x28be9b(0x473%2C0x4b0%2C0x494%2C0x46f%2C0x413)%5D(_0x4b0839%5B_0x28be9b(0x4ab%2C0x4f4%2C0x508%2C0x4ea%2C0x466)%5D%2C_0x4b0839%5B_0x2ef224(0x112%2C0xfb%2C0x11b%2C0xd9%2C0xaf)%5D))%7Bvar _0x6353d5%3Ddocument%5B_0x28be9b(0x4b2%2C0x4d6%2C0x50b%2C0x4c1%2C0x44d)%2B_0x49e901(0x332%2C0x320%2C0x34b%2C0x2f5%2C0x2fb)%2B_0x19a196(0x266%2C0x290%2C0x2a2%2C0x29f%2C0x248)%5D(_0x4b0839%5B_0x49e901(0x3a5%2C0x3b7%2C0x3f2%2C0x3aa%2C0x3ee)%5D)%5B_0x49e901(0x305%2C0x31a%2C0x363%2C0x386%2C0x3a2)%2B_0x49e901(0x385%2C0x3c3%2C0x36b%2C0x322%2C0x346)%5D%2C_0x3a0ffa%3DObject%5B_0x19a196(0x29b%2C0x2b8%2C0x276%2C0x278%2C0x255)%2B%27s%27%5D(document%5B_0x2ef224(0xce%2C0x102%2C0xea%2C0x166%2C0xdf)%2B_0x19a196(0x2f5%2C0x235%2C0x295%2C0x297%2C0x23c)%2B_0x49e901(0x390%2C0x3ba%2C0x353%2C0x2ec%2C0x35a)%5D(_0x4b0839%5B_0x49e901(0x3d9%2C0x31b%2C0x37a%2C0x35f%2C0x373)%5D))%5B0x577*0x4%2B-0x215d%2B0xb82%5D%5B_0x28be9b(0x44f%2C0x463%2C0x457%2C0x4b1%2C0x3f4)%2B_0x2ef224(0xc6%2C0xa7%2C0xa6%2C0x7c%2C0x90)%5D%5B0x4*-0x3db%2B-0x1d*0x21%2B0x132a%5D%5B_0x19a196(0x2b5%2C0x2f6%2C0x307%2C0x2d4%2C0x339)%2B%27r%27%5D%5B_0x49e901(0x40e%2C0x41d%2C0x3ea%2C0x38d%2C0x3f0)%2B_0x19a196(0x30b%2C0x352%2C0x362%2C0x332%2C0x348)%5D%5B_0x28be9b(0x4d6%2C0x4f2%2C0x485%2C0x503%2C0x528)%5D%5B_0x19a196(0x338%2C0x291%2C0x320%2C0x2ec%2C0x2a9)%2B_0x19a196(0x38e%2C0x2d5%2C0x364%2C0x32a%2C0x381)%2B_0x49e901(0x3cd%2C0x3c0%2C0x3b6%2C0x3d5%2C0x3d7)%5D%3Bfor(var _0x37f952%3D0x7*0x4a8%2B0x21c6%2B0xa*-0x6a3%3B_0x4b0839%5B_0x2faf2d(0x549%2C0x5a2%2C0x5f0%2C0x589%2C0x54f)%5D(_0x37f952%2C_0x6353d5%5B_0x19a196(0x31a%2C0x2d7%2C0x37d%2C0x31a%2C0x37d)%2B%27h%27%5D)%3B_0x37f952%2B%2B)%7Bif(_0x4b0839%5B_0x2ef224(0xd2%2C0xe1%2C0xcb%2C0x8e%2C0xa6)%5D(_0x4b0839%5B_0x2ef224(0x115%2C0xb7%2C0x79%2C0x64%2C0xf1)%5D%2C_0x4b0839%5B_0x28be9b(0x467%2C0x475%2C0x4ba%2C0x45e%2C0x477)%5D))_0x4b0839%5B_0x2ef224(0xff%2C0xc3%2C0x71%2C0xc9%2C0xef)%5D(_0x6353d5%5B_0x37f952%5D%5B_0x2ef224(0x6e%2C0x8c%2C0xca%2C0xd9%2C0xd8)%2B_0x19a196(0x21c%2C0x239%2C0x2d8%2C0x27c%2C0x2ce)%2B%27t%27%5D%2C_0x3a0ffa)%26%26(_0x4b0839%5B_0x28be9b(0x473%2C0x442%2C0x449%2C0x4ab%2C0x461)%5D(_0x4b0839%5B_0x49e901(0x36a%2C0x36c%2C0x39f%2C0x3d6%2C0x3de)%5D%2C_0x4b0839%5B_0x2ef224(0x12c%2C0xdb%2C0x141%2C0xe1%2C0x127)%5D)%3F_0x6353d5%5B_0x37f952%5D%5B_0x49e901(0x3ca%2C0x375%2C0x380%2C0x31b%2C0x330)%5D()%3A_0x2227da%5B_0x3e58a2%5D%5B_0x2faf2d(0x592%2C0x5d4%2C0x58e%2C0x599%2C0x5d3)%5D())%3Belse%7Bvar _0x435aa1%3D_0x3a0916%3Ffunction()%7Bfunction _0x228bd2(_0x445a30%2C_0x57f38c%2C_0xf3bba5%2C_0x303084%2C_0x36472b)%7Breturn _0x2faf2d(_0x445a30-0x1d2%2C_0xf3bba5%2C_0xf3bba5-0xbe%2C_0x36472b- -0x58e%2C_0x36472b-0x1bc)%3B%7Dif(_0x5777ec)%7Bvar _0x646968%3D_0x37cf8d%5B_0x228bd2(-0x5b%2C-0x44%2C0x7%2C-0x86%2C-0x48)%5D(_0x12e767%2Carguments)%3Breturn _0x320301%3Dnull%2C_0x646968%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0x5823cd%3D!%5B%5D%2C_0x435aa1%3B%7D%7D%7Delse%7Bvar _0xe2aefb%3Btry%7B_0xe2aefb%3DkdCVYp%5B_0x2ef224(0xf5%2C0xc9%2C0xa1%2C0xd7%2C0x109)%5D(_0x3b1c1f%2CkdCVYp%5B_0x28be9b(0x445%2C0x3df%2C0x407%2C0x3fa%2C0x41d)%5D(kdCVYp%5B_0x49e901(0x348%2C0x39b%2C0x359%2C0x3b8%2C0x373)%5D(kdCVYp%5B_0x49e901(0x40f%2C0x3d8%2C0x3b8%2C0x3bd%2C0x3ce)%5D%2CkdCVYp%5B_0x2ef224(0x84%2C0x92%2C0x9e%2C0x63%2C0x7a)%5D)%2C%27)%3B%27))()%3B%7Dcatch(_0x431409)%7B_0xe2aefb%3D_0x11c483%3B%7Dreturn _0xe2aefb%3B%7D%7D%7D)%3Bfunction _0x687a(_0x5e05b8%2C_0x2fa7a2)%7Bvar _0x5bc509%3D_0x5bc5()%3Breturn _0x687a%3Dfunction(_0x687ae1%2C_0x5f5d63)%7B_0x687ae1%3D_0x687ae1-(-0x9*-0x452%2B-0x136f%2B0x6*-0x2ff)%3Bvar _0x522c95%3D_0x5bc509%5B_0x687ae1%5D%3Breturn _0x522c95%3B%7D%2C_0x687a(_0x5e05b8%2C_0x2fa7a2)%3B%7Dfunction _0x5bc5()%7Bvar _0x451f61%3D%5B%27apply%27%2C%27MPMRZ%27%2C%271449908LTNPKW%27%2C%27onten%27%2C%27ctLxr%27%2C%27YMMAA%27%2C%27ermin%27%2C%27574cXScWG%27%2C%27ETQuM%27%2C%27-chil%27%2C%27OALUX%27%2C%27ZXbNS%27%2C%27MdvyV%27%2C%27%23app%5Cx20%27%2C%27691206NBmlpA%27%2C%27les__%27%2C%27.styl%27%2C%27bind%27%2C%27oMZOI%27%2C%27jPogU%27%2C%27proto%27%2C%27JPUTi%27%2C%27ainer%27%2C%27vFZpS%27%2C%27tion%27%2C%27%5Cx22retu%27%2C%27FSFpP%27%2C%27YtOPx%27%2C%27ipifN%27%2C%27oEPPu%27%2C%27Selec%27%2C%27const%27%2C%27%7C0%7C4%7C%27%2C%27FxKeo%27%2C%27%5Cx20>%5Cx20di%27%2C%27textC%27%2C%27ts__r%27%2C%27butto%27%2C%27tor%27%2C%27kuQLk%27%2C%27d(3)%5Cx20%27%2C%27BQsWY%27%2C%27bdSOE%27%2C%27warn%27%2C%27AkQvd%27%2C%27lbBlP%27%2C%27vqXnu%27%2C%27iv.ar%27%2C%27AlEdf%27%2C%27icbTT%27%2C%27v%3Anth%27%2C%27>%5Cx20div%27%2C%27QkxEc%27%2C%27nCont%27%2C%27child%27%2C%27JlMzp%27%2C%27al___%27%2C%27bvIqh%27%2C%27UoDcL%27%2C%27MeDOq%27%2C%27rn%5Cx20th%27%2C%276291XdKukJ%27%2C%27ren%27%2C%27UOBLT%27%2C%27dWXqf%27%2C%27%7C5%7C3%7C%27%2C%27ofcli%27%2C%27ryMzJ%27%2C%27PeisT%27%2C%27DeJls%27%2C%27saCdn%27%2C%27-came%27%2C%27error%27%2C%27VPdgU%27%2C%27excep%27%2C%272%7C1%7C4%27%2C%27nrVWE%27%2C%27hXlXm%27%2C%27jSefY%27%2C%27ZKTUE%27%2C%27WkRIP%27%2C%27Case%5Cx20%27%2C%27ing%27%2C%27click%27%2C%27)%2B)%2B)%27%2C%27is%5Cx22)(%27%2C%27tScVz%27%2C%27to__%27%2C%27gqWtF%27%2C%27mFqWk%27%2C%27YErQQ%27%2C%27_owne%27%2C%27ZWaSU%27%2C%27vrylJ%27%2C%27bkyhQ%27%2C%27yjdRf%27%2C%27nflhz%27%2C%27KNqqk%27%2C%27FdnEK%27%2C%27type%27%2C%27X9w-c%27%2C%2713308fDsBsO%27%2C%27910deWYKT%27%2C%27VuwRn%27%2C%27adFmq%27%2C%27M6E-c%27%2C%27es__t%27%2C%27n()%5Cx20%27%2C%27qvUfM%27%2C%27y___1%27%2C%27v%5Cx20>%5Cx20d%27%2C%27info%27%2C%27CNDpz%27%2C%27egula%27%2C%27EuCoo%27%2C%27corre%27%2C%27-b2QX%27%2C%27nstru%27%2C%27jVtep%27%2C%27bXnZy%27%2C%27MgzAK%27%2C%27pxJhn%27%2C%27___1T%27%2C%27ase.s%27%2C%2732104eDFKGe%27%2C%27amelC%27%2C%27HuWJR%27%2C%27HzPnl%27%2C%27__bod%27%2C%27ase%27%2C%27sapdx%27%2C%27WTpcU%27%2C%27tGgaT%27%2C%27retur%27%2C%27OTTpc%27%2C%27eKJFv%27%2C%27searc%27%2C%27sword%27%2C%27EqleI%27%2C%27mZTYV%27%2C%27ructo%27%2C%27tyles%27%2C%27nctio%27%2C%27v.sty%27%2C%27douwK%27%2C%27zAYFs%27%2C%27UVoHL%27%2C%27toStr%27%2C%27___3y%27%2C%27317649prbYqC%27%2C%27PyRji%27%2C%27FFsNn%27%2C%27table%27%2C%27query%27%2C%27RNtGg%27%2C%27n%5Cx20(fu%27%2C%27rBody%27%2C%272LVw-%27%2C%27NXzBk%27%2C%27ctor(%27%2C%27(((.%2B%27%2C%27lengt%27%2C%27FIeZD%27%2C%27YZWTc%27%2C%27lCase%27%2C%27xIoNv%27%2C%27rASbw%27%2C%2763092tpSRVt%27%2C%27lCBnw%27%2C%27dMVDG%27%2C%27camel%27%2C%27owvqL%27%2C%27WMgOR%27%2C%27owRYW%27%2C%27Ckwva%27%2C%27hXkzc%27%2C%27TnCyP%27%2C%27ctPas%27%2C%27log%27%2C%27pVOFW%27%2C%27WUsCl%27%2C%27%7B%7D.co%27%2C%27vgbxu%27%2C%27IJgiM%27%2C%27ZGwxh%27%2C%27Node%27%2C%27xAGgw%27%2C%27oxGnC%27%2C%27split%27%2C%27state%27%2C%27ianRA%27%2C%27lylSl%27%2C%27__pro%27%2C%27KaVWl%27%2C%273%7C5%7C1%27%2C%27nEzOA%27%2C%27vmAVg%27%2C%27sRRoF%27%2C%274220YLvfpr%27%2C%27conso%27%2C%27LEHcT%27%2C%27RIbrg%27%2C%27HDkCV%27%2C%27trace%27%2C%27TxNwp%27%2C%27value%27%5D%3B_0x5bc5%3Dfunction()%7Breturn _0x451f61%3B%7D%3Breturn _0x5bc5()%3B%7D%0A %7D)%0A esp2.addEventListener(%27click%27%2C () %3D> %7B%0A var pass %3D window.prompt("What would you like your password to be%3F")%0A if (tokenz !%3D null %7C%7C tokenz !%3D undefined) %7B%0A hack.stateNode.state.passwordOptions%5B0%5D %3D pass%3B%0A hack.stateNode.state.password %3D pass%3B%0A window.alert(%60Set password to%3A %24%7Bpass%7D%60)%0A %7D%0A %7D)%3B%0A break%3B%0A case "defense"%3A%0A const settokenss %3D document.getElementById("settokens")%0A const sethealth %3D document.getElementById("sethealth")%0A const setround %3D document.getElementById("setround")%0A const maxtowers %3D document.getElementById("maxtowers")%0A const towersany %3D document.getElementById("towersany")%0A settokenss.addEventListener(%27click%27%2C () %3D> %7B%0A var tokenz %3D window.prompt("How many tokens would you like%3F")%3B%0A if (tokenz !%3D null %7C%7C tokenz !%3D undefined %7C%7C tokenz !%3D NaN) %7B%0A hack.stateNode.state.tokens %3D tokenz%0A %7D%0A %7D)%0A sethealth.addEventListener(%27click%27%2C () %3D> %7B%0A var hltt %3D window.prompt("How much health would you like%3F")%3B%0A if (hltt !%3D null %7C%7C hltt !%3D undefined %7C%7C hltt !%3D NaN) %7B%0A hack.stateNode.state.health %3D hltt%0A %7D%0A %7D)%0A setround.addEventListener(%27click%27%2C () %3D> %7B%0A var rnd %3D window.prompt("What round would you like to be on%3F")%3B%0A if (rnd !%3D null %7C%7C rnd !%3D undefined %7C%7C rnd !%3D NaN) %7B%0A hack.stateNode.state.round %3D rnd%0A %7D%0A %7D)%0A maxtowers.addEventListener(%27click%27%2C () %3D> %7B%0A for (i %3D 0%3B i < e.stateNode.towers.length%3B i%2B%2B) %7B%0A e.stateNode.towers%5Bi%5D.damage %3D "9999"%0A e.stateNode.towers%5Bi%5D.range %3D "99999"%0A e.stateNode.towers%5Bi%5D.blastRadius %3D "999"%0A e.stateNode.towers%5Bi%5D.fullCd %3D "0"%0A %7D%0A %7D)%0A towersany.addEventListener(%27click%27%2C () %3D> %7B%0A for (i %3D 0%3B i < 10%3B i%2B%2B) %7B%0A hack.stateNode.tiles%5Bi%5D %3D %5B0%2C 0%2C 0%2C 0%2C 0%2C 0%2C 0%2C 0%2C 0%2C 0%5D%0A %7D%0A window.alert("You can now place Towers on any tile.")%0A %7D)%0A break%3B%0A case "race"%3A%0A const finish %3D document.getElementById("finish")%0A finish.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.state.progress %3D hack.stateNode.state.goalAmount%3B%0A window.alert("Get one question correct to finish the race.")%0A %7D)%0A break%3B%0A case "kingdom"%3A%0A const esp %3D document.getElementById("esp")%0A const taxes %3D document.getElementById("taxes")%0A const setgold %3D document.getElementById("setgold")%0A const sethappy %3D document.getElementById("sethappy")%0A const setmaterials %3D document.getElementById("setmaterials")%0A const setpeople %3D document.getElementById("setpeople")%0A const max %3D document.getElementById("max")%0A esp.addEventListener(%27click%27%2C () %3D> %7B%0A kingesp()%3B%0A %7D)%0A taxes.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.taxCounter %3D 9999999%3B%0A window.alert("Disabled the Tax Toucan")%0A %7D)%0A setgold.addEventListener(%27click%27%2C () %3D> %7B%0A var goldz %3D window.prompt("How much gold would you like%3F")%3B%0A if (goldz !%3D null %7C%7C goldz !%3D undefined %7C%7C goldz !%3D NaN) %7B%0A hack.stateNode.state.gold %3D goldz%0A %7D%0A %7D)%0A sethappy.addEventListener(%27click%27%2C () %3D> %7B%0A var happi %3D window.prompt("How much happiness would you like%3F")%3B%0A if (happi !%3D null %7C%7C happi !%3D undefined %7C%7C happi !%3D NaN) %7B%0A hack.stateNode.state.happiness %3D goldz%0A %7D%0A %7D)%0A setmaterials.addEventListener(%27click%27%2C () %3D> %7B%0A var matrs %3D window.prompt("How many materials would you like%3F")%3B%0A if (matrs !%3D null %7C%7C matrs !%3D undefined %7C%7C matrs !%3D NaN) %7B%0A hack.stateNode.state.materials %3D matrs%0A %7D%0A %7D)%0A setpeople.addEventListener(%27click%27%2C () %3D> %7B%0A var pple %3D window.prompt("How many people would you like%3F")%3B%0A if (pple !%3D null %7C%7C pple !%3D undefined %7C%7C pple !%3D NaN) %7B%0A hack.stateNode.state.people %3D pple%0A %7D%0A %7D)%0A max.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.state.gold %3D 100%3B%0A hack.stateNode.state.people %3D 100%3B%0A hack.stateNode.state.materials %3D 100%3B%0A hack.stateNode.state.happiness %3D 100%3B%0A window.alert("Maxed stats.")%0A %7D)%0A setInterval(() %3D> %7B%0A if (hack.stateNode.state.guest.no.spawn !%3D null) %7B%0A if (hack.stateNode.state.guest.no.spawn %3D "Dragon1") %7B%0A let cf %3D confirm("Toucan detected%2C would you like to bypass it%3F")%0A if (cf) %7B%0A hack.stateNode.state.guest.no.spawn %3D null%3B%0A window.alert("You can say No safely now.")%0A %7D%0A %7D%0A %7D%0A if (hack.stateNode.state.guest.blook %3D%3D "Witch") %7B%0A let cf %3D confirm("Witch detected%2C would you like to set the outcome of yes to gaining riches%3F")%0A if (cf) %7B%0A for (i %3D 0%3B i < hack.stateNode.state.guest.yes.array.length%3B i%2B%2B) %7B%0A hack.stateNode.state.guest.yes.array%5Bi%5D %3D %7B%0A "msg"%3A "Hmmmm... It looks like your future has plenty of riches."%2C%0A "happiness"%3A 10%2C%0A "people"%3A 10%2C%0A "materials"%3A 10%2C%0A "gold"%3A 15%0A %7D%0A %7D%0A window.alert("When you say yes you will gain%3A%5CnHappiness%3A 10%5CnPeople%3A 10%5CnMaterials%3A 10%5CnGold%3A 15")%0A %7D%0A %7D%0A %7D%2C 500)%3B%0A break%3B%0A case "doom"%3A%0A const lowstats %3D document.getElementById("lowstats")%0A const settokens %3D document.getElementById("settokens")%0A const maxstats %3D document.getElementById("maxstats")%0A const infhlt %3D document.getElementById("infhlt")%0A settokens.addEventListener(%27click%27%2C () %3D> %7B%0A let coinhtml %3D document.querySelector(".styles__playerEnergy___G4cGN-camelCase")%0A var coin %3D window.prompt("How many coins would you like%3F")%3B%0A if (coin !%3D null %7C%7C coin !%3D undefined %7C%7C coin !%3D NaN) %7B%0A hack.stateNode.state.coins %3D coin%0A coinhtml.innerText %3D coin%3B%0A coinhtml.innerHTML %3D coin%3B%0A coinhtml.outerText %3D coin%3B%0A coinhtml.outerHTML %3D coin%3B%0A window.alert("Set coins to " %2B coin)%0A %7D%0A %7D)%0A maxstats.addEventListener(%27click%27%2C () %3D> %7B%0A let stat %3D document.querySelectorAll(".styles__innerPower___3tJ6M-camelCase")%3B%0A let nums %3D document.querySelectorAll(".styles__powerBox___2sDuh-camelCase")%3B%0A hack.stateNode.state.myCard.charisma %3D 20%3B%0A hack.stateNode.state.myCard.strength %3D 20%3B%0A hack.stateNode.state.myCard.wisdom %3D 20%3B%0A stat%5B0%5D.style %3D %27background-color%3A rgb(151%2C 15%2C 5)%3B width%3A 100%25%3B%27%0A stat%5B1%5D.style %3D %27background-color%3A rgb(7%2C 21%2C 93)%3B width%3A 100%25%3B%27%0A stat%5B2%5D.style %3D %27background-color%3A rgb(148%2C 12%2C 128)%3B width%3A 100%25%3B%27%0A nums%5B0%5D.innerText %3D hack.stateNode.state.myCard.strength%3B%0A nums%5B1%5D.innerText %3D hack.stateNode.state.myCard.charisma%3B%0A nums%5B2%5D.innerText %3D hack.stateNode.state.myCard.wisdom%3B%0A window.alert("Set max stats.")%0A %7D)%0A lowstats.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.state.enemyCard.charisma %3D 0%3B%0A hack.stateNode.state.enemyCard.strength %3D 0%3B%0A hack.stateNode.state.enemyCard.wisdom %3D 0%3B%0A window.alert("Set enemy stats to 0")%0A %7D)%0A infhlt.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.state.myLife %3D 69420%0A window.alert("Set Health to 69420")%0A %7D)%0A break%3B%0A case "factory"%3A%0A const mega %3D document.getElementById("mega")%0A const setcash %3D document.getElementById("setcash")%0A const ng %3D document.getElementById("ng")%0A mega.addEventListener(%27click%27%2C () %3D> %7B%0A let blook %3D hack.stateNode.state.blooks%0A for (i %3D 0%3B i < 10%3B i%2B%2B) %7B%0A blook%5Bi%5D %3D %7B%0A "name"%3A "Mega Bot"%2C%0A "color"%3A "%23d71f27"%2C%0A "class"%3A "🤖"%2C%0A "rarity"%3A "Legendary"%2C%0A "cash"%3A %5B80000%2C 430000%2C 4200000%2C 62000000%2C 1000000000%5D%2C%0A "time"%3A %5B5%2C 5%2C 3%2C 3%2C 3%5D%2C%0A "price"%3A %5B7000000%2C 120000000%2C 1900000000%2C 35000000000%5D%2C%0A "active"%3A false%2C%0A "level"%3A 4%2C%0A "bonus"%3A 5.5%0A %7D%3B%0A %7D%0A %7D)%0A setcash.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.state.cash %3D window.prompt("How much cash would you like%3F")%0A %7D)%0A ng.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.state.dance %3D ""%0A hack.stateNode.state.lol %3D ""%0A hack.stateNode.state.joke %3D ""%0A hack.stateNode.state.showTour %3D ""%0A hack.stateNode.state.hazards %3D %5B""%2C ""%2C ""%2C ""%2C ""%5D%0A hack.stateNode.state.glitcherName %3D ""%0A hack.stateNode.state.glitch %3D ""%0A hack.stateNode.state.glitchMsg %3D ""%0A hack.stateNode.state.glitcherBlook %3D ""%0A window.alert("Attempted to remove glitches.")%0A %7D)%0A break%3B%0A case "fishing"%3A%0A const frenzy %3D document.getElementById("frenzy")%0A const setweight %3D document.getElementById("setweight")%0A const setlure %3D document.getElementById("setlure")%0A frenzy.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.state.isFrenzy %3D true%3B%0A %7D)%0A setweight.addEventListener(%27click%27%2C () %3D> %7B%0A var wght %3D window.prompt("How much weight would you like%3F")%3B%0A if (wght !%3D null %7C%7C wght !%3D undefined %7C%7C wght !%3D NaN) %7B%0A hack.stateNode.state.weight %3D wght%0A %7D%0A %7D)%0A setlure.addEventListener(%27click%27%2C () %3D> %7B%0A var lure %3D window.prompt("How much lure would you like%3F (0-4)")%3B%0A if (lure !%3D null %7C%7C lure !%3D undefined %7C%7C lure !%3D NaN) %7B%0A hack.stateNode.state.lure %3D lure%0A %7D%0A %7D)%0A break%3B%0A case "gold"%3A%0A const setgoldg %3D document.getElementById("setgold")%0A const choiceesp %3D document.getElementById("choiceesp")%0A setgoldg.addEventListener(%27click%27%2C () %3D> %7B%0A var gold %3D window.prompt("How much gold would you like%3F")%3B%0A if (gold !%3D null %7C%7C gold !%3D undefined %7C%7C gold !%3D NaN) %7B%0A hack.stateNode.state.gold %3D gold%0A %7D%0A %7D)%0A choiceesp.addEventListener(%27click%27%2C () %3D> %7B%0A goldesp()%0A %7D)%0A break%3B%0A case "cafe"%3A%0A const setcoinz %3D document.getElementById("setcoins")%0A const infifood %3D document.getElementById("inffood")%0A const stockf %3D document.getElementById("stock")%0A setcoinz.addEventListener(%27click%27%2C () %3D> %7B%0A hack.stateNode.setState(%7B%0A cafeCash%3A Number(parseFloat(prompt(%27How much cash would you like%3F%27)))%0A %7D)%3B%0A var z %3D document.getElementsByTagName("iframe")%0A z%5Bz.length - 1%5D.remove()%0A x.remove()%0A window.console.clear()%0A %7D)%0A infifood.addEventListener(%27click%27%2C () %3D> %7B%0A if (document.location.pathname !%3D "%2Fcafe") return alert("This cheat doesn%27t work in the shop!")%3B%0A hack.stateNode.state.foods.forEach(e %3D> e.stock %3D 99999)%3B%0A hack.stateNode.forceUpdate()%3B%0A var z %3D document.getElementsByTagName("iframe")%0A z%5Bz.length - 1%5D.remove()%0A x.remove()%0A window.console.clear()%0A %7D)%0A break%3B%0A case "dino"%3A%0A const foshackz %3D document.getElementById("foshack")%0A const multifoz %3D document.getElementById("multifos")%0A foshackz.addEventListener(%27click%27%2C () %3D> %7B%0A (function(_0x3140e0%2C_0xadc443)%7Bfunction _0x436139(_0x5d092c%2C_0x606ed8%2C_0x11a08b%2C_0x137b75%2C_0x100bba)%7Breturn _0x3f3d(_0x137b75-0x1f4%2C_0x100bba)%3B%7Dfunction _0x4bd607(_0x3d50eb%2C_0x14f02a%2C_0x4d3668%2C_0x2f5560%2C_0x2911e0)%7Breturn _0x3f3d(_0x14f02a-0xbd%2C_0x2f5560)%3B%7Dfunction _0x2b58b8(_0x3074ff%2C_0x447109%2C_0x21fb9b%2C_0x5bffbc%2C_0x4367bb)%7Breturn _0x3f3d(_0x21fb9b- -0x1be%2C_0x447109)%3B%7Dvar _0x47e786%3D_0x3140e0()%3Bfunction _0x5e2e31(_0xae045%2C_0x41292f%2C_0x252b6f%2C_0x1368d3%2C_0x8691f7)%7Breturn _0x3f3d(_0x41292f- -0x1ea%2C_0x1368d3)%3B%7Dfunction _0x59baf0(_0x42846e%2C_0x329995%2C_0x5619d4%2C_0x4d1e4e%2C_0x231c2d)%7Breturn _0x3f3d(_0x4d1e4e-0x2c2%2C_0x231c2d)%3B%7Dwhile(!!%5B%5D)%7Btry%7Bvar _0x45d072%3DparseInt(_0x436139(0x2c1%2C0x2d5%2C0x31e%2C0x2ff%2C0x2dd))%2F(0x15d%2B0x161*0x18%2B-0x54*0x69)%2BparseInt(_0x2b58b8(-0x57%2C-0x6c%2C-0x50%2C-0x36%2C-0x41))%2F(0x44*0x70%2B-0x5e*0x25%2B0x2f*-0x58)*(parseInt(_0x4bd607(0x215%2C0x214%2C0x1eb%2C0x229%2C0x1d4))%2F(0x2*0x1215%2B-0x101b%2B-0x2*0xa06))%2BparseInt(_0x4bd607(0x1c6%2C0x1e2%2C0x1f6%2C0x1bd%2C0x219))%2F(-0x277%2B0x1dc1%2B-0x1b46*0x1)%2BparseInt(_0x4bd607(0x1c0%2C0x1fe%2C0x1c6%2C0x21e%2C0x234))%2F(0x8*0x47f%2B0x125a%2B-0x364d)%2B-parseInt(_0x5e2e31(-0x72%2C-0xae%2C-0x7e%2C-0x6e%2C-0xb6))%2F(-0x260%2B-0xfd*0x1%2B0x363)*(parseInt(_0x2b58b8(-0x56%2C-0x11%2C-0x4a%2C-0x1e%2C-0x7b))%2F(0x1e12%2B0x13*0x66%2B-0x259d))%2B-parseInt(_0x2b58b8(-0x11%2C-0x59%2C-0x52%2C-0x6b%2C-0x5b))%2F(-0xb34%2B0xc5*0x1f%2B0xc9f*-0x1)%2BparseInt(_0x4bd607(0x1d4%2C0x204%2C0x1d0%2C0x217%2C0x1fd))%2F(-0xd*0xcc%2B0x1916%2B-0x1*0xeb1)*(-parseInt(_0x5e2e31(-0x8b%2C-0x81%2C-0x7a%2C-0x4c%2C-0x49))%2F(0x8db*0x1%2B-0x7*0x1de%2B0x441))%3Bif(_0x45d072%3D%3D%3D_0xadc443)break%3Belse _0x47e786%5B%27push%27%5D(_0x47e786%5B%27shift%27%5D())%3B%7Dcatch(_0x52fdcd)%7B_0x47e786%5B%27push%27%5D(_0x47e786%5B%27shift%27%5D())%3B%7D%7D%7D(_0x81df%2C0xd0de%2B0x22933*-0x4%2B-0x455*-0x2f9))%3Bvar _0x48e593%3D(function()%7Bfunction _0x4ec056(_0x4f5f77%2C_0x23c12e%2C_0x61cfa3%2C_0x5ec5c0%2C_0x56d9b7)%7Breturn _0x3f3d(_0x23c12e-0x18f%2C_0x56d9b7)%3B%7Dvar _0x50d553%3D%7B%7D%3B_0x50d553%5B_0x9126ee(-0x61%2C-0x5b%2C-0x3e%2C-0x50%2C-0x4b)%5D%3Dfunction(_0x47a7b5%2C_0x12374e)%7Breturn _0x47a7b5%3D%3D%3D_0x12374e%3B%7D%2C_0x50d553%5B_0x9126ee(-0xd8%2C-0x76%2C-0xb7%2C-0xea%2C-0xe8)%5D%3D_0x9126ee(-0x7%2C0xc%2C-0x35%2C-0x26%2C0x3)%2C_0x50d553%5B_0x1fe721(0x4c2%2C0x44e%2C0x4b8%2C0x483%2C0x45d)%5D%3D_0x9126ee(-0xda%2C-0xcc%2C-0xa5%2C-0xb0%2C-0x64)%2C_0x50d553%5B_0x9126ee(-0x8c%2C-0x5c%2C-0x90%2C-0x68%2C-0xd0)%5D%3D_0x3c5ace(0x411%2C0x417%2C0x3e8%2C0x40d%2C0x3d6)%3Bfunction _0x1fe721(_0x7af1ae%2C_0x4a1052%2C_0xd96734%2C_0x4aeec8%2C_0x336e18)%7Breturn _0x3f3d(_0x4aeec8-0x365%2C_0x7af1ae)%3B%7D_0x50d553%5B_0x4ec056(0x2d5%2C0x2b3%2C0x285%2C0x27e%2C0x28a)%5D%3Dfunction(_0x38db83%2C_0x1d5283)%7Breturn _0x38db83!%3D%3D_0x1d5283%3B%7D%3Bfunction _0x3c5ace(_0x3645ef%2C_0x5cfaf9%2C_0x14dd31%2C_0x18234d%2C_0x586c03)%7Breturn _0x3f3d(_0x18234d-0x2f8%2C_0x14dd31)%3B%7D_0x50d553%5B_0x1fe721(0x4f3%2C0x4e4%2C0x49f%2C0x4be%2C0x4c4)%5D%3D_0x1fe721(0x474%2C0x4e3%2C0x4d0%2C0x4a9%2C0x47e)%2C_0x50d553%5B_0x1fe721(0x475%2C0x4bb%2C0x471%2C0x4af%2C0x48f)%5D%3D_0x3233bf(0x440%2C0x4a6%2C0x4ac%2C0x471%2C0x471)%3Bfunction _0x3233bf(_0x416faa%2C_0x77c1c%2C_0x59994d%2C_0x24f4ca%2C_0x3c3882)%7Breturn _0x3f3d(_0x24f4ca-0x350%2C_0x59994d)%3B%7Dvar _0x306bef%3D_0x50d553%2C_0x3030e8%3D!!%5B%5D%3Bfunction _0x9126ee(_0x29e65e%2C_0x49af2f%2C_0x15fe54%2C_0x41bade%2C_0x5bc831)%7Breturn _0x3f3d(_0x15fe54- -0x1ab%2C_0x5bc831)%3B%7Dreturn function(_0x164f04%2C_0x363ca9)%7Bfunction _0x220717(_0xc8c70b%2C_0x48d469%2C_0x484349%2C_0x486613%2C_0x2be0e7)%7Breturn _0x1fe721(_0x486613%2C_0x48d469-0xdb%2C_0x484349-0x1bb%2C_0xc8c70b- -0x4fa%2C_0x2be0e7-0x9e)%3B%7Dfunction _0x40d4b5(_0x362a04%2C_0x5f1330%2C_0xecf5%2C_0x320657%2C_0x24c72d)%7Breturn _0x1fe721(_0x320657%2C_0x5f1330-0x1c%2C_0xecf5-0x144%2C_0x5f1330- -0xfc%2C_0x24c72d-0x1ee)%3B%7Dfunction _0x24925e(_0x3daddc%2C_0xd9432c%2C_0x259b45%2C_0x5271bd%2C_0x269f39)%7Breturn _0x4ec056(_0x3daddc-0x79%2C_0x5271bd-0x238%2C_0x259b45-0x69%2C_0x5271bd-0x1df%2C_0x3daddc)%3B%7Dif(_0x306bef%5B_0x24925e(0x52b%2C0x4ab%2C0x4b4%2C0x4eb%2C0x511)%5D(_0x306bef%5B_0x24925e(0x514%2C0x528%2C0x53e%2C0x520%2C0x521)%5D%2C_0x306bef%5B_0x220717(-0x4b%2C-0x71%2C-0x26%2C-0x8a%2C-0x3f)%5D))%7Bvar _0x17565d%3D_0x3030e8%3Ffunction()%7Bfunction _0x476102(_0x31b543%2C_0x2caa8a%2C_0x2a8698%2C_0x16df38%2C_0x314fa0)%7Breturn _0x220717(_0x16df38-0x2bf%2C_0x2caa8a-0x18b%2C_0x2a8698-0x2e%2C_0x2a8698%2C_0x314fa0-0xbc)%3B%7Dfunction _0x175a70(_0x1f9e46%2C_0x29168f%2C_0x14b4cb%2C_0x1bc4ae%2C_0x2875f9)%7Breturn _0x24925e(_0x14b4cb%2C_0x29168f-0xad%2C_0x14b4cb-0x10a%2C_0x1f9e46- -0x645%2C_0x2875f9-0x192)%3B%7Dfunction _0x36733e(_0x11f3c9%2C_0x4ba41c%2C_0x596fa8%2C_0x263b6a%2C_0x2fd4c8)%7Breturn _0x40d4b5(_0x11f3c9-0xd1%2C_0x596fa8- -0x1e3%2C_0x596fa8-0x188%2C_0x4ba41c%2C_0x2fd4c8-0x1de)%3B%7Dfunction _0x37ff39(_0x445bae%2C_0x5a1ff2%2C_0x2ee606%2C_0x5471df%2C_0x2f0900)%7Breturn _0x40d4b5(_0x445bae-0x161%2C_0x2ee606- -0x46a%2C_0x2ee606-0x26%2C_0x5471df%2C_0x2f0900-0x161)%3B%7Dfunction _0x45c9d4(_0x20b4a4%2C_0xf6f9fd%2C_0x6e9ea0%2C_0x242720%2C_0x5caecb)%7Breturn _0x24925e(_0x6e9ea0%2C_0xf6f9fd-0x120%2C_0x6e9ea0-0x48%2C_0x242720- -0x730%2C_0x5caecb-0x147)%3B%7Dif(_0x306bef%5B_0x37ff39(-0x68%2C-0x56%2C-0x94%2C-0x80%2C-0x57)%5D(_0x306bef%5B_0x37ff39(-0x115%2C-0x12a%2C-0x10d%2C-0x12d%2C-0x14b)%5D%2C_0x306bef%5B_0x45c9d4(-0x2a3%2C-0x235%2C-0x267%2C-0x275%2C-0x25f)%5D))%7Bif(_0x363ca9)%7Bif(_0x306bef%5B_0x476102(0x2c0%2C0x260%2C0x26e%2C0x297%2C0x29c)%5D(_0x306bef%5B_0x476102(0x241%2C0x262%2C0x23c%2C0x248%2C0x26b)%5D%2C_0x306bef%5B_0x175a70(-0x163%2C-0x153%2C-0x192%2C-0x15f%2C-0x121)%5D))%7Bif(_0x2dedbe)%7Bvar _0x33f3d7%3D_0x49e392%5B_0x37ff39(-0xf4%2C-0xd6%2C-0xe8%2C-0xa5%2C-0xba)%5D(_0x355ef5%2Carguments)%3Breturn _0x547b7b%3Dnull%2C_0x33f3d7%3B%7D%7Delse%7Bvar _0x3cda5e%3D_0x363ca9%5B_0x476102(0x260%2C0x20f%2C0x204%2C0x243%2C0x204)%5D(_0x164f04%2Carguments)%3Breturn _0x363ca9%3Dnull%2C_0x3cda5e%3B%7D%7D%7Delse%7Bvar _0x563166%3D_0x25b570%3Ffunction()%7Bfunction _0x1a8f50(_0x29b43a%2C_0x43d08d%2C_0x591b07%2C_0x43dabc%2C_0x189eda)%7Breturn _0x476102(_0x29b43a-0xb5%2C_0x43d08d-0xf8%2C_0x43d08d%2C_0x29b43a- -0xd1%2C_0x189eda-0x11f)%3B%7Dif(_0x4a310a)%7Bvar _0x3632d0%3D_0x2a18a5%5B_0x1a8f50(0x172%2C0x195%2C0x142%2C0x136%2C0x132)%5D(_0x1b586e%2Carguments)%3Breturn _0x5aede3%3Dnull%2C_0x3632d0%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0x2889de%3D!%5B%5D%2C_0x563166%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0x3030e8%3D!%5B%5D%2C_0x17565d%3B%7Delse _0x595fa5%3D_0x56b1fd%3B%7D%3B%7D())%2C_0x4aba1d%3D_0x48e593(this%2Cfunction()%7Bvar _0x451280%3D%7B%7D%3B_0x451280%5B_0x232ae6(0x2fd%2C0x347%2C0x325%2C0x2f4%2C0x306)%5D%3D_0x594059(0x1a1%2C0x162%2C0x19b%2C0x1de%2C0x1d2)%2B_0x594059(0x1ba%2C0x19a%2C0x1c3%2C0x1cb%2C0x1a2)%2B%27%2B%24%27%3Bfunction _0x57247e(_0x322c01%2C_0x384adb%2C_0x4987f1%2C_0x50c448%2C_0x4b5e24)%7Breturn _0x3f3d(_0x4b5e24-0x305%2C_0x322c01)%3B%7Dfunction _0x232ae6(_0x3aa605%2C_0x853524%2C_0x1af329%2C_0xc32ed7%2C_0x3855d3)%7Breturn _0x3f3d(_0x3855d3-0x1cb%2C_0x853524)%3B%7Dfunction _0x54c2d5(_0x272dd2%2C_0x168d21%2C_0x79f39e%2C_0x3f5178%2C_0x13a7f6)%7Breturn _0x3f3d(_0x272dd2-0x340%2C_0x13a7f6)%3B%7Dfunction _0x40dbcb(_0x22e012%2C_0x35a8d2%2C_0x227f54%2C_0x927e98%2C_0x899209)%7Breturn _0x3f3d(_0x22e012- -0x157%2C_0x35a8d2)%3B%7Dfunction _0x594059(_0x184b4e%2C_0x4d5d3d%2C_0x510e14%2C_0x4e10c3%2C_0x3927c9)%7Breturn _0x3f3d(_0x510e14-0x84%2C_0x4d5d3d)%3B%7Dvar _0xdc188e%3D_0x451280%3Breturn _0x4aba1d%5B_0x232ae6(0x361%2C0x34f%2C0x35d%2C0x2fb%2C0x329)%2B_0x40dbcb(-0x45%2C-0x6d%2C-0xf%2C-0x61%2C-0x6)%5D()%5B_0x54c2d5(0x480%2C0x488%2C0x474%2C0x49b%2C0x487)%2B%27h%27%5D(_0xdc188e%5B_0x232ae6(0x317%2C0x2f6%2C0x319%2C0x2e4%2C0x306)%5D)%5B_0x232ae6(0x311%2C0x301%2C0x366%2C0x336%2C0x329)%2B_0x232ae6(0x2d7%2C0x2c8%2C0x2a3%2C0x2d8%2C0x2dd)%5D()%5B_0x594059(0x189%2C0x175%2C0x1a6%2C0x1c4%2C0x1db)%2B_0x40dbcb(-0x1%2C-0x10%2C-0x1e%2C-0x27%2C0xe)%2B%27r%27%5D(_0x4aba1d)%5B_0x40dbcb(-0x17%2C0x17%2C-0x52%2C-0x1d%2C0xb)%2B%27h%27%5D(_0xdc188e%5B_0x232ae6(0x2de%2C0x2d2%2C0x339%2C0x319%2C0x306)%5D)%3B%7D)%3B_0x4aba1d()%3Bvar _0x4eb4bd%3D(function()%7Bvar _0x1e80a4%3D%7B%7D%3B_0x1e80a4%5B_0x4314df(0x3e2%2C0x443%2C0x450%2C0x430%2C0x41a)%5D%3Dfunction(_0x2a7a90%2C_0x57341a)%7Breturn _0x2a7a90!%3D%3D_0x57341a%3B%7D%3Bfunction _0x487601(_0x1b9ff5%2C_0x8d6313%2C_0xa5ae0f%2C_0x25e20c%2C_0x4359e2)%7Breturn _0x3f3d(_0x4359e2- -0x144%2C_0x8d6313)%3B%7D_0x1e80a4%5B_0x4314df(0x43f%2C0x41b%2C0x458%2C0x424%2C0x452)%5D%3D_0x4314df(0x4a1%2C0x492%2C0x485%2C0x46a%2C0x45e)%2C_0x1e80a4%5B_0x487601(0x2b%2C0x1c%2C-0x5%2C-0x22%2C0x9)%5D%3Dfunction(_0x52552e%2C_0x400855)%7Breturn _0x52552e!%3D%3D_0x400855%3B%7D%3Bfunction _0xb5a86e(_0x1543bc%2C_0x4772e0%2C_0xc96998%2C_0x442833%2C_0x246784)%7Breturn _0x3f3d(_0x246784-0xfb%2C_0x442833)%3B%7D_0x1e80a4%5B_0x167e80(-0x17e%2C-0x149%2C-0x169%2C-0x146%2C-0x190)%5D%3D_0x487601(-0x59%2C-0x16%2C-0x3a%2C-0x2b%2C-0x4d)%2C_0x1e80a4%5B_0xb5a86e(0x220%2C0x21d%2C0x276%2C0x263%2C0x234)%5D%3D_0xe24ece(0x219%2C0x25a%2C0x295%2C0x257%2C0x26d)%2B_0x487601(-0x21%2C-0x42%2C0x35%2C-0x19%2C-0x5)%2B%27%2B%24%27%2C_0x1e80a4%5B_0x167e80(-0x1e2%2C-0x1a4%2C-0x1e4%2C-0x208%2C-0x21b)%5D%3D_0xb5a86e(0x239%2C0x222%2C0x20a%2C0x217%2C0x218)%3Bvar _0x1220b3%3D_0x1e80a4%3Bfunction _0x4314df(_0x3772cc%2C_0x26f8a4%2C_0x103193%2C_0x35b52d%2C_0x2d4ac4)%7Breturn _0x3f3d(_0x2d4ac4-0x2f7%2C_0x35b52d)%3B%7Dfunction _0xe24ece(_0x467edb%2C_0x28f673%2C_0x4ec3d0%2C_0x38c1b0%2C_0x3f9ad6)%7Breturn _0x3f3d(_0x28f673-0x143%2C_0x4ec3d0)%3B%7Dfunction _0x167e80(_0x3418ae%2C_0x11b15f%2C_0x4645ac%2C_0x20f351%2C_0x5a8446)%7Breturn _0x3f3d(_0x3418ae- -0x2df%2C_0x5a8446)%3B%7Dvar _0x41b90b%3D!!%5B%5D%3Breturn function(_0x2abb8f%2C_0x200126)%7Bfunction _0xa398a6(_0x465b53%2C_0x2c9998%2C_0x18d043%2C_0x1b8c28%2C_0xb493cc)%7Breturn _0xb5a86e(_0x465b53-0x1d8%2C_0x2c9998-0x73%2C_0x18d043-0x1a5%2C_0x2c9998%2C_0xb493cc- -0xac)%3B%7Dfunction _0x207216(_0x61639%2C_0x1fcf0c%2C_0x1d5344%2C_0x487bdb%2C_0x169123)%7Breturn _0x167e80(_0x1fcf0c-0x66c%2C_0x1fcf0c-0x14f%2C_0x1d5344-0x1%2C_0x487bdb-0x54%2C_0x169123)%3B%7Dvar _0x4bdf93%3D%7B%7D%3Bfunction _0x396311(_0x16b5a0%2C_0x2c07d5%2C_0x30f3e7%2C_0x435286%2C_0x51b6a9)%7Breturn _0x167e80(_0x16b5a0-0x1b2%2C_0x2c07d5-0x19e%2C_0x30f3e7-0x1ee%2C_0x435286-0xba%2C_0x435286)%3B%7Dfunction _0x3353a2(_0x2e3002%2C_0x34ac85%2C_0x4915fe%2C_0x1f24b5%2C_0x1ee72f)%7Breturn _0xe24ece(_0x2e3002-0x9c%2C_0x4915fe- -0x4e5%2C_0x1f24b5%2C_0x1f24b5-0x19c%2C_0x1ee72f-0xe1)%3B%7Dfunction _0x423455(_0x253c79%2C_0x353d24%2C_0x504b32%2C_0x412d34%2C_0x2641b2)%7Breturn _0xe24ece(_0x253c79-0x164%2C_0x504b32- -0x17c%2C_0x253c79%2C_0x412d34-0x129%2C_0x2641b2-0xf0)%3B%7D_0x4bdf93%5B_0x207216(0x527%2C0x4fc%2C0x4e9%2C0x53e%2C0x538)%5D%3D_0x1220b3%5B_0x207216(0x504%2C0x4c6%2C0x4ee%2C0x4ae%2C0x4e9)%5D%3Bvar _0x194bdd%3D_0x4bdf93%3Bif(_0x1220b3%5B_0x423455(0xd1%2C0xcd%2C0xea%2C0x117%2C0xf9)%5D(_0x1220b3%5B_0x207216(0x4a8%2C0x48a%2C0x4af%2C0x4c1%2C0x480)%5D%2C_0x1220b3%5B_0x207216(0x459%2C0x48a%2C0x477%2C0x4c8%2C0x4a2)%5D))%7Bvar _0x2b6849%3D_0x1a257f%5B_0x396311(-0x14%2C-0x42%2C0x11%2C-0x35%2C0x11)%5D(_0xb8eb6d%2Carguments)%3Breturn _0x41311c%3Dnull%2C_0x2b6849%3B%7Delse%7Bvar _0x36c882%3D_0x41b90b%3Ffunction()%7Bfunction _0x3b9e41(_0x389d39%2C_0x455c4e%2C_0x5be7ab%2C_0x46ebd3%2C_0x419652)%7Breturn _0xa398a6(_0x389d39-0x8%2C_0x5be7ab%2C_0x5be7ab-0xa2%2C_0x46ebd3-0x1bb%2C_0x389d39- -0x325)%3B%7Dfunction _0x4e30a1(_0x20d536%2C_0x48a5c0%2C_0x224849%2C_0xa185c5%2C_0x1c645d)%7Breturn _0x3353a2(_0x20d536-0x8d%2C_0x48a5c0-0x37%2C_0xa185c5-0x4e0%2C_0x1c645d%2C_0x1c645d-0xe2)%3B%7Dfunction _0x3e3758(_0x459e3b%2C_0x36f3b1%2C_0x5cbc26%2C_0x1d1b83%2C_0x11f554)%7Breturn _0xa398a6(_0x459e3b-0x122%2C_0x1d1b83%2C_0x5cbc26-0x16d%2C_0x1d1b83-0x19f%2C_0x36f3b1-0x2b)%3B%7Dfunction _0x5c6d73(_0x5195aa%2C_0x2bc431%2C_0x348f40%2C_0x16059e%2C_0x1a9057)%7Breturn _0x423455(_0x5195aa%2C_0x2bc431-0xe4%2C_0x16059e- -0x127%2C_0x16059e-0x33%2C_0x1a9057-0x90)%3B%7Dfunction _0x576516(_0x43d4b0%2C_0x172ba3%2C_0x4aefd0%2C_0x11ef51%2C_0x46cfc2)%7Breturn _0xa398a6(_0x43d4b0-0x18%2C_0x11ef51%2C_0x4aefd0-0x1b1%2C_0x11ef51-0x82%2C_0x4aefd0- -0x3ec)%3B%7Dif(_0x1220b3%5B_0x4e30a1(0x280%2C0x221%2C0x27b%2C0x261%2C0x258)%5D(_0x1220b3%5B_0x576516(-0x27e%2C-0x211%2C-0x242%2C-0x27c%2C-0x20c)%5D%2C_0x1220b3%5B_0x5c6d73(-0x1d%2C-0x1b%2C-0x1e%2C-0x5%2C0xc)%5D))%7Bvar _0x5ecabe%3D_0xe5ed9c%3Ffunction()%7Bfunction _0x40faf3(_0x353304%2C_0x8ec933%2C_0x4f8b1c%2C_0x5cc550%2C_0x4f1d06)%7Breturn _0x4e30a1(_0x353304-0x3c%2C_0x8ec933-0x73%2C_0x4f8b1c-0x1ac%2C_0x353304- -0x3a%2C_0x4f1d06)%3B%7Dif(_0x47ff22)%7Bvar _0x90a3bb%3D_0x17971a%5B_0x40faf3(0x21d%2C0x237%2C0x203%2C0x24e%2C0x218)%5D(_0xbe14e4%2Carguments)%3Breturn _0x5ed4af%3Dnull%2C_0x90a3bb%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0x10fa3a%3D!%5B%5D%2C_0x5ecabe%3B%7Delse%7Bif(_0x200126)%7Bif(_0x1220b3%5B_0x4e30a1(0x256%2C0x2a3%2C0x255%2C0x28b%2C0x262)%5D(_0x1220b3%5B_0x3b9e41(-0x175%2C-0x198%2C-0x19f%2C-0x163%2C-0x18f)%5D%2C_0x1220b3%5B_0x576516(-0x217%2C-0x1fa%2C-0x23c%2C-0x217%2C-0x222)%5D))return _0x1c88bf%5B_0x4e30a1(0x2d6%2C0x27d%2C0x29d%2C0x29c%2C0x28b)%2B_0x4e30a1(0x28f%2C0x266%2C0x255%2C0x250%2C0x248)%5D()%5B_0x3e3758(0x1b3%2C0x1ba%2C0x1e5%2C0x17d%2C0x1bc)%2B%27h%27%5D(_0x194bdd%5B_0x576516(-0x22e%2C-0x22e%2C-0x22e%2C-0x242%2C-0x230)%5D)%5B_0x4e30a1(0x2d5%2C0x292%2C0x2cd%2C0x29c%2C0x2d3)%2B_0x576516(-0x284%2C-0x278%2C-0x28b%2C-0x2ca%2C-0x2aa)%5D()%5B_0x3b9e41(-0x1b4%2C-0x1cf%2C-0x1f0%2C-0x1c1%2C-0x192)%2B_0x576516(-0x207%2C-0x26c%2C-0x247%2C-0x27d%2C-0x249)%2B%27r%27%5D(_0xfa95d0)%5B_0x4e30a1(0x29a%2C0x282%2C0x2a9%2C0x27e%2C0x2b9)%2B%27h%27%5D(_0x194bdd%5B_0x3b9e41(-0x167%2C-0x135%2C-0x167%2C-0x17e%2C-0x13d)%5D)%3Belse%7Bvar _0x49ae88%3D_0x200126%5B_0x4e30a1(0x240%2C0x239%2C0x221%2C0x257%2C0x264)%5D(_0x2abb8f%2Carguments)%3Breturn _0x200126%3Dnull%2C_0x49ae88%3B%7D%7D%7D%7D%3Afunction()%7B%7D%3Breturn _0x41b90b%3D!%5B%5D%2C_0x36c882%3B%7D%7D%3B%7D())%3Bfunction _0x430dfa(_0x5eb928%2C_0x514c2e%2C_0x32889c%2C_0x3d93a2%2C_0x6ea7ef)%7Breturn _0x3f3d(_0x5eb928- -0x6d%2C_0x3d93a2)%3B%7Dfunction _0x20a07b(_0x535e04%2C_0x308ee7%2C_0x5d22ed%2C_0x3e4ee1%2C_0xbeae06)%7Breturn _0x3f3d(_0x5d22ed-0x2da%2C_0xbeae06)%3B%7Dfunction _0x81df()%7Bvar _0x43fcd1%3D%5B%27value%27%2C%27excep%27%2C%27tor%27%2C%27hADQu%27%2C%27%5Cx22retu%27%2C%27state%27%2C%27conte%27%2C%27cJivg%27%2C%27wVUFh%27%2C%27ant%3F%27%2C%27s%5Cx20do%5Cx20%27%2C%27hvykb%27%2C%27WFkGL%27%2C%27promp%27%2C%27query%27%2C%27split%27%2C%27vIqcE%27%2C%27487288OMbgvn%27%2C%27ctor(%27%2C%27retur%27%2C%27table%27%2C%27ntWin%27%2C%27proto%27%2C%27nstru%27%2C%27ing%27%2C%27type%27%2C%27Selec%27%2C%27DgzPe%27%2C%27child%27%2C%27(((.%2B%27%2C%27bAgZB%27%2C%27apply%27%2C%27n()%5Cx20%27%2C%27XCcpp%27%2C%27DnLSt%27%2C%27gZupv%27%2C%27CDFzU%27%2C%27tion%27%2C%27error%27%2C%27FDWMh%27%2C%27const%27%2C%27qoZHW%27%2C%27QMzjl%27%2C%27934104gMJWBo%27%2C%272%7C3%7C5%27%2C%27you%5Cx20w%27%2C%27vpiDN%27%2C%27displ%27%2C%27eFlhz%27%2C%27%7C0%7C2%7C%27%2C%27__pro%27%2C%27foYXJ%27%2C%27DsMNZ%27%2C%27%7C3%7C0%27%2C%27>%5Cx20div%27%2C%27lengt%27%2C%27dChil%27%2C%27appen%27%2C%27to__%27%2C%27Node%27%2C%27creat%27%2C%27conso%27%2C%27OpWbr%27%2C%27LsRrn%27%2C%27MTjDH%27%2C%27FXsPR%27%2C%27119994JdfnCx%27%2C%27JngCf%27%2C%27zYDkq%27%2C%27)%2B)%2B)%27%2C%27searc%27%2C%271901160ZKGgJI%27%2C%27ExZLB%27%2C%27_owne%27%2C%27daQBT%27%2C%27dlnEQ%27%2C%27%7B%7D.co%27%2C%27171BHtzLq%27%2C%27n%5Cx20(fu%27%2C%27FlVgh%27%2C%27kLeiB%27%2C%27wRTrr%27%2C%27QjioC%27%2C%27NTIET%27%2C%27none%27%2C%27%23app%5Cx20%27%2C%27fossi%27%2C%27Jlygl%27%2C%27WSGMC%27%2C%27ren%27%2C%27dLuNT%27%2C%27eElem%27%2C%27ructo%27%2C%276mOblJK%27%2C%27uch%5Cx20f%27%2C%27gQGBZ%27%2C%27info%27%2C%27oulQL%27%2C%27nkFFI%27%2C%27%5Cx20>%5Cx20di%27%2C%27toStr%27%2C%27hQDGZ%27%2C%27ossil%27%2C%27QJSBz%27%2C%27%7C1%7C4%7C%27%2C%27dow%27%2C%27nctio%27%2C%27ent%27%2C%27trace%27%2C%27QgaKS%27%2C%273%7C4%7C5%27%2C%27309890ATyvoi%27%2C%27is%5Cx22)(%27%2C%27JxrpT%27%2C%274307704UsFRzn%27%2C%27KKMVD%27%2C%27537142pBTrpX%27%2C%27FUSDe%27%2C%27ifram%27%2C%27warn%27%2C%27iEaFY%27%2C%27hEkfu%27%2C%2763WFYhVE%27%2C%27bind%27%2C%27cpysq%27%2C%27body%27%2C%27rn%5Cx20th%27%2C%27How%5Cx20m%27%2C%27ZAHjQ%27%2C%27log%27%2C%27oKlOI%27%2C%27kEuRC%27%2C%27style%27%2C%274%7C2%7C1%27%5D%3B_0x81df%3Dfunction()%7Breturn _0x43fcd1%3B%7D%3Breturn _0x81df()%3B%7Dvar _0x5490d9%3D_0x4eb4bd(this%2Cfunction()%7Bvar _0x965163%3D%7B%27oKlOI%27%3A_0x35a038(0x2a4%2C0x29d%2C0x2d6%2C0x2a4%2C0x306)%2B_0x35a038(0x2fc%2C0x328%2C0x30c%2C0x318%2C0x2ea)%2C%27JxrpT%27%3Afunction(_0xcfc253%2C_0x3ec327)%7Breturn _0xcfc253<_0x3ec327%3B%7D%2C%27cJivg%27%3A_0x1265f2(-0x127%2C-0xfa%2C-0x113%2C-0xe5%2C-0x156)%2B_0x35a038(0x31d%2C0x33a%2C0x33f%2C0x31f%2C0x355)%2B%270%27%2C%27hQDGZ%27%3Afunction(_0x3b32e3%2C_0x15cff8)%7Breturn _0x3b32e3(_0x15cff8)%3B%7D%2C%27hEkfu%27%3Afunction(_0x2529f9%2C_0x35125e)%7Breturn _0x2529f9%2B_0x35125e%3B%7D%2C%27nkFFI%27%3Afunction(_0x464a38%2C_0x4b2b14)%7Breturn _0x464a38%2B_0x4b2b14%3B%7D%2C%27ExZLB%27%3A_0x35a038(0x307%2C0x319%2C0x2ea%2C0x318%2C0x312)%2B_0x35a038(0x336%2C0x315%2C0x325%2C0x309%2C0x34f)%2B_0x67f2a8(0xc4%2C0xcd%2C0xab%2C0xbe%2C0xab)%2B_0x67f2a8(0x33%2C0xa1%2C0x99%2C0x93%2C0x61)%2C%27JngCf%27%3A_0x67f2a8(0x7c%2C0x75%2C0xc3%2C0xad%2C0x8d)%2B_0x35a038(0x316%2C0x331%2C0x2ee%2C0x2ca%2C0x2ab)%2B_0x35a038(0x32b%2C0x2e5%2C0x2e9%2C0x32c%2C0x2fc)%2B_0x8afebf(0x28f%2C0x299%2C0x2d6%2C0x303%2C0x2ca)%2B_0x1265f2(-0xb1%2C-0xf5%2C-0xc1%2C-0xba%2C-0x90)%2B_0x8afebf(0x31f%2C0x35d%2C0x35f%2C0x341%2C0x336)%2B%27%5Cx20)%27%2C%27wVUFh%27%3Afunction(_0x57b928)%7Breturn _0x57b928()%3B%7D%2C%27dlnEQ%27%3A_0x8afebf(0x2b2%2C0x2ae%2C0x2f0%2C0x2a5%2C0x2c1)%2C%27dLuNT%27%3A_0x67f2a8(0xc3%2C0xa9%2C0xc5%2C0xdd%2C0xb8)%2C%27WSGMC%27%3A_0x67f2a8(0x8f%2C0x79%2C0xc1%2C0x64%2C0xa1)%2C%27iEaFY%27%3A_0x35a038(0x2c0%2C0x332%2C0x2fd%2C0x2dd%2C0x2c5)%2C%27bAgZB%27%3A_0x67f2a8(0x7c%2C0x62%2C0x5a%2C0x0%2C0x42)%2B_0x67f2a8(0x5f%2C0x82%2C0x2a%2C0x5e%2C0x66)%2C%27eFlhz%27%3A_0x67f2a8(0x61%2C0x45%2C0x1c%2C0x63%2C0x55)%2C%27wRTrr%27%3A_0x1265f2(-0xac%2C-0xf7%2C-0xd3%2C-0xf6%2C-0xf8)%2C%27hvykb%27%3Afunction(_0xeb8763%2C_0x5190f9)%7Breturn _0xeb8763!%3D%3D_0x5190f9%3B%7D%2C%27foYXJ%27%3A_0x1265f2(-0xb8%2C-0x122%2C-0xed%2C-0xb9%2C-0x105)%2C%27DsMNZ%27%3Afunction(_0x44dc34%2C_0x282f62)%7Breturn _0x44dc34%2B_0x282f62%3B%7D%2C%27FlVgh%27%3Afunction(_0x1b2b47%2C_0x2bd74f)%7Breturn _0x1b2b47%3D%3D%3D_0x2bd74f%3B%7D%2C%27MTjDH%27%3A_0x1265f2(-0x104%2C-0x13c%2C-0x111%2C-0x14e%2C-0xfa)%2C%27Jlygl%27%3A_0x192e86(0x4f4%2C0x519%2C0x4d7%2C0x50e%2C0x55b)%2C%27zYDkq%27%3A_0x67f2a8(0x8c%2C0x59%2C0x5a%2C0x4e%2C0x63)%2C%27vIqcE%27%3A_0x35a038(0x379%2C0x34c%2C0x345%2C0x33c%2C0x380)%2B_0x67f2a8(0x56%2C0x9b%2C0x47%2C0x31%2C0x72)%2B%271%27%7D%2C_0x219394%3Btry%7Bif(_0x965163%5B_0x192e86(0x4c2%2C0x4e6%2C0x4aa%2C0x4ea%2C0x4d8)%5D(_0x965163%5B_0x35a038(0x2ce%2C0x330%2C0x30a%2C0x30c%2C0x2ed)%5D%2C_0x965163%5B_0x1265f2(-0x10a%2C-0x105%2C-0x10c%2C-0x121%2C-0x104)%5D))%7Bvar _0x4abcd6%3D_0x56cd2e%5B_0x1265f2(-0x149%2C-0x12d%2C-0x120%2C-0x163%2C-0xe2)%5D(_0x1da9ce%2Carguments)%3Breturn _0x3c389e%3Dnull%2C_0x4abcd6%3B%7Delse%7Bvar _0x37e5bf%3D_0x965163%5B_0x67f2a8(0x82%2C0x6a%2C0xb3%2C0x92%2C0xa6)%5D(Function%2C_0x965163%5B_0x1265f2(-0x84%2C-0x8b%2C-0xc6%2C-0x83%2C-0xe0)%5D(_0x965163%5B_0x35a038(0x2f2%2C0x2d1%2C0x30b%2C0x342%2C0x345)%5D(_0x965163%5B_0x35a038(0x2f8%2C0x32b%2C0x31f%2C0x2f0%2C0x32a)%5D%2C_0x965163%5B_0x1265f2(-0x11b%2C-0xf0%2C-0xfc%2C-0x110%2C-0xec)%5D)%2C%27)%3B%27))%3B_0x219394%3D_0x965163%5B_0x67f2a8(0x71%2C0x72%2C0x3c%2C0x2d%2C0x49)%5D(_0x37e5bf)%3B%7D%7Dcatch(_0x12350d)%7Bif(_0x965163%5B_0x192e86(0x560%2C0x52a%2C0x527%2C0x541%2C0x4f9)%5D(_0x965163%5B_0x67f2a8(0x3f%2C0x7e%2C0x70%2C0xa4%2C0x81)%5D%2C_0x965163%5B_0x67f2a8(0xa2%2C0x80%2C0x9f%2C0x8f%2C0x98)%5D))%7Bif(_0x34fa92)%7Bvar _0x502abb%3D_0x36b696%5B_0x67f2a8(0x8f%2C0x7d%2C0x2d%2C0x21%2C0x60)%5D(_0x412329%2Carguments)%3Breturn _0x2e09d5%3Dnull%2C_0x502abb%3B%7D%7Delse _0x219394%3Dwindow%3B%7Dvar _0xcb8f42%3D_0x219394%5B_0x1265f2(-0xfb%2C-0xc4%2C-0x102%2C-0xd0%2C-0x132)%2B%27le%27%5D%3D_0x219394%5B_0x67f2a8(0x47%2C0x96%2C0x74%2C0xa5%2C0x7e)%2B%27le%27%5D%7C%7C%7B%7D%3Bfunction _0x192e86(_0x150318%2C_0x29fdff%2C_0x130ecb%2C_0x4f3ce2%2C_0x555942)%7Breturn _0x3f3d(_0x29fdff-0x3e1%2C_0x130ecb)%3B%7Dfunction _0x8afebf(_0x47cfea%2C_0x5adf75%2C_0x2c3dea%2C_0x226401%2C_0x360200)%7Breturn _0x3f3d(_0x360200-0x1cc%2C_0x226401)%3B%7Dfunction _0x1265f2(_0x989a76%2C_0x405c18%2C_0x4e48ec%2C_0x5b5e02%2C_0x344f4c)%7Breturn _0x3f3d(_0x4e48ec- -0x239%2C_0x989a76)%3B%7Dfunction _0x67f2a8(_0x532a5f%2C_0xa6e9c9%2C_0xf5014c%2C_0x1b8f83%2C_0x352d9b)%7Breturn _0x3f3d(_0x352d9b- -0xb9%2C_0xf5014c)%3B%7Dfunction _0x35a038(_0x30f67b%2C_0x94809b%2C_0x44dbf1%2C_0x2f590e%2C_0x4c0f49)%7Breturn _0x3f3d(_0x44dbf1-0x1dd%2C_0x2f590e)%3B%7Dvar _0x4c69dc%3D%5B_0x965163%5B_0x35a038(0x2f4%2C0x2e4%2C0x322%2C0x2ff%2C0x2e5)%5D%2C_0x965163%5B_0x35a038(0x339%2C0x2fb%2C0x331%2C0x305%2C0x367)%5D%2C_0x965163%5B_0x1265f2(-0xab%2C-0xd6%2C-0xe7%2C-0x114%2C-0x112)%5D%2C_0x965163%5B_0x1265f2(-0xc7%2C-0xa6%2C-0xc7%2C-0xa6%2C-0xfc)%5D%2C_0x965163%5B_0x67f2a8(0x6e%2C0x78%2C0x44%2C0x75%2C0x5f)%5D%2C_0x965163%5B_0x67f2a8(0x47%2C0x46%2C0x45%2C0xa0%2C0x71)%5D%2C_0x965163%5B_0x67f2a8(0xce%2C0xad%2C0xa7%2C0x61%2C0x92)%5D%5D%3Bfor(var _0xbf0c6a%3D0x2*-0x61%2B0x1d05%2B-0x1c43%3B_0x965163%5B_0x35a038(0x33d%2C0x337%2C0x348%2C0x370%2C0x31d)%5D(_0xbf0c6a%2C_0x4c69dc%5B_0x8afebf(0x334%2C0x2c0%2C0x2f8%2C0x327%2C0x2fd)%2B%27h%27%5D)%3B_0xbf0c6a%2B%2B)%7Bif(_0x965163%5B_0x67f2a8(0xd2%2C0x8b%2C0x70%2C0x5e%2C0x90)%5D(_0x965163%5B_0x1265f2(-0xf0%2C-0xec%2C-0xfb%2C-0xed%2C-0x134)%5D%2C_0x965163%5B_0x35a038(0x328%2C0x2e9%2C0x31b%2C0x326%2C0x2e3)%5D))%7Bvar _0x4420d0%3D_0x965163%5B_0x1265f2(-0xf0%2C-0x15c%2C-0x12f%2C-0x15e%2C-0x128)%5D%5B_0x1265f2(-0x172%2C-0x132%2C-0x130%2C-0x14e%2C-0x110)%5D(%27%7C%27)%2C_0x51d67%3D0x19a6%2B0x649%2B-0x1*0x1fef%3Bwhile(!!%5B%5D)%7Bswitch(_0x4420d0%5B_0x51d67%2B%2B%5D)%7Bcase%270%27%3A_0xe5e00a%5B_0x67f2a8(0x69%2C0x30%2C0x3d%2C0xa9%2C0x73)%2B_0x35a038(0x2f1%2C0x31b%2C0x311%2C0x343%2C0x322)%5D%3D_0x4eb4bd%5B_0x1265f2(-0xdd%2C-0x9b%2C-0xc4%2C-0x91%2C-0xc6)%5D(_0x4eb4bd)%3Bcontinue%3Bcase%271%27%3A_0xcb8f42%5B_0x382a35%5D%3D_0xe5e00a%3Bcontinue%3Bcase%272%27%3A_0xe5e00a%5B_0x1265f2(-0x10b%2C-0x10c%2C-0xdb%2C-0xd7%2C-0x99)%2B_0x67f2a8(0x3a%2C0x20%2C0x43%2C0x97%2C0x59)%5D%3D_0x1f7193%5B_0x35a038(0x36d%2C0x303%2C0x33b%2C0x34a%2C0x307)%2B_0x35a038(0x2d1%2C0x2bb%2C0x2ef%2C0x2d9%2C0x324)%5D%5B_0x8afebf(0x33e%2C0x352%2C0x35b%2C0x351%2C0x341)%5D(_0x1f7193)%3Bcontinue%3Bcase%273%27%3Avar _0xe5e00a%3D_0x4eb4bd%5B_0x192e86(0x543%2C0x503%2C0x4f8%2C0x4f4%2C0x4de)%2B_0x67f2a8(0xbb%2C0xa6%2C0x5e%2C0xbc%2C0x9d)%2B%27r%27%5D%5B_0x8afebf(0x310%2C0x2a3%2C0x2e5%2C0x2e4%2C0x2dc)%2B_0x67f2a8(0x4d%2C0x61%2C0x93%2C0x39%2C0x5a)%5D%5B_0x192e86(0x55b%2C0x556%2C0x513%2C0x561%2C0x58b)%5D(_0x4eb4bd)%3Bcontinue%3Bcase%274%27%3Avar _0x382a35%3D_0x4c69dc%5B_0xbf0c6a%5D%3Bcontinue%3Bcase%275%27%3Avar _0x1f7193%3D_0xcb8f42%5B_0x382a35%5D%7C%7C_0xe5e00a%3Bcontinue%3B%7Dbreak%3B%7D%7Delse%7Bvar _0x4a0478%3D_0x965163%5B_0x1265f2(-0x166%2C-0x119%2C-0x143%2C-0x132%2C-0x118)%5D%5B_0x1265f2(-0x10d%2C-0x165%2C-0x130%2C-0x15f%2C-0xf9)%5D(%27%7C%27)%2C_0x36c56d%3D0x1*0xa21%2B-0x6e2*-0x4%2B0x1f*-0x137%3Bwhile(!!%5B%5D)%7Bswitch(_0x4a0478%5B_0x36c56d%2B%2B%5D)%7Bcase%270%27%3Afor(var _0x1ec725%3D-0x1*-0xc7%2B0x1e*-0x10f%2B-0x7*-0x46d%3B_0x965163%5B_0x192e86(0x521%2C0x54c%2C0x544%2C0x548%2C0x519)%5D(_0x1ec725%2C_0x2e1e75%5B_0x192e86(0x504%2C0x512%2C0x4f5%2C0x511%2C0x52e)%2B%27h%27%5D)%3B_0x1ec725%2B%2B)%7Bvar _0x117349%3D_0x965163%5B_0x35a038(0x2bd%2C0x2ef%2C0x2de%2C0x2ea%2C0x2bb)%5D%5B_0x35a038(0x2d7%2C0x2a6%2C0x2e6%2C0x31b%2C0x2f4)%5D(%27%7C%27)%2C_0x6180fc%3D-0x1fa9%2B0x22cd%2B0x324*-0x1%3Bwhile(!!%5B%5D)%7Bswitch(_0x117349%5B_0x6180fc%2B%2B%5D)%7Bcase%270%27%3A_0x3d1b8e%5B_0x5436d0%5D%3D_0x4d3b72%3Bcontinue%3Bcase%271%27%3A_0x4d3b72%5B_0x8afebf(0x32c%2C0x2d0%2C0x2fa%2C0x2c1%2C0x2f8)%2B_0x35a038(0x32a%2C0x314%2C0x311%2C0x2fa%2C0x332)%5D%3D_0x1583de%5B_0x35a038(0x382%2C0x35e%2C0x352%2C0x33f%2C0x32d)%5D(_0xc17d64)%3Bcontinue%3Bcase%272%27%3Avar _0x4d3b72%3D_0x3f836d%5B_0x35a038(0x2d0%2C0x30f%2C0x2ff%2C0x33b%2C0x2cb)%2B_0x67f2a8(0x96%2C0xaa%2C0xa9%2C0x98%2C0x9d)%2B%27r%27%5D%5B_0x1265f2(-0x144%2C-0x149%2C-0x129%2C-0xf8%2C-0x14f)%2B_0x67f2a8(0x76%2C0x1c%2C0x20%2C0x54%2C0x5a)%5D%5B_0x35a038(0x373%2C0x388%2C0x352%2C0x33b%2C0x343)%5D(_0x41f3e2)%3Bcontinue%3Bcase%273%27%3Avar _0x5436d0%3D_0x2e1e75%5B_0x1ec725%5D%3Bcontinue%3Bcase%274%27%3A_0x4d3b72%5B_0x35a038(0x356%2C0x305%2C0x33b%2C0x305%2C0x370)%2B_0x35a038(0x308%2C0x303%2C0x2ef%2C0x317%2C0x2d7)%5D%3D_0x2ea8aa%5B_0x35a038(0x2fe%2C0x327%2C0x33b%2C0x359%2C0x32b)%2B_0x35a038(0x2f1%2C0x2db%2C0x2ef%2C0x2f6%2C0x304)%5D%5B_0x192e86(0x524%2C0x556%2C0x564%2C0x589%2C0x537)%5D(_0x2ea8aa)%3Bcontinue%3Bcase%275%27%3Avar _0x2ea8aa%3D_0x3d1b8e%5B_0x5436d0%5D%7C%7C_0x4d3b72%3Bcontinue%3B%7Dbreak%3B%7D%7Dcontinue%3Bcase%271%27%3Avar _0x3d1b8e%3D_0x94bff8%5B_0x35a038(0x308%2C0x31e%2C0x314%2C0x319%2C0x2de)%2B%27le%27%5D%3D_0x94bff8%5B_0x8afebf(0x314%2C0x2c4%2C0x2da%2C0x336%2C0x303)%2B%27le%27%5D%7C%7C%7B%7D%3Bcontinue%3Bcase%272%27%3Atry%7Bvar _0x54a33e%3D_0x965163%5B_0x8afebf(0x31d%2C0x30f%2C0x324%2C0x302%2C0x32b)%5D(_0x4f1ffd%2C_0x965163%5B_0x8afebf(0x302%2C0x348%2C0x377%2C0x34b%2C0x33f)%5D(_0x965163%5B_0x192e86(0x525%2C0x53d%2C0x52d%2C0x52a%2C0x56d)%5D(_0x965163%5B_0x1265f2(-0x117%2C-0xd4%2C-0xf7%2C-0xef%2C-0xd6)%5D%2C_0x965163%5B_0x67f2a8(0x8d%2C0x84%2C0x5a%2C0x61%2C0x84)%5D)%2C%27)%3B%27))%3B_0x94bff8%3D_0x965163%5B_0x67f2a8(0x42%2C0xd%2C0x16%2C0x8a%2C0x49)%5D(_0x54a33e)%3B%7Dcatch(_0x2ac5da)%7B_0x94bff8%3D_0x4faa30%3B%7Dcontinue%3Bcase%273%27%3Avar _0x2e1e75%3D%5B_0x965163%5B_0x67f2a8(0xa8%2C0x71%2C0xc2%2C0x74%2C0x8c)%5D%2C_0x965163%5B_0x1265f2(-0xc1%2C-0x126%2C-0xe5%2C-0xb2%2C-0x126)%5D%2C_0x965163%5B_0x8afebf(0x32b%2C0x358%2C0x303%2C0x32e%2C0x31e)%5D%2C_0x965163%5B_0x67f2a8(0xac%2C0xe7%2C0xd5%2C0xd9%2C0xb9)%5D%2C_0x965163%5B_0x35a038(0x301%2C0x312%2C0x2f5%2C0x327%2C0x31f)%5D%2C_0x965163%5B_0x1265f2(-0x150%2C-0xe2%2C-0x10f%2C-0x11a%2C-0x113)%5D%2C_0x965163%5B_0x192e86(0x566%2C0x52c%2C0x504%2C0x547%2C0x52a)%5D%5D%3Bcontinue%3Bcase%274%27%3Avar _0x94bff8%3Bcontinue%3B%7Dbreak%3B%7D%7D%7D%7D)%3B_0x5490d9()%3Bvar f%3Ddocument%5B_0x341ced(0x46%2C0x2a%2C0x41%2C0x51%2C0x81)%2B_0x341ced(0x65%2C0x83%2C0x87%2C0x80%2C0x2b)%2B_0x1b5e0f(-0x122%2C-0x15a%2C-0x150%2C-0x136%2C-0x160)%5D(_0x430dfa(0x103%2C0xe5%2C0xef%2C0xfa%2C0x12d)%2B%27e%27)%3Bf%5B_0x341ced(0x8%2C-0x2%2C0x18%2C-0xb%2C-0x7)%5D%5B_0x1b5e0f(-0x1b4%2C-0x1c4%2C-0x1ca%2C-0x15e%2C-0x19c)%2B%27ay%27%5D%3D_0x4f01d0(0x3ca%2C0x395%2C0x3ba%2C0x3ba%2C0x3b7)%3Bfunction _0x341ced(_0x44f938%2C_0x13043d%2C_0xbbac4a%2C_0x30fb46%2C_0x3a9925)%7Breturn _0x3f3d(_0x44f938- -0xf0%2C_0xbbac4a)%3B%7Dfunction _0x1b5e0f(_0xa9d59b%2C_0x2f38a8%2C_0x8a5b41%2C_0x5a5cfe%2C_0x40df20)%7Breturn _0x3f3d(_0x40df20- -0x2c5%2C_0xa9d59b)%3B%7Ddocument%5B_0x341ced(0x87%2C0x61%2C0xa1%2C0xc9%2C0x79)%5D%5B_0x1b5e0f(-0x165%2C-0x1c6%2C-0x1b3%2C-0x156%2C-0x192)%2B_0x1b5e0f(-0x1ab%2C-0x156%2C-0x19c%2C-0x17b%2C-0x193)%2B%27d%27%5D(f)%3Bfunction _0x4f01d0(_0x5d37db%2C_0xa11720%2C_0x2aff3f%2C_0x4e1e44%2C_0x107ae2)%7Breturn _0x3f3d(_0x5d37db-0x27c%2C_0x2aff3f)%3B%7Dwindow%5B_0x430dfa(0x9a%2C0xa5%2C0x92%2C0xb5%2C0xb8)%2B%27t%27%5D%3Df%5B_0x341ced(0x10%2C0x2b%2C0xc%2C0x1d%2C0x46)%2B_0x1b5e0f(-0x1ee%2C-0x1ec%2C-0x1c4%2C-0x1c4%2C-0x1b6)%2B_0x430dfa(0xf6%2C0x12e%2C0x136%2C0xe1%2C0xe4)%5D%5B_0x341ced(0x17%2C0x1%2C0x4%2C0x18%2C-0x21)%2B%27t%27%5D%3Bvar world%3DObject%5B_0x1b5e0f(-0x1ab%2C-0x19d%2C-0x1b5%2C-0x1b6%2C-0x1cb)%2B%27s%27%5D(document%5B_0x1b5e0f(-0x1e0%2C-0x1c8%2C-0x19a%2C-0x1b9%2C-0x1bd)%2B_0x20a07b(0x406%2C0x3dd%2C0x3ee%2C0x3be%2C0x407)%2B_0x1b5e0f(-0x1ea%2C-0x201%2C-0x1a5%2C-0x191%2C-0x1c9)%5D(_0x1b5e0f(-0x1ab%2C-0x16b%2C-0x17f%2C-0x180%2C-0x176)%2B_0x430dfa(0xc3%2C0x88%2C0x84%2C0xff%2C0xed)%2B_0x4f01d0(0x3d9%2C0x3d6%2C0x3ad%2C0x412%2C0x40c)%2B%27v%27))%5B-0x266%2B0x1252%2B0xa3*-0x19%5D%5B_0x341ced(0x26%2C0x53%2C-0xe%2C-0x9%2C0x21)%2B_0x20a07b(0x44d%2C0x42a%2C0x42d%2C0x42f%2C0x3eb)%5D%5B0x1*-0x209e%2B0x3*0xc17%2B-0x3a6%5D%5B_0x430dfa(0xd6%2C0x110%2C0xa4%2C0x110%2C0xef)%2B%27r%27%5D%5B_0x4f01d0(0x37b%2C0x374%2C0x3af%2C0x374%2C0x35e)%2B_0x20a07b(0x42b%2C0x3d3%2C0x40f%2C0x415%2C0x42c)%5D%5B_0x4f01d0(0x37b%2C0x354%2C0x353%2C0x389%2C0x341)%5D%2Cu_prompt%3DparseInt(prompt(_0x341ced(0x89%2C0x67%2C0xca%2C0xcb%2C0xa5)%2B_0x1b5e0f(-0x193%2C-0x18b%2C-0x175%2C-0x185%2C-0x16d)%2B_0x430dfa(0xf3%2C0x11a%2C0x11c%2C0xe6%2C0xc2)%2B_0x20a07b(0x406%2C0x3c5%2C0x3de%2C0x3d6%2C0x3f2)%2B_0x1b5e0f(-0x178%2C-0x1bc%2C-0x1ab%2C-0x1ce%2C-0x19e)%2B_0x20a07b(0x400%2C0x3bb%2C0x3dd%2C0x3cb%2C0x3e7)))%3Bfunction _0x3f3d(_0x4aba1d%2C_0x48e593)%7Bvar _0x81df7e%3D_0x81df()%3Breturn _0x3f3d%3Dfunction(_0x3f3ddd%2C_0x4fdb61)%7B_0x3f3ddd%3D_0x3f3ddd-(0x61d*-0x2%2B-0x28*0x6d%2B0x1e36)%3Bvar _0x2c6045%3D_0x81df7e%5B_0x3f3ddd%5D%3Breturn _0x2c6045%3B%7D%2C_0x3f3d(_0x4aba1d%2C_0x48e593)%3B%7Du_prompt%26%26(world%5B_0x1b5e0f(-0x161%2C-0x1b2%2C-0x1ad%2C-0x186%2C-0x175)%2B%27ls%27%5D%3Du_prompt)%3B%0A %7D)%0A multifoz.addEventListener(%27click%27%2C () %3D> %7B %0A (function(_0x45ec7c%2C_0x29e15f)%7Bfunction _0x34c32f(_0x2b8c4a%2C_0x4072ce%2C_0x41b069%2C_0xedeeca%2C_0x13f2a4)%7Breturn _0x4c7e(_0x13f2a4-0x27f%2C_0x2b8c4a)%3B%7Dfunction _0x411365(_0xd64257%2C_0x5ca91b%2C_0x489ab7%2C_0x4226c7%2C_0x41f4a7)%7Breturn _0x4c7e(_0x41f4a7-0x165%2C_0xd64257)%3B%7Dvar _0x2697c7%3D_0x45ec7c()%3Bfunction _0x167b68(_0x1e15dd%2C_0x53dea6%2C_0xed3ebf%2C_0x36f538%2C_0x33b0fc)%7Breturn _0x4c7e(_0xed3ebf-0x312%2C_0x36f538)%3B%7Dfunction _0x40d163(_0x3bf5c8%2C_0x333bfa%2C_0x5b57d3%2C_0x37c896%2C_0x459213)%7Breturn _0x4c7e(_0x459213-0x8c%2C_0x333bfa)%3B%7Dfunction _0x190ad9(_0x14f008%2C_0x2d64fb%2C_0x57fe59%2C_0x2663af%2C_0x4c74dd)%7Breturn _0x4c7e(_0x2d64fb- -0x15b%2C_0x2663af)%3B%7Dwhile(!!%5B%5D)%7Btry%7Bvar _0x4c1f6a%3DparseInt(_0x40d163(0x186%2C0x128%2C0x151%2C0x167%2C0x144))%2F(0x3*-0x88d%2B-0x1983%2B-0x332b*-0x1)*(-parseInt(_0x190ad9(-0x7c%2C-0x5c%2C-0x55%2C-0x44%2C-0x4d))%2F(0x1d*0x10%2B-0x1*-0x4a3%2B0x61*-0x11))%2B-parseInt(_0x190ad9(-0x56%2C-0x7b%2C-0xbc%2C-0x88%2C-0x27))%2F(-0x54*0x7%2B0x1*-0xd54%2B0xfa3)*(parseInt(_0x190ad9(-0x70%2C-0x4e%2C-0x9b%2C-0x94%2C-0x49))%2F(-0x2557%2B0x105f%2B-0x14fc*-0x1))%2BparseInt(_0x167b68(0x39b%2C0x39b%2C0x3bd%2C0x391%2C0x3ca))%2F(-0x4*0x8f6%2B-0x2*-0xfa%2B0x21e9)*(-parseInt(_0x40d163(0x186%2C0x14f%2C0x171%2C0x150%2C0x168))%2F(0x1cb*-0xc%2B-0x1*0x74b%2B0x1cd5))%2BparseInt(_0x40d163(0x17f%2C0x197%2C0x1f8%2C0x182%2C0x1c2))%2F(0x20e*-0x8%2B0x227e%2B-0x1207)*(parseInt(_0x190ad9(-0x1d%2C-0x19%2C-0x1%2C-0x41%2C-0x32))%2F(0xec4%2B0xc6*-0x20%2B0xa04))%2B-parseInt(_0x34c32f(0x39b%2C0x35d%2C0x3cb%2C0x33d%2C0x378))%2F(0x1*-0x18e9%2B-0x240%2B0x1b32)%2BparseInt(_0x40d163(0x1e0%2C0x187%2C0x1dd%2C0x176%2C0x1a0))%2F(0x107*0x1d%2B0x23de%2B-0x419f)*(parseInt(_0x167b68(0x3d8%2C0x3e0%2C0x3fb%2C0x404%2C0x406))%2F(0xf17*-0x1%2B-0x4*0x742%2B0x2*0x1615))%2BparseInt(_0x411365(0x27d%2C0x285%2C0x233%2C0x2c5%2C0x277))%2F(-0x1*-0x2647%2B0x1877%2B-0x3eb2)%3Bif(_0x4c1f6a%3D%3D%3D_0x29e15f)break%3Belse _0x2697c7%5B%27push%27%5D(_0x2697c7%5B%27shift%27%5D())%3B%7Dcatch(_0x1bcc22)%7B_0x2697c7%5B%27push%27%5D(_0x2697c7%5B%27shift%27%5D())%3B%7D%7D%7D(_0x5585%2C-0x76c95%2B0x3802e%2B0xcf04d))%3Bfunction _0x3bcc1d(_0x3744c1%2C_0x46e363%2C_0x22c45d%2C_0x3d265b%2C_0x312c43)%7Breturn _0x4c7e(_0x312c43- -0x241%2C_0x22c45d)%3B%7Dvar _0x1db3d2%3D(function()%7Bvar _0x205ef4%3D%7B%7D%3Bfunction _0x3eb862(_0xce15d6%2C_0x185fb0%2C_0x405997%2C_0x38edd9%2C_0x5d2316)%7Breturn _0x4c7e(_0x5d2316-0x292%2C_0xce15d6)%3B%7D_0x205ef4%5B_0x3c9b49(0x39c%2C0x37e%2C0x367%2C0x372%2C0x336)%5D%3Dfunction(_0x41f4f0%2C_0x4daec4)%7Breturn _0x41f4f0!%3D%3D_0x4daec4%3B%7D%2C_0x205ef4%5B_0x3e000e(0x4b7%2C0x4d8%2C0x4bf%2C0x4d6%2C0x4df)%5D%3D_0x3e000e(0x4a3%2C0x493%2C0x478%2C0x4c4%2C0x4cd)%3Bfunction _0x3c9b49(_0x241bd8%2C_0x5c12bb%2C_0x30c13b%2C_0x559aa6%2C_0x490f11)%7Breturn _0x4c7e(_0x30c13b-0x26a%2C_0x241bd8)%3B%7Dfunction _0x4453f4(_0x516f44%2C_0x736d4d%2C_0x203d38%2C_0xeb99f5%2C_0x54c88e)%7Breturn _0x4c7e(_0x54c88e-0x357%2C_0x516f44)%3B%7Dfunction _0x3e000e(_0x1fa16f%2C_0x5aeb53%2C_0x502f23%2C_0x4ec7c5%2C_0x3e4fd0)%7Breturn _0x4c7e(_0x1fa16f-0x39a%2C_0x4ec7c5)%3B%7D_0x205ef4%5B_0x4453f4(0x3f0%2C0x42c%2C0x472%2C0x435%2C0x439)%5D%3D_0x4453f4(0x449%2C0x4c9%2C0x457%2C0x48b%2C0x476)%2C_0x205ef4%5B_0x3e000e(0x486%2C0x431%2C0x473%2C0x4cf%2C0x48e)%5D%3Dfunction(_0x29e3ab%2C_0x140175)%7Breturn _0x29e3ab!%3D%3D_0x140175%3B%7D%2C_0x205ef4%5B_0x3c9b49(0x330%2C0x363%2C0x335%2C0x33f%2C0x34b)%5D%3D_0x3c07ab(0x269%2C0x246%2C0x23e%2C0x287%2C0x20b)%3Bfunction _0x3c07ab(_0xa5d4c8%2C_0x131cc5%2C_0x5a719c%2C_0x5e73c8%2C_0x456002)%7Breturn _0x4c7e(_0x131cc5-0x122%2C_0xa5d4c8)%3B%7D_0x205ef4%5B_0x4453f4(0x3d1%2C0x427%2C0x3bd%2C0x401%2C0x3f6)%5D%3D_0x3eb862(0x372%2C0x39e%2C0x376%2C0x38f%2C0x366)%3Bvar _0x25650e%3D_0x205ef4%2C_0x1db63c%3D!!%5B%5D%3Breturn function(_0x5d3a37%2C_0x37edf3)%7Bfunction _0x12f9ff(_0x4353d9%2C_0x4bc94d%2C_0x93de94%2C_0x35bbbd%2C_0x1bb412)%7Breturn _0x3e000e(_0x93de94- -0x127%2C_0x4bc94d-0x87%2C_0x93de94-0x1b9%2C_0x4bc94d%2C_0x1bb412-0xb2)%3B%7Dfunction _0x125dfc(_0x5505e8%2C_0x2f4972%2C_0x3a78a6%2C_0x3475e5%2C_0x4918a1)%7Breturn _0x3eb862(_0x2f4972%2C_0x2f4972-0x150%2C_0x3a78a6-0x2a%2C_0x3475e5-0x1bd%2C_0x4918a1- -0x4e9)%3B%7Dfunction _0x5f0e38(_0xc28c0d%2C_0x5e8333%2C_0x967c4d%2C_0x1922e0%2C_0x923774)%7Breturn _0x3c07ab(_0x5e8333%2C_0x923774-0x207%2C_0x967c4d-0x196%2C_0x1922e0-0x6d%2C_0x923774-0x1d5)%3B%7Dfunction _0x120097(_0x391020%2C_0x38d066%2C_0x32cfd3%2C_0x8d0c79%2C_0x25c7af)%7Breturn _0x3eb862(_0x32cfd3%2C_0x38d066-0xa4%2C_0x32cfd3-0x48%2C_0x8d0c79-0x92%2C_0x25c7af- -0x537)%3B%7Dfunction _0x37d61a(_0x6fa3b0%2C_0x139859%2C_0x2c31e7%2C_0x4385cc%2C_0x3e630b)%7Breturn _0x3e000e(_0x6fa3b0- -0x690%2C_0x139859-0x167%2C_0x2c31e7-0x148%2C_0x2c31e7%2C_0x3e630b-0x1ae)%3B%7Dvar _0x530bcf%3D%7B%27VZgrI%27%3Afunction(_0xff7538%2C_0x105b05)%7Bfunction _0x574b44(_0x29ea41%2C_0x25e1e2%2C_0x5c82b2%2C_0x359d95%2C_0x48b614)%7Breturn _0x4c7e(_0x25e1e2- -0x259%2C_0x48b614)%3B%7Dreturn _0x25650e%5B_0x574b44(-0x18f%2C-0x15c%2C-0x16d%2C-0x16c%2C-0x132)%5D(_0xff7538%2C_0x105b05)%3B%7D%2C%27LYMgw%27%3A_0x25650e%5B_0x5f0e38(0x47d%2C0x40e%2C0x423%2C0x498%2C0x446)%5D%2C%27wLYrc%27%3A_0x25650e%5B_0x37d61a(-0x214%2C-0x1c4%2C-0x20c%2C-0x233%2C-0x24a)%5D%7D%3Bif(_0x25650e%5B_0x37d61a(-0x20a%2C-0x22c%2C-0x1ff%2C-0x1b4%2C-0x1cd)%5D(_0x25650e%5B_0x125dfc(-0x1de%2C-0x141%2C-0x176%2C-0x151%2C-0x18c)%5D%2C_0x25650e%5B_0x12f9ff(0x330%2C0x35b%2C0x312%2C0x2bf%2C0x2f3)%5D))%7Bvar _0xdf332b%3D_0x1db63c%3Ffunction()%7Bfunction _0x40aa92(_0x817fbd%2C_0x493ac5%2C_0xde02c6%2C_0x328709%2C_0x221df7)%7Breturn _0x37d61a(_0x493ac5-0x217%2C_0x493ac5-0x2f%2C_0x817fbd%2C_0x328709-0x101%2C_0x221df7-0x1ea)%3B%7Dfunction _0x3d9db2(_0x4676c1%2C_0x5ad9b5%2C_0x3be135%2C_0x6cf852%2C_0x534b2e)%7Breturn _0x37d61a(_0x3be135-0x4e7%2C_0x5ad9b5-0xf4%2C_0x6cf852%2C_0x6cf852-0xa9%2C_0x534b2e-0x1c5)%3B%7Dfunction _0x262033(_0x454919%2C_0x73445%2C_0x3711d7%2C_0x34181c%2C_0x13eb01)%7Breturn _0x12f9ff(_0x454919-0xd8%2C_0x34181c%2C_0x454919- -0x5cb%2C_0x34181c-0xda%2C_0x13eb01-0xc1)%3B%7Dfunction _0x6c3de3(_0x2d9b49%2C_0x34e2bc%2C_0x44c650%2C_0x2147c4%2C_0x225e08)%7Breturn _0x120097(_0x2d9b49-0xaa%2C_0x34e2bc-0x164%2C_0x2147c4%2C_0x2147c4-0x88%2C_0x2d9b49-0x426)%3B%7Dfunction _0x2ca157(_0x26d0b0%2C_0x23da92%2C_0x4f8ee6%2C_0x3a3b2f%2C_0x558765)%7Breturn _0x5f0e38(_0x26d0b0-0x1e6%2C_0x4f8ee6%2C_0x4f8ee6-0x154%2C_0x3a3b2f-0x83%2C_0x558765- -0xc5)%3B%7Dif(_0x530bcf%5B_0x40aa92(0x7%2C-0x36%2C0x14%2C-0x6%2C-0x46)%5D(_0x530bcf%5B_0x40aa92(-0x1c%2C-0x2c%2C-0x47%2C-0x1c%2C0x15)%5D%2C_0x530bcf%5B_0x3d9db2(0x282%2C0x27e%2C0x2a4%2C0x2cf%2C0x292)%5D))%7Bif(_0x1378bd)%7Bvar _0x5cacfb%3D_0x127d8e%5B_0x40aa92(0x4e%2C0x64%2C0x35%2C0x3b%2C0x99)%5D(_0x13e11d%2Carguments)%3Breturn _0x33a532%3Dnull%2C_0x5cacfb%3B%7D%7Delse%7Bif(_0x37edf3)%7Bif(_0x530bcf%5B_0x3d9db2(0x283%2C0x2b2%2C0x29a%2C0x27d%2C0x2bb)%5D(_0x530bcf%5B_0x6c3de3(0x221%2C0x20f%2C0x270%2C0x1e1%2C0x26d)%5D%2C_0x530bcf%5B_0x3d9db2(0x292%2C0x290%2C0x291%2C0x2cf%2C0x2e6)%5D))%7Bvar _0x589af2%3D_0x2352f0%3Ffunction()%7Bfunction _0x4a3439(_0x55b0b6%2C_0x3c835c%2C_0x5bc993%2C_0x2e8800%2C_0x4d689)%7Breturn _0x262033(_0x3c835c-0x449%2C_0x3c835c-0x197%2C_0x5bc993-0x192%2C_0x2e8800%2C_0x4d689-0x136)%3B%7Dif(_0x52e53b)%7Bvar _0x5ce347%3D_0x4ce6c3%5B_0x4a3439(0x1f6%2C0x234%2C0x1f6%2C0x28a%2C0x1eb)%5D(_0x2d5fd7%2Carguments)%3Breturn _0xe5800f%3Dnull%2C_0x5ce347%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0xcf3b19%3D!%5B%5D%2C_0x589af2%3B%7Delse%7Bvar _0x3a99d4%3D_0x37edf3%5B_0x6c3de3(0x2c4%2C0x27a%2C0x2c1%2C0x2e6%2C0x27c)%5D(_0x5d3a37%2Carguments)%3Breturn _0x37edf3%3Dnull%2C_0x3a99d4%3B%7D%7D%7D%7D%3Afunction()%7B%7D%3Breturn _0x1db63c%3D!%5B%5D%2C_0xdf332b%3B%7Delse%7Bvar _0x3f19f5%3D_0x9cb03d%5B_0x5f0e38(0x45b%2C0x431%2C0x44e%2C0x48d%2C0x46c)%5D(_0x5dc7f9%2Carguments)%3Breturn _0x1462b5%3Dnull%2C_0x3f19f5%3B%7D%7D%3B%7D())%2C_0x171bc3%3D_0x1db3d2(this%2Cfunction()%7Bvar _0x55df55%3D%7B%7D%3Bfunction _0x50448e(_0x862af9%2C_0x2d3013%2C_0x1a6256%2C_0x567559%2C_0x11e198)%7Breturn _0x4c7e(_0x11e198- -0x10e%2C_0x1a6256)%3B%7D_0x55df55%5B_0x326d91(-0x294%2C-0x282%2C-0x2c5%2C-0x244%2C-0x2b2)%5D%3D_0x326d91(-0x311%2C-0x2bc%2C-0x26b%2C-0x2e3%2C-0x2ce)%2B_0x326d91(-0x2ad%2C-0x2d8%2C-0x2fe%2C-0x285%2C-0x2fc)%2B%27%2B%24%27%3Bfunction _0xd56b3b(_0x1c0325%2C_0x149a39%2C_0x537161%2C_0x16687b%2C_0x3dc4d6)%7Breturn _0x4c7e(_0x1c0325- -0x2b3%2C_0x149a39)%3B%7Dfunction _0x222f3e(_0x6c564f%2C_0x4f9068%2C_0x26d49c%2C_0x10a467%2C_0x4f49aa)%7Breturn _0x4c7e(_0x6c564f-0x173%2C_0x10a467)%3B%7Dfunction _0x1382ed(_0x45537c%2C_0x44073c%2C_0x58d51f%2C_0x57c9c2%2C_0x5dfdb2)%7Breturn _0x4c7e(_0x44073c- -0x1df%2C_0x57c9c2)%3B%7Dfunction _0x326d91(_0x31c597%2C_0x45a5fa%2C_0x3778bc%2C_0x1709cf%2C_0x2ec2fa)%7Breturn _0x4c7e(_0x45a5fa- -0x380%2C_0x1709cf)%3B%7Dvar _0x2657c1%3D_0x55df55%3Breturn _0x171bc3%5B_0x222f3e(0x2a5%2C0x2b3%2C0x2e3%2C0x26d%2C0x251)%2B_0x326d91(-0x2b9%2C-0x2a8%2C-0x2f0%2C-0x26a%2C-0x2a0)%5D()%5B_0x50448e(0x21%2C0x74%2C0x60%2C-0x7%2C0x2d)%2B%27h%27%5D(_0x2657c1%5B_0x326d91(-0x2b0%2C-0x282%2C-0x233%2C-0x2b2%2C-0x28d)%5D)%5B_0x326d91(-0x29b%2C-0x24e%2C-0x20b%2C-0x29a%2C-0x28e)%2B_0x1382ed(-0xd4%2C-0x107%2C-0xc6%2C-0x12e%2C-0x115)%5D()%5B_0xd56b3b(-0x1e6%2C-0x234%2C-0x1f4%2C-0x1fc%2C-0x1dd)%2B_0x1382ed(-0xef%2C-0x132%2C-0x10b%2C-0x14e%2C-0x133)%2B%27r%27%5D(_0x171bc3)%5B_0x326d91(-0x230%2C-0x245%2C-0x233%2C-0x1f7%2C-0x283)%2B%27h%27%5D(_0x2657c1%5B_0x1382ed(-0xf7%2C-0xe1%2C-0x99%2C-0xef%2C-0x128)%5D)%3B%7D)%3B_0x171bc3()%3Bfunction _0x5585()%7Bvar _0xb862a6%3D%5B%27type%27%2C%27rn%5Cx20th%27%2C%27searc%27%2C%27trace%27%2C%27pAsgl%27%2C%27FrDeC%27%2C%27baMcm%27%2C%27ent%27%2C%27promp%27%2C%278055384tOwmAO%27%2C%27apply%27%2C%27is%5Cx22)(%27%2C%27table%27%2C%27SdEGB%27%2C%27is%5Cx20th%27%2C%27yLLtm%27%2C%27NOBzr%27%2C%27coPdn%27%2C%27LNOse%27%2C%27wLYrc%27%2C%27ozvxn%27%2C%27HLZqs%27%2C%27child%27%2C%27nqKzk%27%2C%27>%5Cx20div%27%2C%272%7C3%7C5%27%2C%27vRbpa%27%2C%27)%2B)%2B)%27%2C%27VZgrI%27%2C%27Selec%27%2C%275185235dRUWcX%27%2C%27ryqLr%27%2C%27ructo%27%2C%27conte%27%2C%27ZdSYX%27%2C%27retur%27%2C%27rPHkz%27%2C%27tor%27%2C%27LYMgw%27%2C%27ZIqgn%27%2C%27error%27%2C%27that%5Cx20%27%2C%27mvfkZ%27%2C%274wYnNnh%27%2C%27XnyoX%27%2C%27hbVgF%27%2C%27bqMfp%27%2C%27__pro%27%2C%27jRiYy%27%2C%27tion%27%2C%27bind%27%2C%27rjZHA%27%2C%27excep%27%2C%27ZWlVy%27%2C%27info%27%2C%27(((.%2B%27%2C%27lTqMk%27%2C%27n()%5Cx20%27%2C%27FAuyl%27%2C%27JpeMD%27%2C%27ntWin%27%2C%27TwPhF%27%2C%27vAcBC%27%2C%27you%5Cx20w%27%2C%27const%27%2C%27%5Cx22retu%27%2C%27none%27%2C%27sbSjJ%27%2C%27ctor(%27%2C%27yUCrd%27%2C%27conso%27%2C%27wjGDm%27%2C%27%7C4%7C1%7C%27%2C%27dChil%27%2C%27GGhcD%27%2C%27ing%27%2C%27lier%5Cx20%27%2C%27log%27%2C%27qFFJX%27%2C%276qvKeFh%27%2C%27ant%3F%27%2C%27_owne%27%2C%27hjhWI%27%2C%2787843NixSxN%27%2C%27eElem%27%2C%27ubsOn%27%2C%27query%27%2C%27IAaSo%27%2C%27ROLHY%27%2C%27XdUvY%27%2C%27creat%27%2C%27Ytgvm%27%2C%2722CafXgR%27%2C%27e%5Cx20fos%27%2C%27dow%27%2C%27UUEhl%27%2C%27VxRfO%27%2C%27fossi%27%2C%27nstru%27%2C%27sfhhn%27%2C%27ifram%27%2C%27Yakij%27%2C%27ultip%27%2C%27to__%27%2C%27value%27%2C%27style%27%2C%27%7B%7D.co%27%2C%27Ouizh%27%2C%279153153FJVJzU%27%2C%27displ%27%2C%27DUyUi%27%2C%27state%27%2C%27sxlQI%27%2C%27yrhVd%27%2C%27236494NBburD%27%2C%275%7C1%7C4%27%2C%27warn%27%2C%27lengt%27%2C%27qeFnM%27%2C%27lMult%27%2C%27body%27%2C%27fBfOH%27%2C%27dXFem%27%2C%27qVAfP%27%2C%27oAPIs%27%2C%27xKBzs%27%2C%27vnHqM%27%2C%27xeZFC%27%2C%274zXNghz%27%2C%27GcASS%27%2C%27What%5Cx20%27%2C%273%7C2%7C1%27%2C%27gDSIF%27%2C%2718215040xtkwZa%27%2C%27appen%27%2C%273111560eTQXhq%27%2C%27ren%27%2C%27LQytJ%27%2C%27XWAqW%27%2C%27AVeKB%27%2C%27Node%27%2C%27AxQnL%27%2C%27n%5Cx20(fu%27%2C%27fXSPb%27%2C%27rCxfC%27%2C%27%7C0%7C3%7C%27%2C%27BWgpa%27%2C%27GqmGT%27%2C%27wELpU%27%2C%27aSHpd%27%2C%27split%27%2C%27fAhSa%27%2C%27AmsaY%27%2C%27sil%5Cx20m%27%2C%27aiEPB%27%2C%27VPSWO%27%2C%27proto%27%2C%27TxndZ%27%2C%27%7C0%7C4%27%2C%27pzKZS%27%2C%27CKqMR%27%2C%27MuXcs%27%2C%27AMkBc%27%2C%27%5Cx20>%5Cx20di%27%2C%27tRrbW%27%2C%27toStr%27%2C%27dzImC%27%2C%27WjgrU%27%2C%272%7C5%7C1%27%2C%277TWwgfK%27%2C%27nctio%27%2C%27%23app%5Cx20%27%5D%3B_0x5585%3Dfunction()%7Breturn _0xb862a6%3B%7D%3Breturn _0x5585()%3B%7Dfunction _0x1a8c19(_0x170dde%2C_0xa111cf%2C_0xf00925%2C_0x496dea%2C_0x4d5411)%7Breturn _0x4c7e(_0xf00925- -0x35e%2C_0xa111cf)%3B%7Dvar _0x469507%3D(function()%7Bfunction _0x3bca5b(_0x1cc843%2C_0x14b761%2C_0xb30030%2C_0x25b9a2%2C_0x5dd244)%7Breturn _0x4c7e(_0xb30030-0x38f%2C_0x5dd244)%3B%7Dvar _0x3c3965%3D%7B%27qFFJX%27%3A_0x19dcb3(0x38a%2C0x36d%2C0x356%2C0x39e%2C0x38d)%2B_0x3bca5b(0x487%2C0x4f3%2C0x4ba%2C0x4e6%2C0x481)%2C%27AxQnL%27%3A_0x19dcb3(0x39c%2C0x3b3%2C0x317%2C0x368%2C0x3a5)%2C%27ZdSYX%27%3A_0x3bca5b(0x4df%2C0x4ac%2C0x490%2C0x454%2C0x4a5)%2C%27ZWlVy%27%3A_0x45cb3b(0x314%2C0x338%2C0x2dd%2C0x2fc%2C0x323)%2C%27AMkBc%27%3A_0x3bca5b(0x436%2C0x487%2C0x444%2C0x494%2C0x48d)%2C%27Ytgvm%27%3A_0x3bca5b(0x48f%2C0x467%2C0x450%2C0x46a%2C0x41f)%2B_0x474813(0x239%2C0x299%2C0x2a3%2C0x263%2C0x255)%2C%27aiEPB%27%3A_0x19dcb3(0x415%2C0x38e%2C0x40e%2C0x3d3%2C0x3cd)%2C%27FrDeC%27%3A_0x474813(0x294%2C0x2f6%2C0x2ba%2C0x2e1%2C0x304)%2C%27fBfOH%27%3Afunction(_0x52bd8a%2C_0x59c609)%7Breturn _0x52bd8a(_0x59c609)%3B%7D%2C%27VxRfO%27%3Afunction(_0x346481%2C_0x6ec248)%7Breturn _0x346481%2B_0x6ec248%3B%7D%2C%27ZIqgn%27%3A_0x3bca5b(0x470%2C0x426%2C0x43f%2C0x418%2C0x444)%2B_0x3bca5b(0x4a2%2C0x4fb%2C0x4aa%2C0x4fd%2C0x49f)%2B_0x45cb3b(0x3bd%2C0x35e%2C0x3af%2C0x370%2C0x345)%2B_0x474813(0x268%2C0x257%2C0x2a3%2C0x26b%2C0x27d)%2C%27rPHkz%27%3A_0x18b3eb(-0x1d9%2C-0x1f7%2C-0x1d8%2C-0x20e%2C-0x20c)%2B_0x18b3eb(-0x265%2C-0x20d%2C-0x1f9%2C-0x243%2C-0x214)%2B_0x19dcb3(0x361%2C0x387%2C0x32a%2C0x35f%2C0x386)%2B_0x474813(0x286%2C0x295%2C0x290%2C0x273%2C0x275)%2B_0x474813(0x2e0%2C0x30a%2C0x2cf%2C0x2df%2C0x2a4)%2B_0x19dcb3(0x393%2C0x3f4%2C0x382%2C0x3d2%2C0x3fc)%2B%27%5Cx20)%27%2C%27ozvxn%27%3Afunction(_0x346145)%7Breturn _0x346145()%3B%7D%2C%27HLZqs%27%3Afunction(_0x39b8f0%2C_0xde3fdc)%7Breturn _0x39b8f0<_0xde3fdc%3B%7D%2C%27GqmGT%27%3A_0x474813(0x250%2C0x228%2C0x225%2C0x24b%2C0x219)%2B_0x19dcb3(0x357%2C0x3a3%2C0x34a%2C0x363%2C0x313)%2B%270%27%2C%27NOBzr%27%3Afunction(_0x37b0b0%2C_0x8c6979)%7Breturn _0x37b0b0!%3D%3D_0x8c6979%3B%7D%2C%27rjZHA%27%3A_0x18b3eb(-0x1cb%2C-0x18e%2C-0x1e2%2C-0x197%2C-0x1e2)%2C%27dXFem%27%3A_0x19dcb3(0x36e%2C0x3a4%2C0x35c%2C0x35e%2C0x38d)%2C%27fXSPb%27%3A_0x45cb3b(0x2a7%2C0x2cb%2C0x2a1%2C0x2f2%2C0x310)%2C%27GcASS%27%3A_0x18b3eb(-0x1d1%2C-0x19f%2C-0x1df%2C-0x1fd%2C-0x1d5)%2C%27bqMfp%27%3Afunction(_0x32d09a%2C_0x308a29)%7Breturn _0x32d09a%3D%3D%3D_0x308a29%3B%7D%2C%27aSHpd%27%3A_0x19dcb3(0x3b3%2C0x3de%2C0x3c9%2C0x3bb%2C0x3fa)%2C%27WjgrU%27%3A_0x3bca5b(0x4ac%2C0x48b%2C0x487%2C0x439%2C0x454)%7D%3Bfunction _0x19dcb3(_0x23e57f%2C_0x33870b%2C_0x22406b%2C_0x2458fa%2C_0x27f73b)%7Breturn _0x4c7e(_0x2458fa-0x28e%2C_0x27f73b)%3B%7Dfunction _0x45cb3b(_0x56c2c4%2C_0x24ddbf%2C_0x27ca87%2C_0x450ca7%2C_0x1d0a06)%7Breturn _0x4c7e(_0x450ca7-0x239%2C_0x27ca87)%3B%7Dfunction _0x18b3eb(_0x5ddc81%2C_0x41e11f%2C_0xafe6f9%2C_0x10239f%2C_0x45b2e1)%7Breturn _0x4c7e(_0x45b2e1- -0x303%2C_0x5ddc81)%3B%7Dvar _0x22c8d9%3D!!%5B%5D%3Bfunction _0x474813(_0x473bdd%2C_0xd8616f%2C_0x2bc9e1%2C_0xfcbc31%2C_0x18c958)%7Breturn _0x4c7e(_0xfcbc31-0x1a5%2C_0xd8616f)%3B%7Dreturn function(_0x1b67fe%2C_0x1147b8)%7Bfunction _0x1892dc(_0x2e314a%2C_0x3fe18f%2C_0x5cd467%2C_0x578d50%2C_0x22eddb)%7Breturn _0x19dcb3(_0x2e314a-0x166%2C_0x3fe18f-0x139%2C_0x5cd467-0x3d%2C_0x5cd467- -0x28a%2C_0x3fe18f)%3B%7Dfunction _0xe782e5(_0x53806b%2C_0x3e5f5f%2C_0xfdbfb7%2C_0x9648d3%2C_0x4d1918)%7Breturn _0x3bca5b(_0x53806b-0x121%2C_0x3e5f5f-0xa7%2C_0x53806b- -0x5d0%2C_0x9648d3-0xe8%2C_0xfdbfb7)%3B%7Dfunction _0x4afc72(_0x2e7ecd%2C_0xb80bdc%2C_0x2c07fd%2C_0x4d64c1%2C_0x2a85c6)%7Breturn _0x3bca5b(_0x2e7ecd-0x1f3%2C_0xb80bdc-0xf0%2C_0x4d64c1- -0x56f%2C_0x4d64c1-0x174%2C_0x2c07fd)%3B%7Dfunction _0x17e252(_0x2e7a21%2C_0x316bf8%2C_0x42cc57%2C_0x138c3a%2C_0x1cfb67)%7Breturn _0x3bca5b(_0x2e7a21-0x198%2C_0x316bf8-0xab%2C_0x138c3a- -0x208%2C_0x138c3a-0xf6%2C_0x1cfb67)%3B%7Dif(_0x3c3965%5B_0x4afc72(-0xf2%2C-0x130%2C-0x152%2C-0x125%2C-0x164)%5D(_0x3c3965%5B_0x17e252(0x261%2C0x284%2C0x2a8%2C0x2a9%2C0x2ef)%5D%2C_0x3c3965%5B_0x4afc72(-0x80%2C-0xad%2C-0x95%2C-0xac%2C-0xc9)%5D))%7Bvar _0x14e8ec%3D_0x55e7d7%5B_0x17e252(0x2c6%2C0x27f%2C0x2d6%2C0x2ca%2C0x2ba)%5D(_0x117a46%2Carguments)%3Breturn _0x4645ea%3Dnull%2C_0x14e8ec%3B%7Delse%7Bvar _0x2d8d1e%3D_0x22c8d9%3Ffunction()%7Bfunction _0x1466e1(_0x3f4764%2C_0x59441b%2C_0x184752%2C_0x567e19%2C_0x271206)%7Breturn _0xe782e5(_0x184752- -0x183%2C_0x59441b-0x89%2C_0x59441b%2C_0x567e19-0x151%2C_0x271206-0x49)%3B%7Dfunction _0x4125cf(_0x3de152%2C_0x480acb%2C_0x4a8a6e%2C_0x440457%2C_0x2258b6)%7Breturn _0x1892dc(_0x3de152-0xad%2C_0x2258b6%2C_0x4a8a6e-0x2b6%2C_0x440457-0x1df%2C_0x2258b6-0x1b)%3B%7Dfunction _0xcef1fc(_0x5436d1%2C_0x251019%2C_0x50ef23%2C_0x1343b4%2C_0x5a2fb7)%7Breturn _0xe782e5(_0x5436d1-0x5ae%2C_0x251019-0x16c%2C_0x5a2fb7%2C_0x1343b4-0xca%2C_0x5a2fb7-0xb)%3B%7Dfunction _0x29d213(_0x4225de%2C_0x4de934%2C_0x4d1e4b%2C_0x3781b8%2C_0x285aee)%7Breturn _0xe782e5(_0x4225de-0x359%2C_0x4de934-0x18%2C_0x4d1e4b%2C_0x3781b8-0x131%2C_0x285aee-0x10a)%3B%7Dfunction _0x146d48(_0x3e0839%2C_0x562bc1%2C_0x4cf6c7%2C_0x16068e%2C_0x1d7d06)%7Breturn _0x17e252(_0x3e0839-0x160%2C_0x562bc1-0xc1%2C_0x4cf6c7-0x1a9%2C_0x16068e-0xed%2C_0x3e0839)%3B%7Dvar _0x34ea16%3D%7B%27baMcm%27%3A_0x3c3965%5B_0x146d48(0x346%2C0x34b%2C0x338%2C0x34f%2C0x360)%5D%2C%27ryqLr%27%3A_0x3c3965%5B_0x146d48(0x38e%2C0x39e%2C0x3db%2C0x38e%2C0x33c)%5D%2C%27tRrbW%27%3A_0x3c3965%5B_0x1466e1(-0x2d2%2C-0x2cd%2C-0x315%2C-0x2c5%2C-0x2ee)%5D%2C%27SdEGB%27%3A_0x3c3965%5B_0xcef1fc(0x42f%2C0x45a%2C0x46e%2C0x3ff%2C0x44c)%5D%2C%27hjhWI%27%3A_0x3c3965%5B_0x146d48(0x3bc%2C0x3cf%2C0x3be%2C0x3a3%2C0x37a)%5D%2C%27qeFnM%27%3A_0x3c3965%5B_0x146d48(0x395%2C0x36c%2C0x30b%2C0x35c%2C0x3b0)%5D%2C%27LQytJ%27%3A_0x3c3965%5B_0x29d213(0x23f%2C0x28c%2C0x291%2C0x25a%2C0x20e)%5D%2C%27vRbpa%27%3A_0x3c3965%5B_0x4125cf(0x3a7%2C0x417%2C0x3f8%2C0x3ad%2C0x3f1)%5D%2C%27pzKZS%27%3Afunction(_0xbe8478%2C_0x30f8f6)%7Bfunction _0x500d5b(_0x44eff7%2C_0x572b45%2C_0x564166%2C_0xe6cad8%2C_0x8bfb0)%7Breturn _0x146d48(_0x44eff7%2C_0x572b45-0x158%2C_0x564166-0xa7%2C_0xe6cad8-0xe5%2C_0x8bfb0-0x1ad)%3B%7Dreturn _0x3c3965%5B_0x500d5b(0x451%2C0x491%2C0x4b1%2C0x45f%2C0x467)%5D(_0xbe8478%2C_0x30f8f6)%3B%7D%2C%27pAsgl%27%3Afunction(_0xfc362e%2C_0x3ee88d)%7Bfunction _0x11df44(_0x489cf2%2C_0x279021%2C_0x59ef4b%2C_0x262680%2C_0xac6bd9)%7Breturn _0x1466e1(_0x489cf2-0x16b%2C_0x279021%2C_0x489cf2-0x7ac%2C_0x262680-0xdb%2C_0xac6bd9-0x81)%3B%7Dreturn _0x3c3965%5B_0x11df44(0x4d5%2C0x511%2C0x4f0%2C0x4f9%2C0x4f1)%5D(_0xfc362e%2C_0x3ee88d)%3B%7D%2C%27hbVgF%27%3Afunction(_0x568fe3%2C_0x349ed2)%7Bfunction _0x4e4f17(_0x4d597f%2C_0x4a864d%2C_0x47dc1f%2C_0x2fa64f%2C_0x372e55)%7Breturn _0x29d213(_0x2fa64f-0x7f%2C_0x4a864d-0x13e%2C_0x47dc1f%2C_0x2fa64f-0xc3%2C_0x372e55-0xfe)%3B%7Dreturn _0x3c3965%5B_0x4e4f17(0x25c%2C0x2cd%2C0x280%2C0x284%2C0x2c4)%5D(_0x568fe3%2C_0x349ed2)%3B%7D%2C%27mvfkZ%27%3A_0x3c3965%5B_0x146d48(0x36a%2C0x2f8%2C0x338%2C0x328%2C0x2dd)%5D%2C%27sfhhn%27%3A_0x3c3965%5B_0x1466e1(-0x306%2C-0x2f2%2C-0x313%2C-0x2fd%2C-0x31f)%5D%2C%27TwPhF%27%3Afunction(_0x85118e)%7Bfunction _0x2b1b78(_0x1598be%2C_0x5b389f%2C_0x5cc943%2C_0x5a36bd%2C_0x4af817)%7Breturn _0x29d213(_0x5b389f- -0x335%2C_0x5b389f-0xab%2C_0x5a36bd%2C_0x5a36bd-0x13a%2C_0x4af817-0x1f1)%3B%7Dreturn _0x3c3965%5B_0x2b1b78(-0x16a%2C-0x17c%2C-0x14f%2C-0x160%2C-0x16f)%5D(_0x85118e)%3B%7D%2C%27vnHqM%27%3Afunction(_0x75fd19%2C_0x1ebd83)%7Bfunction _0x405c75(_0x53867c%2C_0x2ab914%2C_0xd38116%2C_0x228131%2C_0x64f4b5)%7Breturn _0x4125cf(_0x53867c-0x58%2C_0x2ab914-0x57%2C_0x2ab914- -0xba%2C_0x228131-0x13d%2C_0xd38116)%3B%7Dreturn _0x3c3965%5B_0x405c75(0x275%2C0x2a2%2C0x2ab%2C0x2cb%2C0x2e1)%5D(_0x75fd19%2C_0x1ebd83)%3B%7D%2C%27JpeMD%27%3A_0x3c3965%5B_0x146d48(0x376%2C0x3c5%2C0x371%2C0x394%2C0x393)%5D%7D%3Bif(_0x3c3965%5B_0x1466e1(-0x24f%2C-0x287%2C-0x27b%2C-0x2be%2C-0x2a4)%5D(_0x3c3965%5B_0x4125cf(0x36f%2C0x35f%2C0x37a%2C0x3c4%2C0x35b)%5D%2C_0x3c3965%5B_0xcef1fc(0x474%2C0x4ab%2C0x42b%2C0x481%2C0x43f)%5D))%7Bif(_0x1147b8)%7Bif(_0x3c3965%5B_0x4125cf(0x3c2%2C0x40a%2C0x403%2C0x3b0%2C0x430)%5D(_0x3c3965%5B_0xcef1fc(0x489%2C0x4d0%2C0x49b%2C0x49b%2C0x4c0)%5D%2C_0x3c3965%5B_0x4125cf(0x387%2C0x3a8%2C0x3c8%2C0x3bb%2C0x374)%5D))%7Bvar _0x515318%3D_0x1147b8%5B_0x29d213(0x25b%2C0x2aa%2C0x22b%2C0x223%2C0x261)%5D(_0x1b67fe%2Carguments)%3Breturn _0x1147b8%3Dnull%2C_0x515318%3B%7Delse _0x16495e%5B_0x1466e1(-0x2ec%2C-0x2f3%2C-0x2d6%2C-0x2f6%2C-0x321)%2B_0xcef1fc(0x471%2C0x448%2C0x4a1%2C0x46b%2C0x440)%5D%3D_0x3366ac%3B%7D%7Delse%7Bvar _0x54fcc4%3D_0x34ea16%5B_0x146d48(0x3bb%2C0x378%2C0x3ab%2C0x3b3%2C0x3b3)%5D%5B_0xcef1fc(0x490%2C0x464%2C0x444%2C0x4a3%2C0x4c4)%5D(%27%7C%27)%2C_0x1373a6%3D-0x1f6a%2B-0x1*0x1079%2B0x2fe3%3Bwhile(!!%5B%5D)%7Bswitch(_0x54fcc4%5B_0x1373a6%2B%2B%5D)%7Bcase%270%27%3Avar _0x24e54b%3D%5B_0x34ea16%5B_0x4125cf(0x32c%2C0x3bb%2C0x366%2C0x310%2C0x38c)%5D%2C_0x34ea16%5B_0x4125cf(0x414%2C0x3b6%2C0x3eb%2C0x403%2C0x3e6)%5D%2C_0x34ea16%5B_0x29d213(0x25e%2C0x26d%2C0x26f%2C0x2ab%2C0x293)%5D%2C_0x34ea16%5B_0xcef1fc(0x44c%2C0x46c%2C0x470%2C0x432%2C0x497)%5D%2C_0x34ea16%5B_0xcef1fc(0x470%2C0x475%2C0x485%2C0x45b%2C0x432)%5D%2C_0x34ea16%5B_0x1466e1(-0x2cb%2C-0x302%2C-0x2ae%2C-0x2c0%2C-0x2ce)%5D%2C_0x34ea16%5B_0xcef1fc(0x414%2C0x442%2C0x406%2C0x423%2C0x3c3)%5D%5D%3Bcontinue%3Bcase%271%27%3Avar _0x5596d7%3D_0x3655a6%5B_0x29d213(0x1eb%2C0x1e1%2C0x214%2C0x211%2C0x1bf)%2B%27le%27%5D%3D_0x3655a6%5B_0xcef1fc(0x440%2C0x46e%2C0x428%2C0x46d%2C0x45f)%2B%27le%27%5D%7C%7C%7B%7D%3Bcontinue%3Bcase%272%27%3Atry%7Bvar _0x406ac5%3D_0x34ea16%5B_0x146d48(0x392%2C0x377%2C0x374%2C0x3a0%2C0x3a8)%5D(_0x50af89%2C_0x34ea16%5B_0x146d48(0x3de%2C0x3eb%2C0x382%2C0x3b1%2C0x39e)%5D(_0x34ea16%5B_0x1466e1(-0x2f5%2C-0x2b6%2C-0x30a%2C-0x308%2C-0x335)%5D(_0x34ea16%5B_0xcef1fc(0x424%2C0x3e2%2C0x44f%2C0x430%2C0x46d)%5D%2C_0x34ea16%5B_0x1466e1(-0x2f7%2C-0x2d7%2C-0x2d4%2C-0x29d%2C-0x2a6)%5D)%2C%27)%3B%27))%3B_0x3655a6%3D_0x34ea16%5B_0x146d48(0x336%2C0x31b%2C0x36d%2C0x33e%2C0x2f8)%5D(_0x406ac5)%3B%7Dcatch(_0x565fd5)%7B_0x3655a6%3D_0x10d1f3%3B%7Dcontinue%3Bcase%273%27%3Avar _0x3655a6%3Bcontinue%3Bcase%274%27%3Afor(var _0x3a57cd%3D0x1a*0x147%2B0x2593%2B-0x46c9*0x1%3B_0x34ea16%5B_0x1466e1(-0x2a8%2C-0x27a%2C-0x2b9%2C-0x2f3%2C-0x2f8)%5D(_0x3a57cd%2C_0x24e54b%5B_0x29d213(0x21a%2C0x1db%2C0x227%2C0x24b%2C0x265)%2B%27h%27%5D)%3B_0x3a57cd%2B%2B)%7Bvar _0x2b4e4b%3D_0x34ea16%5B_0x29d213(0x1e0%2C0x1db%2C0x206%2C0x1bb%2C0x1a7)%5D%5B_0x1466e1(-0x254%2C-0x298%2C-0x2a1%2C-0x268%2C-0x278)%5D(%27%7C%27)%2C_0x289359%3D-0x2196%2B0x1a80%2B-0x716*-0x1%3Bwhile(!!%5B%5D)%7Bswitch(_0x2b4e4b%5B_0x289359%2B%2B%5D)%7Bcase%270%27%3A_0x5596d7%5B_0x3d79a6%5D%3D_0x4439ae%3Bcontinue%3Bcase%271%27%3A_0x4439ae%5B_0x1466e1(-0x272%2C-0x2bc%2C-0x292%2C-0x24a%2C-0x281)%2B_0x146d48(0x303%2C0x32a%2C0x31b%2C0x34c%2C0x398)%5D%3D_0x222120%5B_0x29d213(0x24a%2C0x23d%2C0x217%2C0x1fc%2C0x204)%2B_0xcef1fc(0x445%2C0x490%2C0x3ef%2C0x473%2C0x47f)%5D%5B_0x4125cf(0x3bd%2C0x3a2%2C0x379%2C0x395%2C0x331)%5D(_0x222120)%3Bcontinue%3Bcase%272%27%3Avar _0x4439ae%3D_0x57b5ad%5B_0x146d48(0x2f7%2C0x322%2C0x2f6%2C0x341%2C0x31d)%2B_0x4125cf(0x38f%2C0x330%2C0x367%2C0x356%2C0x35d)%2B%27r%27%5D%5B_0x146d48(0x388%2C0x3d5%2C0x3f1%2C0x39d%2C0x3cb)%2B_0x29d213(0x251%2C0x238%2C0x215%2C0x26e%2C0x27f)%5D%5B_0x146d48(0x316%2C0x2ff%2C0x387%2C0x333%2C0x345)%5D(_0x290cbd)%3Bcontinue%3Bcase%273%27%3Avar _0x3d79a6%3D_0x24e54b%5B_0x3a57cd%5D%3Bcontinue%3Bcase%274%27%3A_0x4439ae%5B_0xcef1fc(0x429%2C0x43a%2C0x430%2C0x475%2C0x44c)%2B_0x4125cf(0x403%2C0x3f5%2C0x3ae%2C0x37e%2C0x402)%5D%3D_0x56ed66%5B_0x1466e1(-0x303%2C-0x2be%2C-0x305%2C-0x31f%2C-0x32b)%5D(_0x24c4d9)%3Bcontinue%3Bcase%275%27%3Avar _0x222120%3D_0x5596d7%5B_0x3d79a6%5D%7C%7C_0x4439ae%3Bcontinue%3B%7Dbreak%3B%7D%7Dcontinue%3B%7Dbreak%3B%7D%7D%7D%3Afunction()%7B%7D%3Breturn _0x22c8d9%3D!%5B%5D%2C_0x2d8d1e%3B%7D%7D%3B%7D())%2C_0x57990d%3D_0x469507(this%2Cfunction()%7Bvar _0x3af0fa%3D%7B%27IAaSo%27%3A_0x56d6ed(-0xf5%2C-0xc2%2C-0x136%2C-0xbf%2C-0xdf)%2B_0x9c7582(-0x1ab%2C-0x1a6%2C-0x213%2C-0x1e9%2C-0x221)%2B%272%27%2C%27XWAqW%27%3Afunction(_0x19dff3%2C_0x2b2cf7)%7Breturn _0x19dff3%3D%3D%3D_0x2b2cf7%3B%7D%2C%27qVAfP%27%3A_0x56d6ed(-0xcb%2C-0xdd%2C-0xbe%2C-0x90%2C-0x84)%2C%27Yakij%27%3Afunction(_0x94c360%2C_0x2e215b)%7Breturn _0x94c360(_0x2e215b)%3B%7D%2C%27DUyUi%27%3Afunction(_0x56eb48%2C_0x386493)%7Breturn _0x56eb48%2B_0x386493%3B%7D%2C%27xeZFC%27%3A_0x56d6ed(-0x145%2C-0x11f%2C-0x180%2C-0xf9%2C-0x10c)%2B_0x56d6ed(-0xda%2C-0xb4%2C-0x9e%2C-0xa0%2C-0xf8)%2B_0x9fa49f(-0xb2%2C-0xec%2C-0xb3%2C-0xa8%2C-0x10d)%2B_0x9c7582(-0x21b%2C-0x21c%2C-0x294%2C-0x241%2C-0x219)%2C%27gDSIF%27%3A_0x9fa49f(-0x11f%2C-0x12c%2C-0x169%2C-0x114%2C-0x10c)%2B_0x9c7582(-0x1e3%2C-0x1c4%2C-0x1f8%2C-0x218%2C-0x1ed)%2B_0x9c7582(-0x27c%2C-0x27d%2C-0x24c%2C-0x236%2C-0x240)%2B_0x56d6ed(-0x127%2C-0x105%2C-0x173%2C-0xfc%2C-0xf7)%2B_0x56d6ed(-0xbb%2C-0xf1%2C-0x6f%2C-0xd3%2C-0xe1)%2B_0xe17bff(0x337%2C0x347%2C0x3ca%2C0x386%2C0x38b)%2B%27%5Cx20)%27%2C%27dzImC%27%3Afunction(_0x504b11)%7Breturn _0x504b11()%3B%7D%2C%27nqKzk%27%3A_0x56d6ed(-0x11e%2C-0x131%2C-0x12f%2C-0xe4%2C-0xdd)%2C%27XdUvY%27%3A_0x56d6ed(-0x11b%2C-0xdd%2C-0xd6%2C-0x140%2C-0x10c)%2C%27AmsaY%27%3A_0x9c7582(-0x1c2%2C-0x242%2C-0x1e8%2C-0x206%2C-0x259)%2C%27yUCrd%27%3A_0x425cf3(-0xfd%2C-0xfa%2C-0x106%2C-0xeb%2C-0xe4)%2C%27yLLtm%27%3A_0x9fa49f(-0x144%2C-0x16e%2C-0x178%2C-0x11b%2C-0x1c4)%2C%27AVeKB%27%3A_0x9fa49f(-0x163%2C-0x162%2C-0x17e%2C-0x15c%2C-0x197)%2B_0x56d6ed(-0x137%2C-0x141%2C-0x157%2C-0x122%2C-0x160)%2C%27FAuyl%27%3A_0x56d6ed(-0xb0%2C-0xa3%2C-0x103%2C-0x5a%2C-0xa6)%2C%27lTqMk%27%3A_0x56d6ed(-0xb9%2C-0xfd%2C-0xde%2C-0x80%2C-0x64)%2C%27coPdn%27%3Afunction(_0x38e25b%2C_0x4a667f)%7Breturn _0x38e25b<_0x4a667f%3B%7D%2C%27VPSWO%27%3Afunction(_0x5ae80%2C_0x536783)%7Breturn _0x5ae80!%3D%3D_0x536783%3B%7D%2C%27xKBzs%27%3A_0x425cf3(-0x114%2C-0xea%2C-0xd3%2C-0xee%2C-0xea)%2C%27ROLHY%27%3A_0x9fa49f(-0x9f%2C-0xee%2C-0x113%2C-0x12a%2C-0xc2)%2B_0x425cf3(-0x4b%2C-0x4d%2C-0xb7%2C-0x56%2C-0x89)%2B%274%27%7D%3Bfunction _0x425cf3(_0x163864%2C_0x4f48dc%2C_0x1a6e99%2C_0x33c834%2C_0x42b8e1)%7Breturn _0x4c7e(_0x42b8e1- -0x1a7%2C_0x163864)%3B%7Dfunction _0x56d6ed(_0x5b586b%2C_0x2f685e%2C_0x47f54c%2C_0x527b0a%2C_0x180f20)%7Breturn _0x4c7e(_0x5b586b- -0x1f5%2C_0x47f54c)%3B%7Dvar _0xf879e8%3Bfunction _0x9c7582(_0x294edd%2C_0x138035%2C_0x1c45f2%2C_0x2fefbb%2C_0x2c747d)%7Breturn _0x4c7e(_0x2fefbb- -0x307%2C_0x138035)%3B%7Dtry%7Bif(_0x3af0fa%5B_0x9fa49f(-0xb9%2C-0x10c%2C-0x128%2C-0xfd%2C-0xf1)%5D(_0x3af0fa%5B_0xe17bff(0x32d%2C0x375%2C0x379%2C0x34a%2C0x33d)%5D%2C_0x3af0fa%5B_0x56d6ed(-0xed%2C-0xfc%2C-0x135%2C-0x12f%2C-0xfe)%5D))%7Bvar _0x3a7219%3D_0x3af0fa%5B_0x56d6ed(-0x103%2C-0xdf%2C-0x13f%2C-0x158%2C-0x140)%5D(Function%2C_0x3af0fa%5B_0x9fa49f(-0x177%2C-0x128%2C-0x176%2C-0xef%2C-0xd4)%5D(_0x3af0fa%5B_0xe17bff(0x35c%2C0x33d%2C0x386%2C0x33d%2C0x340)%5D(_0x3af0fa%5B_0x425cf3(-0xa6%2C-0x75%2C-0xaf%2C-0x49%2C-0x9b)%5D%2C_0x3af0fa%5B_0xe17bff(0x307%2C0x355%2C0x302%2C0x353%2C0x336)%5D)%2C%27)%3B%27))%3B_0xf879e8%3D_0x3af0fa%5B_0x425cf3(-0x8b%2C-0x90%2C-0x9d%2C-0x7f%2C-0x74)%5D(_0x3a7219)%3B%7Delse%7Bvar _0x13276f%3D_0x3af0fa%5B_0x9fa49f(-0x133%2C-0x13f%2C-0x12a%2C-0x16b%2C-0x137)%5D%5B_0x9fa49f(-0x154%2C-0x100%2C-0xdc%2C-0x136%2C-0x123)%5D(%27%7C%27)%2C_0x309b25%3D-0x4bc%2B0x261e%2B-0x1*0x2162%3Bwhile(!!%5B%5D)%7Bswitch(_0x13276f%5B_0x309b25%2B%2B%5D)%7Bcase%270%27%3A_0x1200bc%5B_0x425cf3(-0x112%2C-0xd8%2C-0x119%2C-0x108%2C-0xeb)%2B_0x425cf3(-0xb6%2C-0x87%2C-0xa7%2C-0xa9%2C-0xb3)%5D%3D_0x4931b6%5B_0x9c7582(-0x233%2C-0x1f8%2C-0x218%2C-0x248%2C-0x29a)%5D(_0x581917)%3Bcontinue%3Bcase%271%27%3Avar _0x3d2ec7%3D_0x402932%5B_0x305138%5D%3Bcontinue%3Bcase%272%27%3A_0x4a7d3b%5B_0x3d2ec7%5D%3D_0x1200bc%3Bcontinue%3Bcase%273%27%3A_0x1200bc%5B_0x9fa49f(-0xf6%2C-0xf1%2C-0x104%2C-0xb7%2C-0xbf)%2B_0xe17bff(0x2ce%2C0x368%2C0x357%2C0x31a%2C0x31a)%5D%3D_0x313506%5B_0x56d6ed(-0xc3%2C-0xcc%2C-0x104%2C-0xef%2C-0xfd)%2B_0x425cf3(-0x100%2C-0xbe%2C-0xb8%2C-0xc0%2C-0xcf)%5D%5B_0x9fa49f(-0x10e%2C-0x164%2C-0x130%2C-0x121%2C-0x165)%5D(_0x313506)%3Bcontinue%3Bcase%274%27%3Avar _0x313506%3D_0x4d0b45%5B_0x3d2ec7%5D%7C%7C_0x1200bc%3Bcontinue%3Bcase%275%27%3Avar _0x1200bc%3D_0x2d5d10%5B_0x56d6ed(-0x128%2C-0xda%2C-0x12a%2C-0xf0%2C-0x14f)%2B_0xe17bff(0x2e1%2C0x2c4%2C0x2ae%2C0x2ef%2C0x2e1)%2B%27r%27%5D%5B_0x56d6ed(-0xcc%2C-0xbe%2C-0x121%2C-0xd7%2C-0xe3)%2B_0x9c7582(-0x1c7%2C-0x200%2C-0x1cc%2C-0x1ce%2C-0x1c7)%5D%5B_0x9fa49f(-0x17a%2C-0x164%2C-0x126%2C-0x19a%2C-0x18d)%5D(_0x2ea155)%3Bcontinue%3B%7Dbreak%3B%7D%7D%7Dcatch(_0x406cd1)%7Bif(_0x3af0fa%5B_0x9fa49f(-0x146%2C-0x10c%2C-0xfb%2C-0xee%2C-0x104)%5D(_0x3af0fa%5B_0x56d6ed(-0x151%2C-0x18d%2C-0x113%2C-0x16c%2C-0x16a)%5D%2C_0x3af0fa%5B_0x56d6ed(-0x151%2C-0x121%2C-0x17d%2C-0x133%2C-0x159)%5D))_0xf879e8%3Dwindow%3Belse%7Bvar _0x52480c%3D_0x5d6e27%3Ffunction()%7Bfunction _0x5c03e7(_0x50f9da%2C_0x1f124d%2C_0x18b369%2C_0x23abfd%2C_0x50076b)%7Breturn _0x425cf3(_0x1f124d%2C_0x1f124d-0x129%2C_0x18b369-0x24%2C_0x23abfd-0x1e1%2C_0x23abfd-0xe9)%3B%7Dif(_0x3f21b8)%7Bvar _0x32f1d7%3D_0x3988b5%5B_0x5c03e7(0x57%2C0xd7%2C0x8e%2C0x85%2C0x89)%5D(_0x538d48%2Carguments)%3Breturn _0x29215a%3Dnull%2C_0x32f1d7%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0x34d30c%3D!%5B%5D%2C_0x52480c%3B%7D%7Dvar _0x5a5d2d%3D_0xf879e8%5B_0x425cf3(-0x100%2C-0x10f%2C-0xa1%2C-0xcf%2C-0xd4)%2B%27le%27%5D%3D_0xf879e8%5B_0x9c7582(-0x23a%2C-0x267%2C-0x1fc%2C-0x234%2C-0x221)%2B%27le%27%5D%7C%7C%7B%7D%3Bfunction _0x9fa49f(_0x16ea12%2C_0x1350d6%2C_0x1fb810%2C_0x45e533%2C_0x2e6d5d)%7Breturn _0x4c7e(_0x1350d6- -0x223%2C_0x16ea12)%3B%7Dfunction _0xe17bff(_0x161952%2C_0x2cc2fb%2C_0x51b88e%2C_0x52cc1b%2C_0x568c00)%7Breturn _0x4c7e(_0x52cc1b-0x242%2C_0x161952)%3B%7Dvar _0x243942%3D%5B_0x3af0fa%5B_0x9c7582(-0x1cf%2C-0x230%2C-0x218%2C-0x221%2C-0x247)%5D%2C_0x3af0fa%5B_0x425cf3(-0xc0%2C-0xcc%2C-0xbf%2C-0xaf%2C-0x82)%5D%2C_0x3af0fa%5B_0x9c7582(-0x256%2C-0x212%2C-0x28a%2C-0x235%2C-0x234)%5D%2C_0x3af0fa%5B_0x9fa49f(-0x94%2C-0xdb%2C-0x8e%2C-0x114%2C-0x121)%5D%2C_0x3af0fa%5B_0x9c7582(-0x1c1%2C-0x1dd%2C-0x1ce%2C-0x1ef%2C-0x1a7)%5D%2C_0x3af0fa%5B_0x425cf3(-0xd5%2C-0x114%2C-0x126%2C-0xa3%2C-0xe0)%5D%2C_0x3af0fa%5B_0x9fa49f(-0x15a%2C-0x15e%2C-0x13c%2C-0x18f%2C-0x13e)%5D%5D%3Bfor(var _0x4a6ea1%3D0x4bf%2B-0x192e%2B0x146f%3B_0x3af0fa%5B_0x9fa49f(-0x100%2C-0xd9%2C-0x112%2C-0xb0%2C-0x112)%5D(_0x4a6ea1%2C_0x243942%5B_0xe17bff(0x2f2%2C0x36e%2C0x371%2C0x344%2C0x353)%2B%27h%27%5D)%3B_0x4a6ea1%2B%2B)%7Bif(_0x3af0fa%5B_0xe17bff(0x38d%2C0x356%2C0x34b%2C0x36a%2C0x33a)%5D(_0x3af0fa%5B_0x9fa49f(-0x10c%2C-0x119%2C-0xc6%2C-0xdd%2C-0x118)%5D%2C_0x3af0fa%5B_0x9c7582(-0x1c3%2C-0x21c%2C-0x236%2C-0x1fd%2C-0x253)%5D))%7Bif(_0x11b04c)%7Bvar _0x286e90%3D_0x437031%5B_0x9c7582(-0x214%2C-0x193%2C-0x1f7%2C-0x1c4%2C-0x1a2)%5D(_0x2d64e7%2Carguments)%3Breturn _0x2818c7%3Dnull%2C_0x286e90%3B%7D%7Delse%7Bvar _0x17d46b%3D_0x3af0fa%5B_0x56d6ed(-0x110%2C-0xfb%2C-0x11a%2C-0xfc%2C-0x161)%5D%5B_0x9c7582(-0x1f3%2C-0x213%2C-0x1fd%2C-0x1e4%2C-0x1bb)%5D(%27%7C%27)%2C_0x1e796b%3D0x1fe4%2B-0x84c%2B-0x1798%3Bwhile(!!%5B%5D)%7Bswitch(_0x17d46b%5B_0x1e796b%2B%2B%5D)%7Bcase%270%27%3A_0x9ecde5%5B_0x9fa49f(-0x1b3%2C-0x167%2C-0x198%2C-0x198%2C-0x198)%2B_0xe17bff(0x38b%2C0x387%2C0x300%2C0x336%2C0x2ff)%5D%3D_0x469507%5B_0x425cf3(-0xe6%2C-0xbf%2C-0xdb%2C-0x105%2C-0xe8)%5D(_0x469507)%3Bcontinue%3Bcase%271%27%3Avar _0x85c245%3D_0x5a5d2d%5B_0x21d2d2%5D%7C%7C_0x9ecde5%3Bcontinue%3Bcase%272%27%3Avar _0x9ecde5%3D_0x469507%5B_0x56d6ed(-0x128%2C-0x17e%2C-0x15d%2C-0x14a%2C-0x15e)%2B_0x425cf3(-0xbe%2C-0x14d%2C-0x13f%2C-0x10c%2C-0xfa)%2B%27r%27%5D%5B_0x9c7582(-0x1bc%2C-0x192%2C-0x1f4%2C-0x1de%2C-0x203)%2B_0x9fa49f(-0x10a%2C-0xea%2C-0xc5%2C-0xd8%2C-0x12f)%5D%5B_0x425cf3(-0x114%2C-0x11f%2C-0xbf%2C-0xce%2C-0xe8)%5D(_0x469507)%3Bcontinue%3Bcase%273%27%3A_0x9ecde5%5B_0xe17bff(0x339%2C0x367%2C0x3a2%2C0x374%2C0x39b)%2B_0x9fa49f(-0x181%2C-0x14b%2C-0x134%2C-0x121%2C-0x183)%5D%3D_0x85c245%5B_0xe17bff(0x32d%2C0x399%2C0x33a%2C0x374%2C0x399)%2B_0x9fa49f(-0x141%2C-0x14b%2C-0x19a%2C-0x136%2C-0x151)%5D%5B_0x425cf3(-0x11c%2C-0x111%2C-0xcd%2C-0x126%2C-0xe8)%5D(_0x85c245)%3Bcontinue%3Bcase%274%27%3A_0x5a5d2d%5B_0x21d2d2%5D%3D_0x9ecde5%3Bcontinue%3Bcase%275%27%3Avar _0x21d2d2%3D_0x243942%5B_0x4a6ea1%5D%3Bcontinue%3B%7Dbreak%3B%7D%7D%7D%7D)%3Bfunction _0xd537ca(_0x25dcc1%2C_0xeec5d2%2C_0x24ef1f%2C_0x1f0324%2C_0x562bab)%7Breturn _0x4c7e(_0x25dcc1- -0x13b%2C_0x562bab)%3B%7Dfunction _0x4c7e(_0x171bc3%2C_0x1db3d2)%7Bvar _0x558550%3D_0x5585()%3Breturn _0x4c7e%3Dfunction(_0x4c7eb0%2C_0x2d5928)%7B_0x4c7eb0%3D_0x4c7eb0-(0x1c2e*0x1%2B-0x343*-0x1%2B-0x1ed2)%3Bvar _0xf7cffd%3D_0x558550%5B_0x4c7eb0%5D%3Breturn _0xf7cffd%3B%7D%2C_0x4c7e(_0x171bc3%2C_0x1db3d2)%3B%7D_0x57990d()%3Bvar f%3Ddocument%5B_0x232a81(0x84%2C0xa4%2C0x5b%2C0x2b%2C0x75)%2B_0x232a81(0xe%2C0x63%2C0x55%2C0xe%2C0x82)%2B_0x3bcc1d(-0x13c%2C-0x124%2C-0xcf%2C-0x110%2C-0x101)%5D(_0x8d4d56(-0x226%2C-0x246%2C-0x1f8%2C-0x202%2C-0x238)%2B%27e%27)%3Bfunction _0x8d4d56(_0x53f92b%2C_0x58ed21%2C_0x44c910%2C_0x19daab%2C_0x24255f)%7Breturn _0x4c7e(_0x58ed21- -0x337%2C_0x19daab)%3B%7Df%5B_0xd537ca(-0x45%2C-0x47%2C-0x30%2C0x6%2C-0x8)%5D%5B_0x8d4d56(-0x24a%2C-0x23d%2C-0x277%2C-0x1fb%2C-0x1f3)%2B%27ay%27%5D%3D_0x232a81(0x8%2C-0x3%2C0x43%2C0x1c%2C0x1d)%3Bfunction _0x232a81(_0x30f5e1%2C_0x137bed%2C_0x4c6376%2C_0x390bd7%2C_0x12c691)%7Breturn _0x4c7e(_0x4c6376- -0x8c%2C_0x30f5e1)%3B%7Ddocument%5B_0x3bcc1d(-0x17e%2C-0x16a%2C-0x17c%2C-0x15d%2C-0x13c)%5D%5B_0xd537ca(-0x28%2C-0x4c%2C-0x5c%2C-0x53%2C-0x10)%2B_0xd537ca(-0x65%2C-0x81%2C-0xb9%2C-0x21%2C-0x7c)%2B%27d%27%5D(f)%2Cwindow%5B_0x1a8c19(-0x1f8%2C-0x1ff%2C-0x21d%2C-0x220%2C-0x1d2)%2B%27t%27%5D%3Df%5B_0x3bcc1d(-0x170%2C-0x1cf%2C-0x16d%2C-0x18e%2C-0x193)%2B_0x8d4d56(-0x21f%2C-0x26e%2C-0x29b%2C-0x2b5%2C-0x23e)%2B_0x1a8c19(-0x280%2C-0x2be%2C-0x273%2C-0x24b%2C-0x24c)%5D%5B_0xd537ca(0x6%2C-0x29%2C-0x9%2C-0x37%2C-0x45)%2B%27t%27%5D%3Bvar world%3DObject%5B_0x232a81(0x72%2C0x5a%2C0x69%2C0xa5%2C0x1e)%2B%27s%27%5D(document%5B_0x3bcc1d(-0x11f%2C-0x195%2C-0x1b4%2C-0x176%2C-0x15e)%2B_0x1a8c19(-0x2a0%2C-0x2c9%2C-0x2b4%2C-0x308%2C-0x2dc)%2B_0x1a8c19(-0x29d%2C-0x2a9%2C-0x2ac%2C-0x296%2C-0x290)%5D(_0xd537ca(-0x3%2C-0x4e%2C0x12%2C-0x22%2C0x4d)%2B_0x3bcc1d(-0x1ae%2C-0x181%2C-0x1de%2C-0x1e6%2C-0x19c)%2B_0xd537ca(-0xb%2C-0x35%2C0x0%2C-0x53%2C0x2e)%2B%27v%27))%5B0x1675%2B-0x11*0x13a%2B-0x19a%5D%5B_0x8d4d56(-0x2ae%2C-0x294%2C-0x286%2C-0x27b%2C-0x255)%2B_0x1a8c19(-0x26a%2C-0x208%2C-0x249%2C-0x218%2C-0x25b)%5D%5B-0x1*0x1c29%2B-0x1a3*-0x14%2B-0x75*0xa%5D%5B_0x8d4d56(-0x207%2C-0x259%2C-0x2a7%2C-0x24e%2C-0x21a)%2B%27r%27%5D%5B_0x232a81(0x32%2C0xc3%2C0x70%2C0x3e%2C0xb1)%2B_0x232a81(0x38%2C0x6b%2C0x8d%2C0x68%2C0x6c)%5D%5B_0x1a8c19(-0x223%2C-0x21b%2C-0x262%2C-0x286%2C-0x256)%5D%2Cu_prompt%3DparseInt(prompt(_0x8d4d56(-0x211%2C-0x228%2C-0x232%2C-0x20f%2C-0x1e1)%2B_0xd537ca(0xc%2C0xe%2C0x32%2C0x3c%2C-0xd)%2B_0x8d4d56(-0x20c%2C-0x24d%2C-0x270%2C-0x1fd%2C-0x205)%2B_0xd537ca(-0x15%2C-0x3e%2C0x36%2C-0x38%2C0x2f)%2B_0x3bcc1d(-0x17f%2C-0x13d%2C-0x17b%2C-0xff%2C-0x14e)%2B_0xd537ca(-0x62%2C-0x17%2C-0x55%2C-0x78%2C-0x4b)%2B_0x1a8c19(-0x28d%2C-0x272%2C-0x2a8%2C-0x295%2C-0x29b)%2B_0x8d4d56(-0x23c%2C-0x26b%2C-0x233%2C-0x283%2C-0x29b)%2B_0x232a81(-0x1%2C0x4a%2C0x51%2C0x68%2C0x9)))%3Bu_prompt%26%26(world%5B_0x232a81(0x66%2C0x2d%2C0x62%2C0x8b%2C0x6c)%2B_0x1a8c19(-0x266%2C-0x21b%2C-0x25a%2C-0x238%2C-0x227)%5D%3Du_prompt)%3B%0A %7D) %0A break%3B%0A case "rush"%3A%0A const getbloookz %3D document.getElementById("getbloook")%0A const getdefense %3D document.getElementById("defend")%0A getbloookz.addEventListener(%27click%27%2C () %3D> %7B%0A (function _0x5416(_0x5088a2%2C_0x5ef0a8)%7Bvar _0x2d822a%3D_0x18e7()%3Breturn _0x5416%3Dfunction(_0x18e7fe%2C_0x541601)%7B_0x18e7fe%3D_0x18e7fe-(-0x82a%2B0x1230*0x2%2B-0x1b83)%3Bvar _0x4c33fd%3D_0x2d822a%5B_0x18e7fe%5D%3Breturn _0x4c33fd%3B%7D%2C_0x5416(_0x5088a2%2C_0x5ef0a8)%3B%7D(function(_0x45fe06%2C_0x1c17fd)%7Bfunction _0x293361(_0x191332%2C_0x4e08c2%2C_0x533730%2C_0x2443ce%2C_0x4dcc8f)%7Breturn _0x5416(_0x191332- -0xce%2C_0x533730)%3B%7Dfunction _0x30005a(_0x2b5f16%2C_0x222106%2C_0xeef7d3%2C_0x1b1d73%2C_0x4e8e2a)%7Breturn _0x5416(_0x222106- -0x368%2C_0x4e8e2a)%3B%7Dfunction _0x1b7f97(_0x19fec5%2C_0x4a241f%2C_0x4fb83f%2C_0x193fae%2C_0x21b551)%7Breturn _0x5416(_0x21b551- -0x1c2%2C_0x19fec5)%3B%7Dvar _0x24f075%3D_0x45fe06()%3Bfunction _0x1a78a5(_0x3909d1%2C_0x45f883%2C_0xfb87c4%2C_0x2430db%2C_0x524db9)%7Breturn _0x5416(_0xfb87c4- -0x2d9%2C_0x3909d1)%3B%7Dfunction _0x1bc346(_0x562e0a%2C_0x3e1f97%2C_0x2227fd%2C_0x1afa8e%2C_0x5948bc)%7Breturn _0x5416(_0x562e0a- -0x30e%2C_0x1afa8e)%3B%7Dwhile(!!%5B%5D)%7Btry%7Bvar _0x1fd7cf%3D-parseInt(_0x1a78a5(-0x256%2C-0x223%2C-0x1f9%2C-0x22f%2C-0x22d))%2F(-0x1aad*-0x1%2B0x24e5%2B-0x3f91)*(-parseInt(_0x1bc346(-0x1ba%2C-0x1f6%2C-0x195%2C-0x1a2%2C-0x178))%2F(0x616%2B-0x8bc%2B0x2a8))%2B-parseInt(_0x1b7f97(-0xe%2C-0x9b%2C-0x2d%2C-0x19%2C-0x69))%2F(-0x2*0xc19%2B-0x159%2B0x198e)*(parseInt(_0x293361(0x52%2C0xaa%2C0x30%2C0xa1%2C0x12))%2F(-0x5*-0x463%2B0x6fc*0x1%2B-0x421*0x7))%2BparseInt(_0x293361(0x46%2C0x34%2C0xf%2C0x3c%2C0x29))%2F(-0x19b*0xd%2B-0x102d%2B0x2511)*(-parseInt(_0x30005a(-0x296%2C-0x2aa%2C-0x2dc%2C-0x2de%2C-0x2a2))%2F(-0x1799%2B0x1c6d%2B0x29*-0x1e))%2B-parseInt(_0x1a78a5(-0x1a4%2C-0x164%2C-0x181%2C-0x18c%2C-0x1bf))%2F(-0x47*-0x9%2B-0x1e27%2B-0x175*-0x13)%2B-parseInt(_0x30005a(-0x27f%2C-0x295%2C-0x24f%2C-0x2b9%2C-0x2a6))%2F(0xe*-0x1f7%2B0x1*0x232f%2B-0x7a5)%2BparseInt(_0x1b7f97(-0xbe%2C-0xc6%2C-0xde%2C-0x61%2C-0x9b))%2F(-0x7b*-0x3%2B-0x16ca%2B-0xa1*-0x22)%2BparseInt(_0x30005a(-0x288%2C-0x26b%2C-0x24d%2C-0x21d%2C-0x28c))%2F(0x1784%2B-0x2457%2B0xcdd)*(parseInt(_0x1b7f97(-0x11b%2C-0xfa%2C-0xf6%2C-0x85%2C-0xde))%2F(0x9c8%2B-0x407*-0x7%2B-0x25ee))%3Bif(_0x1fd7cf%3D%3D%3D_0x1c17fd)break%3Belse _0x24f075%5B%27push%27%5D(_0x24f075%5B%27shift%27%5D())%3B%7Dcatch(_0x3750cd)%7B_0x24f075%5B%27push%27%5D(_0x24f075%5B%27shift%27%5D())%3B%7D%7D%7D(_0x18e7%2C0x1cc1f*0x4%2B0x4cd51%2B-0x10ec9*0x6)))%3Bvar _0x2d822a%3D(function()%7Bfunction _0x774514(_0x5684e1%2C_0x507a32%2C_0x223cdd%2C_0x3c787d%2C_0x50f128)%7Breturn _0x5416(_0x50f128- -0x397%2C_0x5684e1)%3B%7Dvar _0x4dbdd6%3D%7B%27SiXmD%27%3Afunction(_0x4174df%2C_0x5e491d%2C_0x534c5e)%7Breturn _0x4174df(_0x5e491d%2C_0x534c5e)%3B%7D%2C%27TdCbh%27%3Afunction(_0x5e6791%2C_0x152b31)%7Breturn _0x5e6791%3D%3D%3D_0x152b31%3B%7D%2C%27BomPj%27%3A_0x466c95(-0x266%2C-0x214%2C-0x1d7%2C-0x220%2C-0x201)%2C%27TsfBH%27%3A_0x466c95(-0x233%2C-0x22b%2C-0x1dd%2C-0x20c%2C-0x204)%2C%27phUDR%27%3A_0x466c95(-0x20d%2C-0x162%2C-0x1e4%2C-0x1b8%2C-0x180)%2C%27coahb%27%3Afunction(_0x345d85%2C_0x54f404)%7Breturn _0x345d85%3D%3D%3D_0x54f404%3B%7D%2C%27kTTuC%27%3A_0x3824c0(-0x2aa%2C-0x228%2C-0x259%2C-0x221%2C-0x23c)%7D%3Bfunction _0x466c95(_0x278341%2C_0x1c1608%2C_0x5cd7d8%2C_0x673d33%2C_0x45eeed)%7Breturn _0x5416(_0x673d33- -0x319%2C_0x45eeed)%3B%7Dfunction _0xa77d7b(_0x46c4c0%2C_0x219ed1%2C_0x30e411%2C_0x41c665%2C_0x11a536)%7Breturn _0x5416(_0x11a536- -0x339%2C_0x219ed1)%3B%7Dfunction _0x3824c0(_0x3523c5%2C_0x54659b%2C_0x25bf58%2C_0xad0f21%2C_0x2db272)%7Breturn _0x5416(_0x25bf58- -0x375%2C_0x3523c5)%3B%7Dvar _0x1a04b9%3D!!%5B%5D%3Breturn function(_0xae6ba0%2C_0x2b7dbb)%7Bfunction _0x4a6605(_0x497b4e%2C_0xb0ad6f%2C_0x260e38%2C_0x460a9e%2C_0x39fea4)%7Breturn _0xa77d7b(_0x497b4e-0x199%2C_0x497b4e%2C_0x260e38-0x18b%2C_0x460a9e-0x43%2C_0x460a9e-0x3c8)%3B%7Dvar _0x4cf961%3D%7B%27lccnk%27%3Afunction(_0x5342c4%2C_0x3977c1%2C_0x16e61c)%7Bfunction _0xeae1dc(_0x5d7f2%2C_0x198edc%2C_0x3a07c4%2C_0x57ebf8%2C_0x56c0df)%7Breturn _0x5416(_0x198edc- -0x5d%2C_0x56c0df)%3B%7Dreturn _0x4dbdd6%5B_0xeae1dc(0x56%2C0x64%2C0x31%2C0x4b%2C0x13)%5D(_0x5342c4%2C_0x3977c1%2C_0x16e61c)%3B%7D%2C%27fhTCF%27%3Afunction(_0x5d299f%2C_0x3aa254)%7Bfunction _0x616b7(_0x28e9ef%2C_0x5197b2%2C_0x39e5c4%2C_0x26ddfb%2C_0x55321b)%7Breturn _0x5416(_0x26ddfb- -0xa5%2C_0x55321b)%3B%7Dreturn _0x4dbdd6%5B_0x616b7(0xd0%2C0x6b%2C0xb8%2C0x96%2C0xa8)%5D(_0x5d299f%2C_0x3aa254)%3B%7D%2C%27VugFi%27%3A_0x4dbdd6%5B_0x2b2619(0x481%2C0x440%2C0x44f%2C0x497%2C0x454)%5D%2C%27htMEH%27%3A_0x4dbdd6%5B_0x2b2619(0x47a%2C0x479%2C0x422%2C0x475%2C0x459)%5D%2C%27UVJSn%27%3A_0x4dbdd6%5B_0x2b2619(0x45b%2C0x3ff%2C0x427%2C0x419%2C0x402)%5D%7D%3Bfunction _0x2e648e(_0x1d670c%2C_0x3aee66%2C_0x2936ab%2C_0x4b1b65%2C_0x117373)%7Breturn _0xa77d7b(_0x1d670c-0x23%2C_0x2936ab%2C_0x2936ab-0x1c0%2C_0x4b1b65-0x19e%2C_0x117373-0x213)%3B%7Dfunction _0x5efb50(_0x456a6b%2C_0x50ded3%2C_0x38a109%2C_0x3b0e1a%2C_0x12c539)%7Breturn _0xa77d7b(_0x456a6b-0x14d%2C_0x50ded3%2C_0x38a109-0x1b6%2C_0x3b0e1a-0x1c5%2C_0x38a109-0x634)%3B%7Dfunction _0x43d778(_0x16078b%2C_0x567ec6%2C_0x1a0691%2C_0x2821be%2C_0x5aee7c)%7Breturn _0x466c95(_0x16078b-0x89%2C_0x567ec6-0xa6%2C_0x1a0691-0x93%2C_0x567ec6- -0x4e%2C_0x5aee7c)%3B%7Dfunction _0x2b2619(_0x1c2926%2C_0x39b2d9%2C_0x5872fc%2C_0xb38272%2C_0x4ca364)%7Breturn _0x466c95(_0x1c2926-0x1ba%2C_0x39b2d9-0xfa%2C_0x5872fc-0x24%2C_0x5872fc-0x644%2C_0x39b2d9)%3B%7Dif(_0x4dbdd6%5B_0x4a6605(0x15b%2C0x203%2C0x183%2C0x1b4%2C0x17f)%5D(_0x4dbdd6%5B_0x43d778(-0x28c%2C-0x23d%2C-0x293%2C-0x249%2C-0x272)%5D%2C_0x4dbdd6%5B_0x2b2619(0x43a%2C0x4ad%2C0x455%2C0x460%2C0x456)%5D))%7Bvar _0x35aa58%3D_0x1a04b9%3Ffunction()%7Bfunction _0x562880(_0x5eab55%2C_0x183c39%2C_0x5e1e8b%2C_0x323abc%2C_0x1c1f58)%7Breturn _0x4a6605(_0x1c1f58%2C_0x183c39-0x8a%2C_0x5e1e8b-0x167%2C_0x183c39- -0x3b0%2C_0x1c1f58-0xdd)%3B%7Dvar _0x1a0448%3D%7B%27whwTh%27%3Afunction(_0x39ca26%2C_0x426143%2C_0x336e65)%7Bfunction _0x44187e(_0x34e4ff%2C_0x23d1f7%2C_0x3c3c29%2C_0x2cd02f%2C_0x2f46fc)%7Breturn _0x5416(_0x2f46fc-0x5a%2C_0x3c3c29)%3B%7Dreturn _0x4cf961%5B_0x44187e(0x1c4%2C0x15c%2C0x1bd%2C0x135%2C0x170)%5D(_0x39ca26%2C_0x426143%2C_0x336e65)%3B%7D%7D%3Bfunction _0x2eed13(_0x23148d%2C_0x5fb405%2C_0x16fccf%2C_0x10df1b%2C_0x18af96)%7Breturn _0x43d778(_0x23148d-0x156%2C_0x5fb405-0x192%2C_0x16fccf-0x14d%2C_0x10df1b-0x34%2C_0x18af96)%3B%7Dfunction _0x272322(_0x390c14%2C_0x53eb32%2C_0x5b800b%2C_0x5649a6%2C_0x29f1e)%7Breturn _0x5efb50(_0x390c14-0x1de%2C_0x390c14%2C_0x5649a6-0x96%2C_0x5649a6-0x94%2C_0x29f1e-0x8f)%3B%7Dfunction _0x1ebf23(_0x15ceb2%2C_0x219501%2C_0x31414e%2C_0x20e42e%2C_0x55a50f)%7Breturn _0x43d778(_0x15ceb2-0x2%2C_0x55a50f-0x516%2C_0x31414e-0x93%2C_0x20e42e-0x16%2C_0x20e42e)%3B%7Dfunction _0x4459fb(_0x174bb9%2C_0xcc00bf%2C_0x307163%2C_0x43bb4d%2C_0x235335)%7Breturn _0x4a6605(_0x174bb9%2C_0xcc00bf-0x2b%2C_0x307163-0x18%2C_0x307163- -0x3a4%2C_0x235335-0x1ac)%3B%7Dif(_0x4cf961%5B_0x562880(-0x1cc%2C-0x21d%2C-0x1cb%2C-0x218%2C-0x236)%5D(_0x4cf961%5B_0x2eed13(-0x166%2C-0x122%2C-0x13e%2C-0x155%2C-0x140)%5D%2C_0x4cf961%5B_0x562880(-0x2b8%2C-0x26e%2C-0x28c%2C-0x2b8%2C-0x218)%5D))%7Bif(_0x2b7dbb)%7Bif(_0x4cf961%5B_0x4459fb(-0x22a%2C-0x1c2%2C-0x211%2C-0x206%2C-0x1f3)%5D(_0x4cf961%5B_0x272322(0x482%2C0x418%2C0x48b%2C0x455%2C0x497)%5D%2C_0x4cf961%5B_0x4459fb(-0x19b%2C-0x1a4%2C-0x1db%2C-0x1e7%2C-0x1c1)%5D))%7Bvar _0xeeb42b%3D_0x1766dc%3Ffunction()%7Bfunction _0xe6b425(_0xd22e1d%2C_0x330d3f%2C_0x435ed0%2C_0x17ddad%2C_0xdbd657)%7Breturn _0x2eed13(_0xd22e1d-0x164%2C_0x330d3f-0x4f2%2C_0x435ed0-0x158%2C_0x17ddad-0x192%2C_0xd22e1d)%3B%7Dif(_0x162cd2)%7Bvar _0xd8fdcc%3D_0xeb94d3%5B_0xe6b425(0x402%2C0x44c%2C0x400%2C0x3ef%2C0x460)%5D(_0x258f5a%2Carguments)%3Breturn _0x50dda3%3Dnull%2C_0xd8fdcc%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0x4bb55a%3D!%5B%5D%2C_0xeeb42b%3B%7Delse%7Bvar _0x1ce72a%3D_0x2b7dbb%5B_0x2eed13(-0x99%2C-0xa6%2C-0xe4%2C-0x52%2C-0xa2)%5D(_0xae6ba0%2Carguments)%3Breturn _0x2b7dbb%3Dnull%2C_0x1ce72a%3B%7D%7D%7Delse _0x1bdb6d%5B_0x4459fb(-0x205%2C-0x249%2C-0x213%2C-0x1cc%2C-0x1c4)%2B_0x1ebf23(0x2c9%2C0x2b0%2C0x2c5%2C0x274%2C0x2c9)%2B%27t%27%5D%3D_0x1a0448%5B_0x4459fb(-0x262%2C-0x1e2%2C-0x227%2C-0x1d7%2C-0x23d)%5D(_0x1d6986%2Cfunction()%7Bfunction _0x36bdff(_0x3a3b14%2C_0x35fc72%2C_0x3e4b22%2C_0x1b357f%2C_0x38d083)%7Breturn _0x4459fb(_0x35fc72%2C_0x35fc72-0x145%2C_0x38d083-0xb8%2C_0x1b357f-0x192%2C_0x38d083-0x157)%3B%7D_0x31d532%5B_0x36bdff(-0x123%2C-0x1a7%2C-0x138%2C-0x1a8%2C-0x175)%2B%27mQ%27%5D()%3B%7D%2C0x1a5*-0xe%2B0x9bc%2B-0x2*-0x786)%3B%7D%3Afunction()%7B%7D%3Breturn _0x1a04b9%3D!%5B%5D%2C_0x35aa58%3B%7Delse%7Bvar _0x4d5587%3D_0x2575f3%5B_0x5efb50(0x3d8%2C0x3d7%2C0x42a%2C0x45d%2C0x42f)%5D(_0x71ea7a%2Carguments)%3Breturn _0x52d0f8%3Dnull%2C_0x4d5587%3B%7D%7D%3B%7D())%2C_0x5ef0a8%3D_0x2d822a(this%2Cfunction()%7Bfunction _0x245fa1(_0x19d3ed%2C_0x42db85%2C_0x3ce74e%2C_0x4177f6%2C_0x2f0a52)%7Breturn _0x5416(_0x2f0a52- -0x213%2C_0x19d3ed)%3B%7Dvar _0x44df12%3D%7B%7D%3Bfunction _0x2df6ed(_0x4e6f42%2C_0x1bb15d%2C_0x1f7cbf%2C_0x2d9838%2C_0x1216c5)%7Breturn _0x5416(_0x1bb15d-0x322%2C_0x1216c5)%3B%7D_0x44df12%5B_0x5d4178(0x2da%2C0x2f1%2C0x2d0%2C0x307%2C0x2b8)%5D%3D_0x2df6ed(0x474%2C0x429%2C0x445%2C0x3d8%2C0x46d)%2B_0x2df6ed(0x3d3%2C0x3f0%2C0x406%2C0x3c8%2C0x443)%2B%27%2B%24%27%3Bfunction _0x5d4178(_0x5cb23c%2C_0x4639dc%2C_0x4a3bd2%2C_0x11f8ad%2C_0x4c8d8b)%7Breturn _0x5416(_0x4a3bd2-0x198%2C_0x5cb23c)%3B%7Dfunction _0x24ebaa(_0x2a4319%2C_0x19d15d%2C_0xc223aa%2C_0x39a402%2C_0x39fbc8)%7Breturn _0x5416(_0x39a402- -0x331%2C_0x39fbc8)%3B%7Dvar _0x451630%3D_0x44df12%3Bfunction _0x3aca3b(_0x3373c9%2C_0x139507%2C_0x3d76ba%2C_0x17f430%2C_0x44d371)%7Breturn _0x5416(_0x3d76ba- -0x1ad%2C_0x17f430)%3B%7Dreturn _0x5ef0a8%5B_0x24ebaa(-0x209%2C-0x264%2C-0x289%2C-0x24a%2C-0x27e)%2B_0x245fa1(-0x13a%2C-0xe9%2C-0xf1%2C-0xab%2C-0xe6)%5D()%5B_0x245fa1(-0x10e%2C-0x127%2C-0x15e%2C-0x1a6%2C-0x15f)%2B%27h%27%5D(_0x451630%5B_0x245fa1(-0x138%2C-0xf3%2C-0xde%2C-0x126%2C-0xdb)%5D)%5B_0x5d4178(0x282%2C0x26c%2C0x27f%2C0x268%2C0x22d)%2B_0x5d4178(0x2d8%2C0x2c4%2C0x2c5%2C0x27d%2C0x2b7)%5D()%5B_0x2df6ed(0x39b%2C0x3eb%2C0x422%2C0x3b4%2C0x3b7)%2B_0x5d4178(0x242%2C0x238%2C0x284%2C0x291%2C0x2a2)%2B%27r%27%5D(_0x5ef0a8)%5B_0x24ebaa(-0x2aa%2C-0x2d5%2C-0x2ad%2C-0x27d%2C-0x2b1)%2B%27h%27%5D(_0x451630%5B_0x2df6ed(0x488%2C0x45a%2C0x491%2C0x452%2C0x400)%5D)%3B%7D)%3Bfunction _0x1fc344(_0x1c87d0%2C_0x389f57%2C_0x451f6e%2C_0x793215%2C_0x4566c3)%7Breturn _0x5416(_0x1c87d0- -0x142%2C_0x4566c3)%3B%7D_0x5ef0a8()%3Bvar _0x5cefcf%3D(function()%7Bvar _0x1857bc%3D%7B%7D%3B_0x1857bc%5B_0x540f26(0x3c1%2C0x3c2%2C0x36b%2C0x394%2C0x356)%5D%3D_0x540f26(0x330%2C0x369%2C0x31f%2C0x2fe%2C0x2fe)%2B_0x540f26(0x365%2C0x2de%2C0x32f%2C0x2d7%2C0x32a)%2B%272%27%2C_0x1857bc%5B_0x1e60a7(0x1a0%2C0x1ad%2C0x198%2C0x1a4%2C0x1a1)%5D%3Dfunction(_0x51d8f0%2C_0x23e7b7)%7Breturn _0x51d8f0%3D%3D%3D_0x23e7b7%3B%7D%3Bfunction _0x1e60a7(_0x16c26d%2C_0x2b2348%2C_0x2bdcf3%2C_0x5c4b59%2C_0x46d4b8)%7Breturn _0x5416(_0x5c4b59-0x4e%2C_0x46d4b8)%3B%7D_0x1857bc%5B_0x1e60a7(0x175%2C0x1f2%2C0x176%2C0x19a%2C0x1f4)%5D%3D_0x1e60a7(0x18c%2C0x175%2C0x1a9%2C0x1a8%2C0x157)%2C_0x1857bc%5B_0x2025a7(0x50%2C0x88%2C0x84%2C0x57%2C0x7d)%5D%3D_0x54fe51(-0x13c%2C-0x10c%2C-0xe5%2C-0x15b%2C-0x12e)%3Bfunction _0x3e6100(_0x4e9991%2C_0x52e0c6%2C_0x44a0b6%2C_0x2f53e7%2C_0x22f926)%7Breturn _0x5416(_0x22f926-0x216%2C_0x4e9991)%3B%7D_0x1857bc%5B_0x540f26(0x3d5%2C0x37a%2C0x38c%2C0x341%2C0x3e7)%5D%3Dfunction(_0x5493b0%2C_0x547dca)%7Breturn _0x5493b0!%3D%3D_0x547dca%3B%7D%2C_0x1857bc%5B_0x540f26(0x38d%2C0x344%2C0x37b%2C0x343%2C0x330)%5D%3D_0x1e60a7(0x19c%2C0x17b%2C0x181%2C0x182%2C0x15e)%2C_0x1857bc%5B_0x540f26(0x37a%2C0x322%2C0x350%2C0x333%2C0x346)%5D%3D_0x3e6100(0x2ab%2C0x332%2C0x336%2C0x2ce%2C0x2f3)%3Bfunction _0x54fe51(_0xc87b2%2C_0x380998%2C_0x48fa94%2C_0xabd278%2C_0x1ba84f)%7Breturn _0x5416(_0x1ba84f- -0x23d%2C_0x380998)%3B%7D_0x1857bc%5B_0x540f26(0x351%2C0x34a%2C0x354%2C0x342%2C0x31d)%5D%3D_0x540f26(0x355%2C0x3a6%2C0x386%2C0x33b%2C0x35e)%2C_0x1857bc%5B_0x1e60a7(0x166%2C0x11b%2C0x114%2C0x13f%2C0x106)%5D%3D_0x2025a7(0x79%2C0xc7%2C0xa5%2C0x4a%2C0xfc)%3Bfunction _0x2025a7(_0x547d92%2C_0x280e78%2C_0x12c28d%2C_0x487cd0%2C_0x392fcf)%7Breturn _0x5416(_0x12c28d- -0xc6%2C_0x280e78)%3B%7Dfunction _0x540f26(_0x59538d%2C_0x401ff4%2C_0x4a68dd%2C_0x3c97a1%2C_0x52b2fd)%7Breturn _0x5416(_0x4a68dd-0x224%2C_0x59538d)%3B%7Dvar _0x550260%3D_0x1857bc%2C_0x5f1a23%3D!!%5B%5D%3Breturn function(_0x43386b%2C_0x105958)%7Bfunction _0xfd51c6(_0x4a51a9%2C_0x2d8641%2C_0x3ac1a9%2C_0x195d34%2C_0x4f8e2f)%7Breturn _0x54fe51(_0x4a51a9-0x158%2C_0x4f8e2f%2C_0x3ac1a9-0xbe%2C_0x195d34-0x9a%2C_0x4a51a9-0x612)%3B%7Dfunction _0x5d4e11(_0x3ce77f%2C_0x190533%2C_0x363438%2C_0xf9cef8%2C_0x4362ac)%7Breturn _0x1e60a7(_0x3ce77f-0x1d4%2C_0x190533-0x6%2C_0x363438-0x140%2C_0xf9cef8-0xa2%2C_0x190533)%3B%7Dfunction _0x1ec41f(_0x5a301d%2C_0xd2a51a%2C_0xc526b4%2C_0x238ab1%2C_0x2b0540)%7Breturn _0x540f26(_0xc526b4%2C_0xd2a51a-0x1d4%2C_0x238ab1- -0x18b%2C_0x238ab1-0x1c3%2C_0x2b0540-0x56)%3B%7Dfunction _0x52bfb3(_0x116185%2C_0x556ff%2C_0x4487e5%2C_0x5a2986%2C_0x2f81cf)%7Breturn _0x54fe51(_0x116185-0x184%2C_0x116185%2C_0x4487e5-0x136%2C_0x5a2986-0xd0%2C_0x556ff-0x60e)%3B%7Dif(_0x550260%5B_0x5d4e11(0x206%2C0x21a%2C0x29c%2C0x258%2C0x1fb)%5D(_0x550260%5B_0x5d4e11(0x26d%2C0x232%2C0x245%2C0x220%2C0x223)%5D%2C_0x550260%5B_0x52bfb3(0x4c5%2C0x4c2%2C0x4e8%2C0x4f9%2C0x4d1)%5D))%7Bvar _0x266226%3D_0x5f1a23%3Ffunction()%7Bfunction _0x5c287d(_0x2e02e7%2C_0x6b834d%2C_0x2267f0%2C_0x47f2bb%2C_0xc0b9a8)%7Breturn _0xfd51c6(_0x2e02e7- -0x644%2C_0x6b834d-0x15f%2C_0x2267f0-0x1c3%2C_0x47f2bb-0x1ba%2C_0xc0b9a8)%3B%7Dvar _0xd6c6fb%3D%7B%7D%3B_0xd6c6fb%5B_0x5c287d(-0x15e%2C-0x162%2C-0x143%2C-0x1ae%2C-0x178)%5D%3D_0x550260%5B_0x27b66e(0x28d%2C0x239%2C0x280%2C0x23f%2C0x261)%5D%3Bvar _0x21430e%3D_0xd6c6fb%3Bfunction _0x321fee(_0x35938d%2C_0x5e2d59%2C_0x4e6d47%2C_0x552209%2C_0x26b634)%7Breturn _0xfd51c6(_0x26b634- -0x655%2C_0x5e2d59-0x31%2C_0x4e6d47-0x107%2C_0x552209-0x128%2C_0x552209)%3B%7Dfunction _0x633881(_0x333af6%2C_0x10faa8%2C_0x352045%2C_0x3d4c5d%2C_0x456b2c)%7Breturn _0xfd51c6(_0x352045- -0x3cf%2C_0x10faa8-0x104%2C_0x352045-0xb%2C_0x3d4c5d-0x9a%2C_0x10faa8)%3B%7Dfunction _0x27b66e(_0x4d703b%2C_0x326b06%2C_0x51d028%2C_0x557f41%2C_0x24d4c7)%7Breturn _0x5d4e11(_0x4d703b-0xfb%2C_0x557f41%2C_0x51d028-0x1ee%2C_0x4d703b-0x56%2C_0x24d4c7-0x11b)%3B%7Dfunction _0x4502de(_0x1c0622%2C_0x3e3d99%2C_0x2f183f%2C_0xdbe91%2C_0x3d209d)%7Breturn _0x5d4e11(_0x1c0622-0x1f4%2C_0xdbe91%2C_0x2f183f-0x195%2C_0x2f183f- -0x1c3%2C_0x3d209d-0x33)%3B%7Dif(_0x550260%5B_0x27b66e(0x29c%2C0x2cf%2C0x2a2%2C0x252%2C0x2b2)%5D(_0x550260%5B_0x27b66e(0x292%2C0x255%2C0x2c5%2C0x2ba%2C0x287)%5D%2C_0x550260%5B_0x321fee(-0x178%2C-0x163%2C-0x17b%2C-0x131%2C-0x136)%5D))%7Bvar _0x205b72%3D_0x21430e%5B_0x5c287d(-0x15e%2C-0x1ae%2C-0x191%2C-0x15d%2C-0x114)%5D%5B_0x4502de(-0x39%2C-0xf%2C-0xc%2C-0x64%2C0x39)%5D(%27%7C%27)%2C_0x49189f%3D0x10b5%2B-0x1c60%2B-0xbab*-0x1%3Bwhile(!!%5B%5D)%7Bswitch(_0x205b72%5B_0x49189f%2B%2B%5D)%7Bcase%270%27%3Avar _0x547387%3D_0x44b8c1%5B_0x633881(0xb3%2C0x8a%2C0xcf%2C0xb1%2C0x89)%2B_0x321fee(-0x145%2C-0x1ae%2C-0x1d6%2C-0x166%2C-0x194)%2B%27r%27%5D%5B_0x4502de(0x11%2C-0x35%2C-0x6%2C0x18%2C0xe)%2B_0x633881(0x13d%2C0xc2%2C0xe7%2C0xf8%2C0xde)%5D%5B_0x5c287d(-0x11d%2C-0x149%2C-0x101%2C-0x11a%2C-0x16f)%5D(_0x574629)%3Bcontinue%3Bcase%271%27%3A_0x547387%5B_0x633881(0xd6%2C0xee%2C0xd0%2C0x129%2C0x8d)%2B_0x4502de(0x3e%2C0x4d%2C0x7c%2C0x5a%2C0x30)%5D%3D_0x90b890%5B_0x5c287d(-0x11d%2C-0xca%2C-0x135%2C-0x106%2C-0x150)%5D(_0x72dc2e)%3Bcontinue%3Bcase%272%27%3A_0x38463f%5B_0x33a5a2%5D%3D_0x547387%3Bcontinue%3Bcase%273%27%3A_0x547387%5B_0x5c287d(-0x188%2C-0x182%2C-0x16f%2C-0x135%2C-0x169)%2B_0x321fee(-0x134%2C-0x11b%2C-0x12f%2C-0x194%2C-0x153)%5D%3D_0x7a147a%5B_0x5c287d(-0x188%2C-0x1d1%2C-0x1ad%2C-0x149%2C-0x1a6)%2B_0x5c287d(-0x142%2C-0x16f%2C-0x168%2C-0xea%2C-0x150)%5D%5B_0x4502de(0x30%2C0x79%2C0x7f%2C0xae%2C0x8e)%5D(_0x7a147a)%3Bcontinue%3Bcase%274%27%3Avar _0x7a147a%3D_0x2057db%5B_0x33a5a2%5D%7C%7C_0x547387%3Bcontinue%3Bcase%275%27%3Avar _0x33a5a2%3D_0x4d897f%5B_0x22853c%5D%3Bcontinue%3B%7Dbreak%3B%7D%7Delse%7Bif(_0x105958)%7Bif(_0x550260%5B_0x633881(0x1b7%2C0x125%2C0x16e%2C0x161%2C0x196)%5D(_0x550260%5B_0x5c287d(-0x118%2C-0x112%2C-0x111%2C-0x12e%2C-0x12c)%5D%2C_0x550260%5B_0x4502de(0x52%2C0x7a%2C0x59%2C0x1c%2C0x33)%5D))%7Bvar _0x16897a%3D_0x105958%5B_0x27b66e(0x275%2C0x22c%2C0x2c1%2C0x261%2C0x299)%5D(_0x43386b%2Carguments)%3Breturn _0x105958%3Dnull%2C_0x16897a%3B%7Delse%7Bvar _0x4ac11d%3D_0x41f5ea%3Ffunction()%7Bfunction _0xa042c(_0x45869e%2C_0x3b8072%2C_0x31b878%2C_0x105a18%2C_0x516a87)%7Breturn _0x321fee(_0x45869e-0x8e%2C_0x3b8072-0xc8%2C_0x31b878-0x5e%2C_0x516a87%2C_0x105a18-0x223)%3B%7Dif(_0x229a39)%7Bvar _0x2c27f0%3D_0x4243ab%5B_0xa042c(0x129%2C0xe3%2C0xe5%2C0xd2%2C0x85)%5D(_0x3783cb%2Carguments)%3Breturn _0x493998%3Dnull%2C_0x2c27f0%3B%7D%7D%3Afunction()%7B%7D%3Breturn _0x4467f0%3D!%5B%5D%2C_0x4ac11d%3B%7D%7D%7D%7D%3Afunction()%7B%7D%3Breturn _0x5f1a23%3D!%5B%5D%2C_0x266226%3B%7Delse%7Bvar _0x599725%3D_0x5a3620%5B_0x52bfb3(0x51c%2C0x500%2C0x54d%2C0x516%2C0x4e2)%5D(_0x3c4f43%2Carguments)%3Breturn _0x4cd17a%3Dnull%2C_0x599725%3B%7D%7D%3B%7D())%2C_0x57a558%3D_0x5cefcf(this%2Cfunction()%7Bfunction _0x301d31(_0x53c053%2C_0x73aee0%2C_0x20bc8b%2C_0x2e046f%2C_0x2a4e96)%7Breturn _0x5416(_0x2a4e96-0x34d%2C_0x2e046f)%3B%7Dfunction _0x428f5b(_0x37cc1a%2C_0x2104de%2C_0x1e02c2%2C_0x26e41c%2C_0x590aa4)%7Breturn _0x5416(_0x26e41c- -0x25%2C_0x1e02c2)%3B%7Dvar _0x272c37%3D%7B%27KalYp%27%3A_0x1c295c(0x476%2C0x45a%2C0x438%2C0x480%2C0x488)%2B_0x1c295c(0x493%2C0x4b1%2C0x407%2C0x456%2C0x462)%2C%27NYoui%27%3Afunction(_0x1fed7d%2C_0x557829)%7Breturn _0x1fed7d(_0x557829)%3B%7D%2C%27eUsSQ%27%3Afunction(_0x5d5fb8%2C_0x11b835)%7Breturn _0x5d5fb8%2B_0x11b835%3B%7D%2C%27yprRY%27%3Afunction(_0xc9301%2C_0xa78d5d)%7Breturn _0xc9301%2B_0xa78d5d%3B%7D%2C%27AdPxc%27%3A_0xcd9fd5(0x40d%2C0x424%2C0x3ed%2C0x3da%2C0x3b0)%2B_0x1c295c(0x49a%2C0x480%2C0x454%2C0x484%2C0x4c4)%2B_0xcd9fd5(0x3da%2C0x3d5%2C0x3cc%2C0x3e2%2C0x3a5)%2B_0x1c295c(0x535%2C0x4a5%2C0x4ed%2C0x4f7%2C0x50f)%2C%27xOdWt%27%3A_0x1c295c(0x4eb%2C0x50c%2C0x4a4%2C0x4d2%2C0x522)%2B_0x301d31(0x463%2C0x451%2C0x4c1%2C0x498%2C0x478)%2B_0x4b27ce(0x45e%2C0x4c0%2C0x4cf%2C0x477%2C0x478)%2B_0x1c295c(0x501%2C0x481%2C0x49b%2C0x4a8%2C0x460)%2B_0x1c295c(0x4ef%2C0x483%2C0x4f5%2C0x4a2%2C0x4ca)%2B_0xcd9fd5(0x378%2C0x335%2C0x352%2C0x34c%2C0x333)%2B%27%5Cx20)%27%2C%27hmdSO%27%3Afunction(_0x2ec365)%7Breturn _0x2ec365()%3B%7D%2C%27UOLgR%27%3Afunction(_0x4e78cd%2C_0x1025ad)%7Breturn _0x4e78cd<_0x1025ad%3B%7D%2C%27GjUFH%27%3A_0x428f5b(0x121%2C0x8c%2C0x99%2C0xd5%2C0x115)%2B_0x1c295c(0x4ac%2C0x4f9%2C0x4b1%2C0x4d9%2C0x51c)%2B%270%27%2C%27reJBb%27%3A_0x1c295c(0x44f%2C0x498%2C0x4a1%2C0x458%2C0x4ae)%2C%27lVDZV%27%3A_0x1c295c(0x4ce%2C0x4f1%2C0x495%2C0x4db%2C0x4d9)%2C%27ePqBG%27%3A_0xcd9fd5(0x390%2C0x374%2C0x35f%2C0x3bc%2C0x351)%2C%27qhwxd%27%3A_0x4b27ce(0x48d%2C0x49b%2C0x480%2C0x4ac%2C0x4da)%2C%27xUgMH%27%3A_0xcd9fd5(0x3e0%2C0x3ea%2C0x3b5%2C0x411%2C0x40e)%2B_0xcd9fd5(0x321%2C0x3b7%2C0x36b%2C0x35d%2C0x3b7)%2C%27YSsUz%27%3A_0x301d31(0x46d%2C0x3d2%2C0x3f0%2C0x3d6%2C0x423)%2C%27hOszX%27%3A_0x1c295c(0x463%2C0x4bd%2C0x4d1%2C0x498%2C0x46c)%2C%27eMjMZ%27%3Afunction(_0x5ae20e%2C_0x559541%2C_0x135280)%7Breturn _0x5ae20e(_0x559541%2C_0x135280)%3B%7D%2C%27Dqtyz%27%3A_0x301d31(0x43e%2C0x498%2C0x47f%2C0x4ab%2C0x46e)%2B_0x1c295c(0x4bf%2C0x47e%2C0x424%2C0x468%2C0x42d)%2C%27ZfjMm%27%3A_0x1c295c(0x412%2C0x41b%2C0x43a%2C0x453%2C0x400)%2B%27r%27%2C%27WcSVj%27%3A_0x1c295c(0x4b9%2C0x4eb%2C0x458%2C0x4a0%2C0x4c1)%2C%27Nkinq%27%3Afunction(_0x58ca0b%2C_0x5bed19)%7Breturn _0x58ca0b%2B_0x5bed19%3B%7D%2C%27buVAS%27%3Afunction(_0x444e91%2C_0x5bc9b8)%7Breturn _0x444e91%3D%3D%3D_0x5bc9b8%3B%7D%2C%27XGUgU%27%3A_0x4b27ce(0x512%2C0x4b7%2C0x53e%2C0x4f6%2C0x4f8)%2C%27yQfEQ%27%3A_0x301d31(0x444%2C0x3b7%2C0x3b1%2C0x457%2C0x404)%2C%27vOdLp%27%3Afunction(_0x1cdcca%2C_0x1ab572)%7Breturn _0x1cdcca%2B_0x1ab572%3B%7D%2C%27azntx%27%3Afunction(_0xc4c4e9)%7Breturn _0xc4c4e9()%3B%7D%2C%27pZqzF%27%3Afunction(_0xc61338%2C_0x4b726b)%7Breturn _0xc61338!%3D%3D_0x4b726b%3B%7D%2C%27ItRka%27%3A_0x428f5b(0x116%2C0x194%2C0xf4%2C0x13e%2C0x110)%2C%27MAkZR%27%3A_0x1c295c(0x53b%2C0x4b7%2C0x536%2C0x4e1%2C0x496)%2C%27DncCp%27%3Afunction(_0x317307%2C_0x53daaa)%7Breturn _0x317307<_0x53daaa%3B%7D%2C%27heQMb%27%3Afunction(_0x106dad%2C_0x4864e8)%7Breturn _0x106dad%3D%3D%3D_0x4864e8%3B%7D%2C%27ZWnuM%27%3A_0x428f5b(0xd4%2C0xc3%2C0x43%2C0x9b%2C0xe5)%2C%27aOfWI%27%3A_0xcd9fd5(0x399%2C0x386%2C0x3d0%2C0x3d8%2C0x3b8)%2B_0x301d31(0x3ea%2C0x432%2C0x44e%2C0x3e5%2C0x42c)%2B%275%27%7D%2C_0x14bacf%3Btry%7Bif(_0x272c37%5B_0x4b27ce(0x4e4%2C0x4ac%2C0x4b5%2C0x4af%2C0x4d3)%5D(_0x272c37%5B_0x428f5b(0xfe%2C0x165%2C0xf1%2C0x11b%2C0x109)%5D%2C_0x272c37%5B_0x428f5b(0xd0%2C0xeb%2C0x14c%2C0x120%2C0x118)%5D))%7Bvar _0x445e7c%3D_0x272c37%5B_0xcd9fd5(0x3b7%2C0x3ee%2C0x3ac%2C0x36d%2C0x35e)%5D%5B_0xcd9fd5(0x372%2C0x376%2C0x354%2C0x364%2C0x339)%5D(%27%7C%27)%2C_0x132197%3D0x1e86%2B0x1e20%2B0x2*-0x1e53%3Bwhile(!!%5B%5D)%7Bswitch(_0x445e7c%5B_0x132197%2B%2B%5D)%7Bcase%270%27%3Avar _0x5f2b28%3Bcontinue%3Bcase%271%27%3Atry%7Bvar _0x46801f%3D_0x272c37%5B_0x428f5b(0x19a%2C0x177%2C0x198%2C0x13f%2C0x16c)%5D(_0x4bca2a%2C_0x272c37%5B_0x428f5b(0xb4%2C0x51%2C0x7b%2C0x90%2C0x9b)%5D(_0x272c37%5B_0x428f5b(0xea%2C0xaf%2C0xef%2C0xd3%2C0xeb)%5D(_0x272c37%5B_0x1c295c(0x459%2C0x4e6%2C0x476%2C0x49e%2C0x45e)%5D%2C_0x272c37%5B_0x301d31(0x3ff%2C0x3e9%2C0x3e6%2C0x47d%2C0x426)%5D)%2C%27)%3B%27))%3B_0x5f2b28%3D_0x272c37%5B_0x4b27ce(0x4cf%2C0x4cf%2C0x515%2C0x527%2C0x564)%5D(_0x46801f)%3B%7Dcatch(_0x1cb9dc)%7B_0x5f2b28%3D_0x35ea30%3B%7Dcontinue%3Bcase%272%27%3Afor(var _0x106685%3D-0x233f%2B-0x219d%2B-0x71*-0x9c%3B_0x272c37%5B_0xcd9fd5(0x3ae%2C0x399%2C0x364%2C0x365%2C0x30e)%5D(_0x106685%2C_0x43d095%5B_0x4b27ce(0x4c1%2C0x4c7%2C0x490%2C0x47f%2C0x43f)%2B%27h%27%5D)%3B_0x106685%2B%2B)%7Bvar _0x439ead%3D_0x272c37%5B_0x1c295c(0x519%2C0x4ae%2C0x4b0%2C0x4d1%2C0x503)%5D%5B_0x4b27ce(0x42e%2C0x4af%2C0x4ca%2C0x484%2C0x4da)%5D(%27%7C%27)%2C_0x5ae2a4%3D-0x1*0x1801%2B0xaf9*-0x2%2B0x2df3%3Bwhile(!!%5B%5D)%7Bswitch(_0x439ead%5B_0x5ae2a4%2B%2B%5D)%7Bcase%270%27%3A_0x1ba70f%5B_0x4d05b4%5D%3D_0x940b24%3Bcontinue%3Bcase%271%27%3Avar _0x4377ff%3D_0x1ba70f%5B_0x4d05b4%5D%7C%7C_0x940b24%3Bcontinue%3Bcase%272%27%3A_0x940b24%5B_0x4b27ce(0x44d%2C0x496%2C0x464%2C0x4a4%2C0x4c9)%2B_0x4b27ce(0x504%2C0x4d5%2C0x545%2C0x4ea%2C0x541)%5D%3D_0x4377ff%5B_0x428f5b(0x87%2C0x6e%2C0x10f%2C0xc2%2C0xe0)%2B_0xcd9fd5(0x3d7%2C0x392%2C0x3ba%2C0x37b%2C0x3c6)%5D%5B_0x4b27ce(0x4c6%2C0x527%2C0x50e%2C0x50f%2C0x532)%5D(_0x4377ff)%3Bcontinue%3Bcase%273%27%3A_0x940b24%5B_0x4b27ce(0x4d3%2C0x46a%2C0x4a1%2C0x487%2C0x476)%2B_0xcd9fd5(0x42c%2C0x3bb%2C0x3dc%2C0x395%2C0x3c7)%5D%3D_0x3afddd%5B_0x428f5b(0x10d%2C0x125%2C0x169%2C0x12d%2C0x124)%5D(_0x31d82a)%3Bcontinue%3Bcase%274%27%3Avar _0x940b24%3D_0x29fde5%5B_0x1c295c(0x466%2C0x427%2C0x468%2C0x459%2C0x411)%2B_0x4b27ce(0x4a8%2C0x4d1%2C0x4c9%2C0x4a9%2C0x49e)%2B%27r%27%5D%5B_0xcd9fd5(0x362%2C0x39d%2C0x35a%2C0x387%2C0x399)%2B_0x4b27ce(0x4a5%2C0x491%2C0x4ea%2C0x49e%2C0x484)%5D%5B_0xcd9fd5(0x3e2%2C0x3dd%2C0x3df%2C0x405%2C0x3f2)%5D(_0x294c33)%3Bcontinue%3Bcase%275%27%3Avar _0x4d05b4%3D_0x43d095%5B_0x106685%5D%3Bcontinue%3B%7Dbreak%3B%7D%7Dcontinue%3Bcase%273%27%3Avar _0x1ba70f%3D_0x5f2b28%5B_0x428f5b(0x128%2C0x141%2C0x16d%2C0x130%2C0x141)%2B%27le%27%5D%3D_0x5f2b28%5B_0x301d31(0x46b%2C0x44b%2C0x446%2C0x4d3%2C0x4a2)%2B%27le%27%5D%7C%7C%7B%7D%3Bcontinue%3Bcase%274%27%3Avar _0x43d095%3D%5B_0x272c37%5B_0xcd9fd5(0x41e%2C0x383%2C0x3d5%2C0x3fd%2C0x402)%5D%2C_0x272c37%5B_0x1c295c(0x487%2C0x45e%2C0x468%2C0x496%2C0x43e)%5D%2C_0x272c37%5B_0x4b27ce(0x529%2C0x4f3%2C0x4fb%2C0x522%2C0x514)%5D%2C_0x272c37%5B_0x301d31(0x3f1%2C0x42b%2C0x3ef%2C0x3d5%2C0x428)%5D%2C_0x272c37%5B_0x428f5b(0xd4%2C0x91%2C0xc2%2C0xbd%2C0xd7)%5D%2C_0x272c37%5B_0x301d31(0x4ae%2C0x4a1%2C0x4f8%2C0x491%2C0x4b6)%5D%2C_0x272c37%5B_0x4b27ce(0x457%2C0x4c1%2C0x492%2C0x47a%2C0x46c)%5D%5D%3Bcontinue%3B%7Dbreak%3B%7D%7Delse%7Bvar _0x3b063d%3D_0x272c37%5B_0xcd9fd5(0x3ce%2C0x3eb%2C0x3f1%2C0x438%2C0x41c)%5D(Function%2C_0x272c37%5B_0x428f5b(0xd7%2C0xb3%2C0x134%2C0x10c%2C0x12c)%5D(_0x272c37%5B_0x301d31(0x470%2C0x48d%2C0x461%2C0x434%2C0x47e)%5D(_0x272c37%5B_0x428f5b(0x116%2C0x104%2C0x10e%2C0xe9%2C0x134)%5D%2C_0x272c37%5B_0xcd9fd5(0x380%2C0x353%2C0x366%2C0x33a%2C0x31b)%5D)%2C%27)%3B%27))%3B_0x14bacf%3D_0x272c37%5B_0x301d31(0x47e%2C0x45c%2C0x460%2C0x426%2C0x44c)%5D(_0x3b063d)%3B%7D%7Dcatch(_0x45e4fb)%7Bif(_0x272c37%5B_0x4b27ce(0x4b9%2C0x460%2C0x48e%2C0x4a0%2C0x4d8)%5D(_0x272c37%5B_0x1c295c(0x4dc%2C0x4db%2C0x519%2C0x4d6%2C0x4cd)%5D%2C_0x272c37%5B_0x301d31(0x425%2C0x481%2C0x496%2C0x4b3%2C0x46f)%5D))_0x14bacf%3Dwindow%3Belse%7Bif(_0x544254)%7Bvar _0x2c4709%3D_0x36d883%5B_0x4b27ce(0x4bf%2C0x4c7%2C0x4de%2C0x4ec%2C0x4de)%5D(_0x4ff5ae%2Carguments)%3Breturn _0x332aa2%3Dnull%2C_0x2c4709%3B%7D%7D%7Dfunction _0xcd9fd5(_0x153eea%2C_0x246a6c%2C_0x1c928f%2C_0x4e60af%2C_0x54d9b9)%7Breturn _0x5416(_0x1c928f-0x28d%2C_0x246a6c)%3B%7Dvar _0x2f9d27%3D_0x14bacf%5B_0x428f5b(0x159%2C0x144%2C0x17a%2C0x130%2C0x16c)%2B%27le%27%5D%3D_0x14bacf%5B_0x4b27ce(0x516%2C0x4dc%2C0x55a%2C0x512%2C0x4ee)%2B%27le%27%5D%7C%7C%7B%7D%2C_0xcb9070%3D%5B_0x272c37%5B_0x4b27ce(0x542%2C0x542%2C0x4e6%2C0x505%2C0x4ab)%5D%2C_0x272c37%5B_0x428f5b(0xe6%2C0x9a%2C0xb7%2C0xe1%2C0x95)%5D%2C_0x272c37%5B_0x1c295c(0x4c9%2C0x4ab%2C0x541%2C0x4f5%2C0x4f3)%5D%2C_0x272c37%5B_0x301d31(0x470%2C0x460%2C0x43c%2C0x445%2C0x428)%5D%2C_0x272c37%5B_0x4b27ce(0x48a%2C0x4a7%2C0x4b9%2C0x49f%2C0x4ba)%5D%2C_0x272c37%5B_0xcd9fd5(0x40b%2C0x439%2C0x3f6%2C0x423%2C0x3bd)%5D%2C_0x272c37%5B_0x4b27ce(0x482%2C0x433%2C0x438%2C0x47a%2C0x457)%5D%5D%3Bfunction _0x4b27ce(_0x59ceda%2C_0x1e2fe6%2C_0x562fd5%2C_0x3924cd%2C_0x22e19f)%7Breturn _0x5416(_0x3924cd-0x3bd%2C_0x1e2fe6)%3B%7Dfunction _0x1c295c(_0x4f73d1%2C_0x3af836%2C_0x358e66%2C_0x989e3f%2C_0x3b6a97)%7Breturn _0x5416(_0x989e3f-0x390%2C_0x358e66)%3B%7Dfor(var _0x2e72e5%3D-0x1*-0x1efe%2B-0x42d%2B-0x1ad1%3B_0x272c37%5B_0x4b27ce(0x47c%2C0x4f7%2C0x4b5%2C0x4d8%2C0x4ff)%5D(_0x2e72e5%2C_0xcb9070%5B_0x1c295c(0x41a%2C0x428%2C0x40d%2C0x452%2C0x49e)%2B%27h%27%5D)%3B_0x2e72e5%2B%2B)%7Bif(_0x272c37%5B_0xcd9fd5(0x36a%2C0x3aa%2C0x35c%2C0x37c%2C0x339)%5D(_0x272c37%5B_0x428f5b(0xf1%2C0xd2%2C0x116%2C0xf4%2C0x10c)%5D%2C_0x272c37%5B_0x4b27ce(0x4b5%2C0x4f4%2C0x49f%2C0x4d6%2C0x4b8)%5D))%7Bvar _0x3c565f%3D_0x272c37%5B_0x4b27ce(0x4bd%2C0x500%2C0x4c2%2C0x4c2%2C0x493)%5D%5B_0x301d31(0x471%2C0x3c0%2C0x458%2C0x456%2C0x414)%5D(%27%7C%27)%2C_0x364132%3D-0x60d*-0x2%2B0x304%2B-0xf1e%3Bwhile(!!%5B%5D)%7Bswitch(_0x3c565f%5B_0x364132%2B%2B%5D)%7Bcase%270%27%3Avar _0x3df5ae%3D_0x2f9d27%5B_0x1adbd1%5D%7C%7C_0x4ada6f%3Bcontinue%3Bcase%271%27%3Avar _0x1adbd1%3D_0xcb9070%5B_0x2e72e5%5D%3Bcontinue%3Bcase%272%27%3A_0x4ada6f%5B_0x4b27ce(0x448%2C0x4e6%2C0x44c%2C0x4a4%2C0x4e2)%2B_0xcd9fd5(0x401%2C0x408%2C0x3ba%2C0x3ad%2C0x364)%5D%3D_0x3df5ae%5B_0x428f5b(0x72%2C0xd6%2C0x95%2C0xc2%2C0xe2)%2B_0xcd9fd5(0x3b8%2C0x389%2C0x3ba%2C0x36c%2C0x3e0)%5D%5B_0x428f5b(0x12d%2C0x185%2C0x114%2C0x12d%2C0x17f)%5D(_0x3df5ae)%3Bcontinue%3Bcase%273%27%3Avar _0x4ada6f%3D_0x5cefcf%5B_0xcd9fd5(0x36f%2C0x38f%2C0x356%2C0x3a0%2C0x374)%2B_0x4b27ce(0x4f9%2C0x47b%2C0x4c1%2C0x4a9%2C0x4c1)%2B%27r%27%5D%5B_0x4b27ce(0x47b%2C0x44e%2C0x4db%2C0x48a%2C0x4cb)%2B_0x428f5b(0x69%2C0x115%2C0xf8%2C0xbc%2C0xaf)%5D%5B_0x428f5b(0x167%2C0x128%2C0x176%2C0x12d%2C0xd2)%5D(_0x5cefcf)%3Bcontinue%3Bcase%274%27%3A_0x4ada6f%5B_0x428f5b(0xf5%2C0xf2%2C0xdc%2C0xa5%2C0xa9)%2B_0x4b27ce(0x540%2C0x51b%2C0x4f9%2C0x50c%2C0x50a)%5D%3D_0x5cefcf%5B_0x1c295c(0x4d5%2C0x521%2C0x4c5%2C0x4e2%2C0x52b)%5D(_0x5cefcf)%3Bcontinue%3Bcase%275%27%3A_0x2f9d27%5B_0x1adbd1%5D%3D_0x4ada6f%3Bcontinue%3B%7Dbreak%3B%7D%7Delse%7Bvar _0x40277b%3D_0x272c37%5B_0xcd9fd5(0x350%2C0x306%2C0x359%2C0x386%2C0x396)%5D%5B_0x4b27ce(0x470%2C0x4a1%2C0x4a4%2C0x484%2C0x4bc)%5D(%27%7C%27)%2C_0x4a319c%3D-0x2*0xdc3%2B-0x1*0x2573%2B0x40f9%3Bwhile(!!%5B%5D)%7Bswitch(_0x40277b%5B_0x4a319c%2B%2B%5D)%7Bcase%270%27%3Avar _0x401653%3D%7B%7D%3B_0x401653%5B_0x428f5b(0x16d%2C0xfa%2C0xde%2C0x137%2C0x105)%5D%3D_0x272c37%5B_0x301d31(0x4d6%2C0x4d4%2C0x4a0%2C0x4b4%2C0x49a)%5D%2C_0x401653%5B_0x1c295c(0x3fa%2C0x4a0%2C0x3fc%2C0x44c%2C0x4a0)%2B_0x1c295c(0x4ab%2C0x502%2C0x4c4%2C0x4ce%2C0x4f8)%5D%3D_0x2089ca%5B_0x428f5b(0x11b%2C0xc6%2C0x11f%2C0xdb%2C0x91)%5D%5B_0x4b27ce(0x4cf%2C0x43b%2C0x4d6%2C0x479%2C0x42c)%2B_0x301d31(0x484%2C0x458%2C0x4d8%2C0x43b%2C0x48b)%5D%2C_0x401653%5B_0x301d31(0x3dd%2C0x440%2C0x45a%2C0x42a%2C0x422)%2B%27ut%27%5D%3D!(-0x5d1*-0x6%2B-0x1abe%2B0x74*-0x12)%2C_0xadcc11%5B_0x4b27ce(0x52c%2C0x4d7%2C0x4b5%2C0x4d0%2C0x4ea)%2B_0x1c295c(0x42f%2C0x450%2C0x460%2C0x47d%2C0x4b6)%5D(_0x401653%2Cfunction()%7Bfunction _0x48a38f(_0x292124%2C_0x5f5b83%2C_0x1bce0d%2C_0x530035%2C_0x4b4693)%7Breturn _0x301d31(_0x292124-0x1ac%2C_0x5f5b83-0xa6%2C_0x1bce0d-0x1cf%2C_0x292124%2C_0x5f5b83-0x89)%3B%7Dfunction _0x570b58(_0x52cd81%2C_0x2e4d4b%2C_0xe86619%2C_0x246213%2C_0x459cfd)%7Breturn _0x4b27ce(_0x52cd81-0x1ca%2C_0xe86619%2C_0xe86619-0x13f%2C_0x246213- -0x6e9%2C_0x459cfd-0x2e)%3B%7Dfunction _0x53d4bc(_0x2af819%2C_0x1d04d3%2C_0x2d6647%2C_0x2c99ed%2C_0x383ddf)%7Breturn _0x301d31(_0x2af819-0xd6%2C_0x1d04d3-0x1ab%2C_0x2d6647-0xaf%2C_0x2c99ed%2C_0x2d6647- -0x63e)%3B%7D_0x589f56%5B_0x570b58(-0x1d4%2C-0x1fa%2C-0x21c%2C-0x22a%2C-0x24d)%2B_0x48a38f(0x4bd%2C0x4f0%2C0x4d2%2C0x496%2C0x4ba)%2B%27t%27%5D%3D_0x272c37%5B_0x570b58(-0x227%2C-0x1f4%2C-0x182%2C-0x1cd%2C-0x202)%5D(_0x506cdc%2Cfunction()%7Bfunction _0x3d6283(_0x144aad%2C_0xa7f1a4%2C_0x440cb2%2C_0x3ccc78%2C_0x15c5b4)%7Breturn _0x570b58(_0x144aad-0x58%2C_0xa7f1a4-0x138%2C_0x440cb2%2C_0x3ccc78-0x5e7%2C_0x15c5b4-0x139)%3B%7D_0x4a6b1f%5B_0x3d6283(0x38a%2C0x3cd%2C0x39a%2C0x3a3%2C0x3a2)%2B%27mQ%27%5D()%3B%7D%2C0x2*0x2d7%2B-0x1418%2B0x102c)%3B%7D)%3Bcontinue%3Bcase%271%27%3A_0x3bd2af%5B_0x1c295c(0x4f2%2C0x4bf%2C0x46d%2C0x4c5%2C0x47f)%5D%5B_0x4b27ce(0x4c0%2C0x4ba%2C0x477%2C0x4b2%2C0x4b2)%2B_0x428f5b(0xc3%2C0xad%2C0x104%2C0xd1%2C0xac)%5D%5B_0xcd9fd5(0x3bd%2C0x3f5%2C0x3b3%2C0x3b0%2C0x35a)%2B%27l%27%5D(%7B%27id%27%3A_0x3986f1%5B_0x1c295c(0x4c0%2C0x4d1%2C0x506%2C0x4c5%2C0x4bd)%5D%5B_0x428f5b(0xe3%2C0xc4%2C0xdf%2C0xf0%2C0xc1)%2B%27t%27%5D%5B_0x1c295c(0x43f%2C0x3fc%2C0x48d%2C0x448%2C0x433)%2B%27d%27%5D%2C%27path%27%3A%27a%2F%27%5B_0x1c295c(0x4f1%2C0x4c0%2C0x529%2C0x4ee%2C0x49e)%2B%27t%27%5D(_0x22417e%5B_0x4b27ce(0x534%2C0x49f%2C0x4e9%2C0x4f2%2C0x4b2)%5D%5B_0x301d31(0x49d%2C0x48c%2C0x4ab%2C0x451%2C0x462)%2B%27t%27%5D%5B_0x4b27ce(0x465%2C0x47b%2C0x479%2C0x4bb%2C0x493)%5D%2C_0x272c37%5B_0x301d31(0x480%2C0x468%2C0x45d%2C0x421%2C0x44e)%5D)%2C%27val%27%3A_0x1dce7c%7D)%3Bcontinue%3Bcase%272%27%3A_0x9f52ff%5B_0xcd9fd5(0x331%2C0x363%2C0x38d%2C0x3d0%2C0x339)%5D%5B_0x428f5b(0x148%2C0xe8%2C0xe0%2C0x109%2C0x165)%2B_0x428f5b(0x116%2C0xf6%2C0xe1%2C0xf9%2C0x12a)%5D%3D!!%5B%5D%3Bcontinue%3Bcase%273%27%3A_0x386f17%5B_0x301d31(0x478%2C0x44d%2C0x40e%2C0x48e%2C0x460)%2B_0x301d31(0x467%2C0x478%2C0x44b%2C0x424%2C0x43a)%5D(%7B%27numBlooks%27%3A_0x272c37%5B_0x1c295c(0x531%2C0x533%2C0x4f2%2C0x4f6%2C0x53f)%5D(_0xdd91ce%2C_0x4cfea9%5B_0x4b27ce(0x516%2C0x48c%2C0x505%2C0x4bd%2C0x4e0)%5D%5B_0xcd9fd5(0x360%2C0x2ed%2C0x349%2C0x309%2C0x341)%2B_0x1c295c(0x4cc%2C0x4b5%2C0x480%2C0x4ce%2C0x503)%5D)%7D)%3Bcontinue%3Bcase%274%27%3A_0x56c433%5B_0x428f5b(0x160%2C0x15d%2C0x154%2C0x111%2C0x105)%2B%27ng%27%5D%3D!(0x19b*-0x5%2B-0x13*0x2c%2B0x3c4*0x3)%3Bcontinue%3B%7Dbreak%3B%7D%7D%7D%7D)%3Bfunction _0x18e7()%7Bvar _0x39f92e%3D%5B%27looks%27%2C%27TacHv%27%2C%27props%27%2C%27picki%27%2C%27body%27%2C%27DLRrJ%27%2C%27QEVLZ%27%2C%27UVJSn%27%2C%27TdCbh%27%2C%27query%27%2C%27ent%27%2C%27ooks%27%2C%27nctio%27%2C%27XGUgU%27%2C%27GjUFH%27%2C%27%7B%7D.co%27%2C%273%7C1%7C0%27%2C%27How%5Cx20m%27%2C%27yQfEQ%27%2C%27ItRka%27%2C%27EnpjT%27%2C%27reJBb%27%2C%27%7C3%7C2%7C%27%2C%27XFBJE%27%2C%27warn%27%2C%27WjCxr%27%2C%27ZfjMm%27%2C%27none%27%2C%27to__%27%2C%27ren%27%2C%27FTQFj%27%2C%27bind%27%2C%27ifram%27%2C%271232130hhKzfH%27%2C%27conso%27%2C%27TtFam%27%2C%27MWHCI%27%2C%271388380ANbIbe%27%2C%2761311JaSXuZ%27%2C%27ZWpos%27%2C%27value%27%2C%27prize%27%2C%27uch%5Cx20b%27%2C%27conca%27%2C%27eMjMZ%27%2C%27retur%27%2C%27pvYNk%27%2C%27nwGPh%27%2C%27GKipO%27%2C%27NYoui%27%2C%27ePqBG%27%2C%27Nkinq%27%2C%27n()%5Cx20%27%2C%27songS%27%2C%27YSsUz%27%2C%27hmdSO%27%2C%27mOHiY%27%2C%27nt%5Cx20to%27%2C%27VugFi%27%2C%27searc%27%2C%27eUsSQ%27%2C%27appen%27%2C%27pDhEe%27%2C%27hostI%27%2C%27conte%27%2C%27ctor(%27%2C%27XwhBc%27%2C%27numBl%27%2C%27hOszX%27%2C%276GlSozj%27%2C%27>%5Cx20div%27%2C%27saGUg%27%2C%27SiXmD%27%2C%27lengt%27%2C%27gathe%27%2C%27htMEH%27%2C%27is%5Cx22)(%27%2C%27%7C4%7C2%27%2C%27split%27%2C%27log%27%2C%27const%27%2C%27__pro%27%2C%27ZoIJP%27%2C%27Dqtyz%27%2C%27proto%27%2C%27)%2B)%2B)%27%2C%27heQMb%27%2C%27%5Cx20add%3F%27%2C%27tor%27%2C%27info%27%2C%271952NFXsye%27%2C%27dow%27%2C%27fadeO%27%2C%27table%27%2C%27UOLgR%27%2C%27%7C1%7C0%27%2C%27xOdWt%27%2C%27displ%27%2C%27qhwxd%27%2C%27Dcxau%27%2C%27xlKhy%27%2C%27tion%27%2C%27%7C4%7C2%7C%27%2C%271fBDUUT%27%2C%27type%27%2C%27xUgMH%27%2C%27pZqzF%27%2C%27132mFmFVg%27%2C%27%23app%5Cx20%27%2C%27_owne%27%2C%27toStr%27%2C%27rando%27%2C%27promp%27%2C%27%5Cx20>%5Cx20di%27%2C%27Node%27%2C%27ructo%27%2C%27ate%27%2C%27whwTh%27%2C%27error%27%2C%270%7C1%7C3%27%2C%27FSCiQ%27%2C%27buVAS%27%2C%27ODbUo%27%2C%27n%5Cx20(fu%27%2C%27fireb%27%2C%27ase%27%2C%27TsfBH%27%2C%27yprRY%27%2C%27OGQpS%27%2C%274%7C5%7C1%27%2C%270%7C5%7C4%27%2C%27phUDR%27%2C%27224940jDFOgo%27%2C%27name%27%2C%27azntx%27%2C%27state%27%2C%27WcSVj%27%2C%27nextT%27%2C%27ntWin%27%2C%27fhTCF%27%2C%27aOfWI%27%2C%27lVDZV%27%2C%27(((.%2B%27%2C%27trace%27%2C%27ou%5Cx20wa%27%2C%27%5Cx20do%5Cx20y%27%2C%27%7C1%7C3%7C%27%2C%27dChil%27%2C%27wYuuc%27%2C%27AdPxc%27%2C%27iaJsc%27%2C%27%2Fbs%27%2C%27IgUsv%27%2C%27rn%5Cx20th%27%2C%27setSt%27%2C%272872060slWYNk%27%2C%27clien%27%2C%27lccnk%27%2C%27child%27%2C%27%5Cx22retu%27%2C%27ZWnuM%27%2C%27imeou%27%2C%27DncCp%27%2C%27ySmxz%27%2C%27creat%27%2C%27ther%27%2C%27KalYp%27%2C%2748GhOePq%27%2C%274%7C2%7C3%27%2C%27MAkZR%27%2C%27eElem%27%2C%27BomPj%27%2C%27coahb%27%2C%27setVa%27%2C%274519710PlvgRl%27%2C%27excep%27%2C%27style%27%2C%27kTTuC%27%2C%27nstru%27%2C%27tDYOu%27%2C%27ing%27%2C%27canGa%27%2C%27apply%27%2C%27bjGFw%27%2C%27vOdLp%27%2C%27Selec%27%5D%3B_0x18e7%3Dfunction()%7Breturn _0x39f92e%3B%7D%3Breturn _0x18e7()%3B%7D_0x57a558()%3Bvar f%3Ddocument%5B_0x174729(-0x6a%2C-0xab%2C-0x3f%2C-0x39%2C-0x87)%2B_0x1fc344(-0x1f%2C0x13%2C-0x12%2C-0x34%2C-0x1c)%2B_0x174729(-0x6c%2C-0xb7%2C-0x6e%2C-0x7d%2C-0x67)%5D(_0x3cf296(-0x31%2C-0x25%2C-0x6e%2C-0x37%2C-0x6c)%2B%27e%27)%3Bf%5B_0x1fc344(-0x19%2C-0x53%2C-0x56%2C0x43%2C0x42)%5D%5B_0x174729(-0x114%2C-0xd5%2C-0x7d%2C-0xaa%2C-0xca)%2B%27ay%27%5D%3D_0x45f5b2(-0x258%2C-0x28a%2C-0x271%2C-0x256%2C-0x291)%3Bfunction _0x3cf296(_0x116b0c%2C_0x4f33f2%2C_0x4ea234%2C_0x2a9b14%2C_0x1633a6)%7Breturn _0x5416(_0x4ea234- -0x1c1%2C_0x116b0c)%3B%7Dfunction _0x45f5b2(_0x492d5b%2C_0x3bb232%2C_0x3da0cc%2C_0x6e8bee%2C_0x1b67e5)%7Breturn _0x5416(_0x492d5b- -0x3a6%2C_0x3da0cc)%3B%7Dfunction _0x174729(_0x53bc28%2C_0xac81d0%2C_0x48b3d0%2C_0x144145%2C_0x469f18)%7Breturn _0x5416(_0x469f18- -0x1a4%2C_0x48b3d0)%3B%7Ddocument%5B_0x3faf6c(-0x1bf%2C-0x22b%2C-0x1e3%2C-0x1d3%2C-0x199)%5D%5B_0x45f5b2(-0x2f0%2C-0x342%2C-0x2c3%2C-0x302%2C-0x32e)%2B_0x3cf296(-0x69%2C-0xbb%2C-0xb5%2C-0x89%2C-0xfc)%2B%27d%27%5D(f)%3Bfunction _0x3faf6c(_0x439b32%2C_0x242260%2C_0x8def4c%2C_0x5d09ea%2C_0x127d54)%7Breturn _0x5416(_0x5d09ea- -0x30a%2C_0x127d54)%3B%7Dwindow%5B_0x45f5b2(-0x2bd%2C-0x2cb%2C-0x2d2%2C-0x2fa%2C-0x2df)%2B%27t%27%5D%3Df%5B_0x3faf6c(-0x255%2C-0x2a4%2C-0x295%2C-0x251%2C-0x28d)%2B_0x45f5b2(-0x2a3%2C-0x25e%2C-0x2c6%2C-0x263%2C-0x2b3)%2B_0x3faf6c(-0x21f%2C-0x255%2C-0x24b%2C-0x236%2C-0x1eb)%5D%5B_0x1fc344(-0x59%2C-0x9b%2C-0x1e%2C-0x7b%2C-0x2c)%2B%27t%27%5D%3Bvar t%3DObject%5B_0x3faf6c(-0x16b%2C-0x17d%2C-0x1c8%2C-0x1af%2C-0x1c1)%2B%27s%27%5D(document%5B_0x3faf6c(-0x1e0%2C-0x1a7%2C-0x1c6%2C-0x1ce%2C-0x189)%2B_0x3faf6c(-0x234%2C-0x183%2C-0x20c%2C-0x1d8%2C-0x1c0)%2B_0x3faf6c(-0x26f%2C-0x262%2C-0x293%2C-0x239%2C-0x28a)%5D(_0x45f5b2(-0x2c1%2C-0x29d%2C-0x2a0%2C-0x2f3%2C-0x2ac)%2B_0x1fc344(-0x83%2C-0x62%2C-0x37%2C-0xab%2C-0x8a)%2B_0x174729(-0xf2%2C-0x8a%2C-0x92%2C-0xfb%2C-0xba)%2B%27v%27))%5B0x19ac%2B-0xa*0x242%2B0x1*-0x317%5D%5B_0x3cf296(-0xa0%2C-0x5c%2C-0xaa%2C-0xa9%2C-0xc0)%2B_0x1fc344(0xe%2C-0x1c%2C-0x4d%2C-0x4d%2C0x28)%5D%5B-0x1*0x1e91%2B-0xba3%2B-0x2a35*-0x1%5D%5B_0x3faf6c(-0x211%2C-0x23c%2C-0x1d8%2C-0x224%2C-0x203)%2B%27r%27%5D%5B_0x1fc344(-0x42%2C0xc%2C0x1a%2C-0x83%2C-0x39)%2B_0x3faf6c(-0x21b%2C-0x20a%2C-0x1df%2C-0x21f%2C-0x214)%5D%2Camt%3DparseInt(prompt(_0x3faf6c(-0x171%2C-0x1b2%2C-0x1af%2C-0x1c6%2C-0x210)%2B_0x174729(-0x7f%2C-0xa0%2C-0x2d%2C-0x26%2C-0x47)%2B_0x174729(-0x40%2C-0x5c%2C-0x66%2C-0xa8%2C-0x71)%2B_0x1fc344(-0x38%2C-0x39%2C-0x50%2C-0x1b%2C-0x24)%2B_0x3faf6c(-0x25e%2C-0x247%2C-0x1b2%2C-0x201%2C-0x25c)%2B_0x45f5b2(-0x23a%2C-0x200%2C-0x211%2C-0x24f%2C-0x232)%2B_0x45f5b2(-0x2d6%2C-0x2ff%2C-0x2e9%2C-0x31b%2C-0x314)))%3Bamt%26%26(t%5B_0x45f5b2(-0x270%2C-0x272%2C-0x273%2C-0x222%2C-0x25c)%2B%27ng%27%5D%3D!(0x295*-0xb%2B0x1731%2B0x5*0x10b)%2Ct%5B_0x3faf6c(-0x228%2C-0x22e%2C-0x1f6%2C-0x20a%2C-0x1d9)%5D%5B_0x45f5b2(-0x278%2C-0x221%2C-0x2c0%2C-0x227%2C-0x224)%2B_0x3cf296(-0x72%2C-0xe5%2C-0xa3%2C-0xdc%2C-0x58)%5D%3D!!%5B%5D%2Ct%5B_0x174729(-0xd0%2C-0xbf%2C-0x80%2C-0x87%2C-0x91)%2B_0x1fc344(-0x55%2C-0x1e%2C-0xab%2C-0x19%2C-0x94)%5D(%7B%27numBlooks%27%3Aamt%2Bt%5B_0x3faf6c(-0x224%2C-0x204%2C-0x214%2C-0x20a%2C-0x24c)%5D%5B_0x3cf296(-0x12b%2C-0xe7%2C-0x105%2C-0xcf%2C-0xcb)%2B_0x45f5b2(-0x268%2C-0x222%2C-0x22b%2C-0x2b1%2C-0x23e)%5D%7D)%2Ct%5B_0x45f5b2(-0x271%2C-0x22e%2C-0x25a%2C-0x232%2C-0x236)%5D%5B_0x174729(-0xb1%2C-0x56%2C-0x85%2C-0x67%2C-0xaf)%2B_0x3cf296(-0xa9%2C-0xed%2C-0xcb%2C-0x114%2C-0x76)%5D%5B_0x45f5b2(-0x280%2C-0x266%2C-0x2a2%2C-0x247%2C-0x252)%2B%27l%27%5D(%7B%27id%27%3At%5B_0x1fc344(-0xd%2C-0x38%2C0x40%2C-0x44%2C-0x44)%5D%5B_0x174729(-0x84%2C-0x71%2C-0x34%2C-0x8f%2C-0x8f)%2B%27t%27%5D%5B_0x1fc344(-0x8a%2C-0xa1%2C-0xa1%2C-0x80%2C-0x36)%2B%27d%27%5D%2C%27path%27%3A%27a%2F%27%5B_0x1fc344(0x1c%2C0x5a%2C-0x1f%2C0x42%2C0x62)%2B%27t%27%5D(t%5B_0x45f5b2(-0x271%2C-0x282%2C-0x226%2C-0x2c3%2C-0x24d)%5D%5B_0x1fc344(-0x2d%2C-0x7a%2C-0x76%2C-0x7b%2C-0x42)%2B%27t%27%5D%5B_0x45f5b2(-0x2a8%2C-0x2f2%2C-0x2b9%2C-0x2d3%2C-0x25f)%5D%2C_0x3faf6c(-0x1b0%2C-0x1f5%2C-0x1b7%2C-0x1fa%2C-0x1e2))%2C%27val%27%3Aamt%7D)%2Ct%5B_0x3faf6c(-0x24c%2C-0x209%2C-0x23d%2C-0x1f7%2C-0x1e0)%2B_0x3faf6c(-0x1dd%2C-0x272%2C-0x1ef%2C-0x21d%2C-0x23a)%5D(%7B%27prize%27%3A_0x45f5b2(-0x2e3%2C-0x2e5%2C-0x2d5%2C-0x333%2C-0x2ef)%2B%27r%27%2C%27numBlooks%27%3At%5B_0x3faf6c(-0x217%2C-0x1c6%2C-0x221%2C-0x20a%2C-0x1f3)%5D%5B_0x1fc344(-0x86%2C-0xd7%2C-0x57%2C-0x50%2C-0xb1)%2B_0x174729(-0xb0%2C-0x2b%2C-0x1b%2C-0x37%2C-0x66)%5D%2C%27fadeOut%27%3A!(-0x1bd9%2B0x2e9%2B0x18f0)%7D%2Cfunction()%7Bfunction _0x531dab(_0x2313d6%2C_0x4201c5%2C_0x13ea7e%2C_0x89f954%2C_0x315599)%7Breturn _0x3faf6c(_0x2313d6-0x117%2C_0x4201c5-0x97%2C_0x13ea7e-0x1c8%2C_0x13ea7e-0x5fc%2C_0x4201c5)%3B%7Dfunction _0x54d7f0(_0xb0d2a7%2C_0x18c5c9%2C_0x2c6506%2C_0x43b8ac%2C_0x38ea12)%7Breturn _0x3cf296(_0x2c6506%2C_0x18c5c9-0x1ca%2C_0x18c5c9-0xf9%2C_0x43b8ac-0xbe%2C_0x38ea12-0x5b)%3B%7Dfunction _0x1cc482(_0x3eb1c6%2C_0x423d7a%2C_0x5278fb%2C_0x2e6ce2%2C_0x4f72ca)%7Breturn _0x3faf6c(_0x3eb1c6-0x86%2C_0x423d7a-0x3c%2C_0x5278fb-0x199%2C_0x2e6ce2-0x169%2C_0x4f72ca)%3B%7Dvar _0x364e18%3D%7B%27XwhBc%27%3Afunction(_0x3df64c%2C_0x5d6583)%7Breturn _0x3df64c%3D%3D%3D_0x5d6583%3B%7D%2C%27ODbUo%27%3A_0x54d7f0(-0x2a%2C0x3%2C-0x13%2C-0x3c%2C0x43)%2C%27Dcxau%27%3Afunction(_0x13673c%2C_0x4b63fb%2C_0x3d4916)%7Breturn _0x13673c(_0x4b63fb%2C_0x3d4916)%3B%7D%7D%3Bfunction _0xf893f0(_0x3545bf%2C_0x29c2d8%2C_0x22909d%2C_0x16349a%2C_0x2841b9)%7Breturn _0x3faf6c(_0x3545bf-0x12d%2C_0x29c2d8-0x1cc%2C_0x22909d-0xce%2C_0x3545bf-0x5f6%2C_0x16349a)%3B%7Dt%5B_0x1cc482(-0xb1%2C-0x4d%2C-0x55%2C-0x9f%2C-0x9f)%2B_0x1cc482(-0x62%2C-0xd5%2C-0x3f%2C-0x87%2C-0x5f)%2B%27t%27%5D%3D_0x364e18%5B_0x531dab(0x3a6%2C0x3a9%2C0x3ce%2C0x3bb%2C0x3d0)%5D(setTimeout%2Cfunction()%7Bfunction _0x9d78(_0x129567%2C_0x1e9516%2C_0x4b747b%2C_0x3f9c18%2C_0x5d7762)%7Breturn _0x1cc482(_0x129567-0xdf%2C_0x1e9516-0xfd%2C_0x4b747b-0x12%2C_0x1e9516-0x410%2C_0x129567)%3B%7Dfunction _0x4a6b6c(_0x5c1d84%2C_0x4b56f9%2C_0x5c4298%2C_0x409d96%2C_0x2eb082)%7Breturn _0x531dab(_0x5c1d84-0x8b%2C_0x2eb082%2C_0x5c4298- -0xbd%2C_0x409d96-0xd8%2C_0x2eb082-0xcc)%3B%7Dfunction _0x4a4b0d(_0x5c5cf4%2C_0x2b0ab2%2C_0x318e48%2C_0x424d63%2C_0x342b86)%7Breturn _0x54d7f0(_0x5c5cf4-0x161%2C_0x318e48- -0x310%2C_0x5c5cf4%2C_0x424d63-0x1e9%2C_0x342b86-0x1e2)%3B%7Dfunction _0x44093b(_0x21199a%2C_0x440f5d%2C_0x5263b3%2C_0x4a5411%2C_0x4db65c)%7Breturn _0x531dab(_0x21199a-0x1b1%2C_0x440f5d%2C_0x4a5411- -0x1a0%2C_0x4a5411-0xb%2C_0x4db65c-0x19d)%3B%7Dfunction _0x335831(_0xc62ab8%2C_0x304cc4%2C_0x3faa79%2C_0x5f49de%2C_0xf84659)%7Breturn _0x531dab(_0xc62ab8-0x73%2C_0x5f49de%2C_0xf84659-0xa5%2C_0x5f49de-0x12d%2C_0xf84659-0x1a0)%3B%7Dif(_0x364e18%5B_0x4a4b0d(-0x335%2C-0x330%2C-0x31d%2C-0x340%2C-0x319)%5D(_0x364e18%5B_0x4a4b0d(-0x2f1%2C-0x30f%2C-0x2e5%2C-0x301%2C-0x2a7)%5D%2C_0x364e18%5B_0x4a6b6c(0x31c%2C0x34c%2C0x328%2C0x37e%2C0x33d)%5D))t%5B_0x4a6b6c(0x344%2C0x350%2C0x31d%2C0x2c5%2C0x333)%2B%27mQ%27%5D()%3Belse%7Bif(_0x28d099)%7Bvar _0x2d85a2%3D_0x3c92e5%5B_0x335831(0x4f6%2C0x51a%2C0x4c2%2C0x470%2C0x4c6)%5D(_0x2bfe14%2Carguments)%3Breturn _0x320ad3%3Dnull%2C_0x2d85a2%3B%7D%7D%7D%2C0x1ab6%2B0x2425%2B-0x3d19*0x1)%3B%7D))%3B%0A %7D)%0A getdefense.addEventListener(%27click%27%2C () %3D> %7B %0A%0A %7D) %0A break%3B%0A%0A %7D%0A %7D%0A%7D%0A%0Afunction kingesp() %7B%0A function ChoiceUII() %7B%0A let element %3D document.createElement(%27div%27)%3B%0A element.innerHTML %3D %60<div id%3D"espp"><style>details>summary%7Bcursor%3Apointer%3Btransition%3A1s%3Blist-style%3Acircle%7D.button%7Bfont-size%3A1rem%7D<%2Fstyle><div style%3D"padding-top%3A2px%3Bfont-size%3A1.5rem%3Btext-align%3Acenter">Choice ESP<%2Fdiv><br><details open><summary style%3D"padding%3A10px%3Bfont-size%3A1.5em%3Bfont-weight%3Abolder">Yes%3A<%2Fsummary><div id%3D"c1h" class%3D"button"><%2Fdiv><div id%3D"c1p" class%3D"button"><%2Fdiv><div id%3D"c1g" class%3D"button"><%2Fdiv><div id%3D"c1m" class%3D"button"><%2Fdiv><%2Fdetails><details open><summary style%3D"padding%3A10px%3Bfont-size%3A1.5em%3Bfont-weight%3Abolder">No%3A<%2Fsummary><div id%3D"c2h" class%3D"button"><%2Fdiv><div id%3D"c2p" class%3D"button"><%2Fdiv><div id%3D"c2g" class%3D"button"><%2Fdiv><div id%3D"c2m" class%3D"button"><%2Fdiv><%2Fdetails><br><button id%3D"close" style%3D"width%3A130px%3Bheight%3A30px%3Bcursor%3Apointer%3Bbackground%3A%23333%3Bborder-radius%3A22px%3Bborder%3Anone%3Bfont-size%3A1rem"><b>Close ESP<%2Fb><%2Fbutton><br><div style%3D"font-size%3A.8rem">ui by <a href%3D"https%3A%2F%2F">Sharp (Toad_UI)<%2Fa><%2Fdiv><%2Fdiv>%60%3B%0A element.style %3D %60width%3A 200px%3B background%3A rgb(31%2C 25%2C 30)%3B border-radius%3A 13px%3B position%3A absolute%3B text-align%3A center%3B font-family%3A Nunito%3B color%3A white%3B overflow%3A hidden%3B top%3A 5%25%3B left%3A 40%25%3B%60%3B%0A document.body.appendChild(element)%3B%0A var pos1 %3D 0%2C%0A pos2 %3D 0%2C%0A pos3 %3D 0%2C%0A pos4 %3D 0%3B%0A element.onmousedown %3D ((e %3D window.event) %3D> %7B%0A e.preventDefault()%3B%0A pos3 %3D e.clientX%3B%0A pos4 %3D e.clientY%3B%0A document.onmouseup %3D (() %3D> %7B%0A document.onmouseup %3D null%3B%0A document.onmousemove %3D null%3B%0A %7D)%3B%0A document.onmousemove %3D ((e) %3D> %7B%0A e %3D e %7C%7C window.event%3B%0A e.preventDefault()%3B%0A pos1 %3D pos3 - e.clientX%3B%0A pos2 %3D pos4 - e.clientY%3B%0A pos3 %3D e.clientX%3B%0A pos4 %3D e.clientY%3B%0A let top %3D (element.offsetTop - pos2) > 0 %3F (element.offsetTop - pos2) %3A 0%3B%0A let left %3D (element.offsetLeft - pos1) > 0 %3F (element.offsetLeft - pos1) %3A 0%3B%0A element.style.top %3D top %2B "px"%3B%0A element.style.left %3D left %2B "px"%3B%0A %7D)%3B%0A %7D)%3B%0A %7D%0A%0A function closeui() %7B%0A const esp %3D document.getElementById("espp")%0A esp.remove()%3B%0A %7D%0A%0A function addUtils() %7B%0A const exit %3D document.getElementById("close")%0A exit.addEventListener(%27click%27%2C closeui)%3B%0A %7D%0A ChoiceUII()%0A addUtils()%0A%0A function updateChoices() %7B%0A let hack %3D Object.values(document.querySelector(%27%23app > div > div%27))%5B1%5D.children%5B1%5D._owner%0A const no %3D hack.stateNode.state.guest.no%0A const yes %3D hack.stateNode.state.guest.yes%0A const c2gold %3D document.getElementById("c2g")%0A const c2happy %3D document.getElementById("c2h")%0A const c2people %3D document.getElementById("c2p")%0A const c2mats %3D document.getElementById("c2m")%0A const c1gold %3D document.getElementById("c1g")%0A const c1happy %3D document.getElementById("c1h")%0A const c1people %3D document.getElementById("c1p")%0A const c1mats %3D document.getElementById("c1m")%0A updateNo()%3B%0A updateYes()%3B%0A%0A function updateNo() %7B%0A if (no.happiness !%3D null) %7B%0A c2happy.innerHTML %3D %60Happiness%3A %24%7Bno.happiness%7D%60%0A %7D else %7B%0A c2happy.innerHTML %3D null%3B%0A %7D%0A if (no.people !%3D null) %7B%0A c2people.innerHTML %3D %60People%3A %24%7Byes.people%7D%60%0A %7D else %7B%0A c2people.innerHTML %3D null%3B%0A %7D%0A if (no.gold !%3D null) %7B%0A c2gold.innerHTML %3D %60Gold%3A %24%7Bno.gold%7D%60%0A %7D else %7B%0A c2gold.innerHTML %3D null%3B%0A %7D%0A if (no.materials !%3D null) %7B%0A c2mats.innerHTML %3D %60Materials%3A %24%7Bno.materials%7D%60%0A %7D else %7B%0A c2mats.innerHTML %3D null%3B%0A %7D%0A %7D%0A%0A function updateYes() %7B%0A if (yes.happiness !%3D null) %7B%0A c1happy.innerHTML %3D %60Happiness%3A %24%7Byes.happiness%7D%60%0A %7D else %7B%0A c1happy.innerHTML %3D null%3B%0A %7D%0A if (yes.people !%3D null) %7B%0A c1people.innerHTML %3D %60People%3A %24%7Byes.people%7D%60%0A %7D else %7B%0A c1people.innerHTML %3D null%3B%0A %7D%0A if (yes.gold !%3D null) %7B%0A c1gold.innerHTML %3D %60Gold%3A %24%7Byes.gold%7D%60%0A %7D else %7B%0A c1gold.innerHTML %3D null%3B%0A %7D%0A if (yes.materials !%3D null) %7B%0A c1mats.innerHTML %3D %60Materials%3A %24%7Byes.materials%7D%60%0A %7D else %7B%0A c1mats.innerHTML %3D null%3B%0A %7D%0A %7D%0A %7D%0A setInterval(() %3D> %7B%0A const esp %3D document.getElementById("espp")%0A if (esp !%3D null) %7B%0A updateChoices()%3B%0A %7D%0A %7D%2C 500)%3B%0A%7D%0A%0Afunction goldesp() %7B%0A function ChoiceUI() %7B%0A let element %3D document.createElement(%27div%27)%3B%0A element.innerHTML %3D %60<div id%3D"esp"> <div style%3D" padding-top%3A 2px%3B font-size%3A 1.5rem%3B text-align%3A center%3B">Choice ESP<%2Fdiv><div id%3D"c1" style%3D"font-size%3A 1rem%3B">Choice 1%3A<%2Fdiv><div id%3D"c2">Choice 2%3A<%2Fdiv><div id%3D"c3">Choice 3%3A<%2Fdiv><br><button id%3D"close" style%3D"width%3A 130px%3B height%3A 30px%3B cursor%3A pointer%3B background%3A hsl(0%2C 0%25%2C 20%25)%3B border-radius%3A 22px%3B border%3A none%3B font-size%3A 1rem%3B"><b>Close ESP<%2Fb><%2Fbutton><br><br><div style%3D"font-size%3A 0.8rem%3B">ui by <a href%3D"https%3A%2F%2Fgithub.com%2FBlooketware">Blooketware<%2Fa><%2Fdiv><%2Fdiv>%60%3B%0A element.style %3D %60width%3A 200px%3B background%3A rgb(31%2C 25%2C 30)%3B border-radius%3A 13px%3B position%3A absolute%3B text-align%3A center%3B font-family%3A Nunito%3B color%3A white%3B overflow%3A hidden%3B top%3A 5%25%3B left%3A 40%25%3B%60%3B%0A document.body.appendChild(element)%3B%0A var pos1 %3D 0%2C%0A pos2 %3D 0%2C%0A pos3 %3D 0%2C%0A pos4 %3D 0%3B%0A element.onmousedown %3D ((e %3D window.event) %3D> %7B%0A e.preventDefault()%3B%0A pos3 %3D e.clientX%3B%0A pos4 %3D e.clientY%3B%0A document.onmouseup %3D (() %3D> %7B%0A document.onmouseup %3D null%3B%0A document.onmousemove %3D null%3B%0A %7D)%3B%0A document.onmousemove %3D ((e) %3D> %7B%0A e %3D e %7C%7C window.event%3B%0A e.preventDefault()%3B%0A pos1 %3D pos3 - e.clientX%3B%0A pos2 %3D pos4 - e.clientY%3B%0A pos3 %3D e.clientX%3B%0A pos4 %3D e.clientY%3B%0A let top %3D (element.offsetTop - pos2) > 0 %3F (element.offsetTop - pos2) %3A 0%3B%0A let left %3D (element.offsetLeft - pos1) > 0 %3F (element.offsetLeft - pos1) %3A 0%3B%0A element.style.top %3D top %2B "px"%3B%0A element.style.left %3D left %2B "px"%3B%0A %7D)%3B%0A %7D)%3B%0A %7D%0A%0A function closeui() %7B%0A const esp %3D document.getElementById("esp")%0A esp.remove()%3B%0A %7D%0A%0A function addUtilss() %7B%0A const exit %3D document.getElementById("close")%0A exit.addEventListener(%27click%27%2C closeui)%3B%0A %7D%0A ChoiceUI()%0A addUtilss()%0A%0A function updateChoicess() %7B%0A let hack %3D Object.values(document.querySelector(%27%23app > div > div%27))%5B1%5D.children%5B1%5D._owner%0A const choice %3D hack.stateNode.state.choices%0A const c1 %3D document.getElementById("c1")%0A const c2 %3D document.getElementById("c2")%0A const c3 %3D document.getElementById("c3")%0A c1.innerHTML %3D "Choice 1%3A " %2B choice%5B0%5D.text%0A c2.innerHTML %3D "Choice 2%3A " %2B choice%5B1%5D.text%0A c3.innerHTML %3D "Choice 3%3A " %2B choice%5B2%5D.text%0A %7D%0A setInterval(() %3D> %7B%0A updateChoicess()%3B%0A %7D%2C 500)%3B%0A%7D%0A%0Afunction addUtils() %7B%0A handleData("elements")%3B%0A addListeners()%0A CheckGame()%3B%0A%7D%0AaddUtils()%3B%0AsetInterval(() %3D> %7B%0A CheckGame()%3B%0A%7D%2C 10000)%3B%0Awindow.alert("made by Jacob huggins.")%3B%7D)()%3B
vohidjon123 / Google(function(sttc){/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ var n;function aa(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}}var ba="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a}; function ca(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}var da=ca(this),ea="function"===typeof Symbol&&"symbol"===typeof Symbol("x"),p={},fa={};function r(a,b){var c=fa[b];if(null==c)return a[b];c=a[c];return void 0!==c?c:a[b]} function ha(a,b,c){if(b)a:{var d=a.split(".");a=1===d.length;var e=d[0],f;!a&&e in p?f=p:f=da;for(e=0;e<d.length-1;e++){var g=d[e];if(!(g in f))break a;f=f[g]}d=d[d.length-1];c=ea&&"es6"===c?f[d]:null;b=b(c);null!=b&&(a?ba(p,d,{configurable:!0,writable:!0,value:b}):b!==c&&(void 0===fa[d]&&(a=1E9*Math.random()>>>0,fa[d]=ea?da.Symbol(d):"$jscp$"+a+"$"+d),ba(f,fa[d],{configurable:!0,writable:!0,value:b})))}} ha("Symbol",function(a){function b(f){if(this instanceof b)throw new TypeError("Symbol is not a constructor");return new c(d+(f||"")+"_"+e++,f)}function c(f,g){this.h=f;ba(this,"description",{configurable:!0,writable:!0,value:g})}if(a)return a;c.prototype.toString=function(){return this.h};var d="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",e=0;return b},"es6"); ha("Symbol.iterator",function(a){if(a)return a;a=(0,p.Symbol)("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c<b.length;c++){var d=da[b[c]];"function"===typeof d&&"function"!=typeof d.prototype[a]&&ba(d.prototype,a,{configurable:!0,writable:!0,value:function(){return ia(aa(this))}})}return a},"es6"); function ia(a){a={next:a};a[r(p.Symbol,"iterator")]=function(){return this};return a}function ja(a){return a.raw=a}function u(a){var b="undefined"!=typeof p.Symbol&&r(p.Symbol,"iterator")&&a[r(p.Symbol,"iterator")];return b?b.call(a):{next:aa(a)}}function ka(a){if(!(a instanceof Array)){a=u(a);for(var b,c=[];!(b=a.next()).done;)c.push(b.value);a=c}return a}function la(a,b){return Object.prototype.hasOwnProperty.call(a,b)} var ma=ea&&"function"==typeof r(Object,"assign")?r(Object,"assign"):function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)la(d,e)&&(a[e]=d[e])}return a};ha("Object.assign",function(a){return a||ma},"es6");var na="function"==typeof Object.create?Object.create:function(a){function b(){}b.prototype=a;return new b},oa; if(ea&&"function"==typeof Object.setPrototypeOf)oa=Object.setPrototypeOf;else{var pa;a:{var qa={a:!0},ra={};try{ra.__proto__=qa;pa=ra.a;break a}catch(a){}pa=!1}oa=pa?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}var sa=oa; function v(a,b){a.prototype=na(b.prototype);a.prototype.constructor=a;if(sa)sa(a,b);else for(var c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.Ub=b.prototype}function ta(){for(var a=Number(this),b=[],c=a;c<arguments.length;c++)b[c-a]=arguments[c];return b} ha("Promise",function(a){function b(g){this.h=0;this.j=void 0;this.i=[];this.G=!1;var h=this.l();try{g(h.resolve,h.reject)}catch(k){h.reject(k)}}function c(){this.h=null}function d(g){return g instanceof b?g:new b(function(h){h(g)})}if(a)return a;c.prototype.i=function(g){if(null==this.h){this.h=[];var h=this;this.j(function(){h.m()})}this.h.push(g)};var e=da.setTimeout;c.prototype.j=function(g){e(g,0)};c.prototype.m=function(){for(;this.h&&this.h.length;){var g=this.h;this.h=[];for(var h=0;h<g.length;++h){var k= g[h];g[h]=null;try{k()}catch(l){this.l(l)}}}this.h=null};c.prototype.l=function(g){this.j(function(){throw g;})};b.prototype.l=function(){function g(l){return function(m){k||(k=!0,l.call(h,m))}}var h=this,k=!1;return{resolve:g(this.P),reject:g(this.m)}};b.prototype.P=function(g){if(g===this)this.m(new TypeError("A Promise cannot resolve to itself"));else if(g instanceof b)this.U(g);else{a:switch(typeof g){case "object":var h=null!=g;break a;case "function":h=!0;break a;default:h=!1}h?this.O(g):this.A(g)}}; b.prototype.O=function(g){var h=void 0;try{h=g.then}catch(k){this.m(k);return}"function"==typeof h?this.ga(h,g):this.A(g)};b.prototype.m=function(g){this.C(2,g)};b.prototype.A=function(g){this.C(1,g)};b.prototype.C=function(g,h){if(0!=this.h)throw Error("Cannot settle("+g+", "+h+"): Promise already settled in state"+this.h);this.h=g;this.j=h;2===this.h&&this.R();this.H()};b.prototype.R=function(){var g=this;e(function(){if(g.N()){var h=da.console;"undefined"!==typeof h&&h.error(g.j)}},1)};b.prototype.N= function(){if(this.G)return!1;var g=da.CustomEvent,h=da.Event,k=da.dispatchEvent;if("undefined"===typeof k)return!0;"function"===typeof g?g=new g("unhandledrejection",{cancelable:!0}):"function"===typeof h?g=new h("unhandledrejection",{cancelable:!0}):(g=da.document.createEvent("CustomEvent"),g.initCustomEvent("unhandledrejection",!1,!0,g));g.promise=this;g.reason=this.j;return k(g)};b.prototype.H=function(){if(null!=this.i){for(var g=0;g<this.i.length;++g)f.i(this.i[g]);this.i=null}};var f=new c; b.prototype.U=function(g){var h=this.l();g.ia(h.resolve,h.reject)};b.prototype.ga=function(g,h){var k=this.l();try{g.call(h,k.resolve,k.reject)}catch(l){k.reject(l)}};b.prototype.then=function(g,h){function k(t,y){return"function"==typeof t?function(F){try{l(t(F))}catch(z){m(z)}}:y}var l,m,q=new b(function(t,y){l=t;m=y});this.ia(k(g,l),k(h,m));return q};b.prototype.catch=function(g){return this.then(void 0,g)};b.prototype.ia=function(g,h){function k(){switch(l.h){case 1:g(l.j);break;case 2:h(l.j); break;default:throw Error("Unexpected state: "+l.h);}}var l=this;null==this.i?f.i(k):this.i.push(k);this.G=!0};b.resolve=d;b.reject=function(g){return new b(function(h,k){k(g)})};b.race=function(g){return new b(function(h,k){for(var l=u(g),m=l.next();!m.done;m=l.next())d(m.value).ia(h,k)})};b.all=function(g){var h=u(g),k=h.next();return k.done?d([]):new b(function(l,m){function q(F){return function(z){t[F]=z;y--;0==y&&l(t)}}var t=[],y=0;do t.push(void 0),y++,d(k.value).ia(q(t.length-1),m),k=h.next(); while(!k.done)})};return b},"es6");ha("Array.prototype.find",function(a){return a?a:function(b,c){a:{var d=this;d instanceof String&&(d=String(d));for(var e=d.length,f=0;f<e;f++){var g=d[f];if(b.call(c,g,f,d)){b=g;break a}}b=void 0}return b}},"es6"); ha("WeakMap",function(a){function b(g){this.h=(f+=Math.random()+1).toString();if(g){g=u(g);for(var h;!(h=g.next()).done;)h=h.value,this.set(h[0],h[1])}}function c(){}function d(g){var h=typeof g;return"object"===h&&null!==g||"function"===h}if(function(){if(!a||!Object.seal)return!1;try{var g=Object.seal({}),h=Object.seal({}),k=new a([[g,2],[h,3]]);if(2!=k.get(g)||3!=k.get(h))return!1;k.delete(g);k.set(h,4);return!k.has(g)&&4==k.get(h)}catch(l){return!1}}())return a;var e="$jscomp_hidden_"+Math.random(), f=0;b.prototype.set=function(g,h){if(!d(g))throw Error("Invalid WeakMap key");if(!la(g,e)){var k=new c;ba(g,e,{value:k})}if(!la(g,e))throw Error("WeakMap key fail: "+g);g[e][this.h]=h;return this};b.prototype.get=function(g){return d(g)&&la(g,e)?g[e][this.h]:void 0};b.prototype.has=function(g){return d(g)&&la(g,e)&&la(g[e],this.h)};b.prototype.delete=function(g){return d(g)&&la(g,e)&&la(g[e],this.h)?delete g[e][this.h]:!1};return b},"es6"); ha("Map",function(a){function b(){var h={};return h.L=h.next=h.head=h}function c(h,k){var l=h.h;return ia(function(){if(l){for(;l.head!=h.h;)l=l.L;for(;l.next!=l.head;)return l=l.next,{done:!1,value:k(l)};l=null}return{done:!0,value:void 0}})}function d(h,k){var l=k&&typeof k;"object"==l||"function"==l?f.has(k)?l=f.get(k):(l=""+ ++g,f.set(k,l)):l="p_"+k;var m=h.i[l];if(m&&la(h.i,l))for(h=0;h<m.length;h++){var q=m[h];if(k!==k&&q.key!==q.key||k===q.key)return{id:l,list:m,index:h,B:q}}return{id:l,list:m, index:-1,B:void 0}}function e(h){this.i={};this.h=b();this.size=0;if(h){h=u(h);for(var k;!(k=h.next()).done;)k=k.value,this.set(k[0],k[1])}}if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var h=Object.seal({x:4}),k=new a(u([[h,"s"]]));if("s"!=k.get(h)||1!=k.size||k.get({x:4})||k.set({x:4},"t")!=k||2!=k.size)return!1;var l=k.entries(),m=l.next();if(m.done||m.value[0]!=h||"s"!=m.value[1])return!1;m=l.next();return m.done||4!=m.value[0].x|| "t"!=m.value[1]||!l.next().done?!1:!0}catch(q){return!1}}())return a;var f=new p.WeakMap;e.prototype.set=function(h,k){h=0===h?0:h;var l=d(this,h);l.list||(l.list=this.i[l.id]=[]);l.B?l.B.value=k:(l.B={next:this.h,L:this.h.L,head:this.h,key:h,value:k},l.list.push(l.B),this.h.L.next=l.B,this.h.L=l.B,this.size++);return this};e.prototype.delete=function(h){h=d(this,h);return h.B&&h.list?(h.list.splice(h.index,1),h.list.length||delete this.i[h.id],h.B.L.next=h.B.next,h.B.next.L=h.B.L,h.B.head=null,this.size--, !0):!1};e.prototype.clear=function(){this.i={};this.h=this.h.L=b();this.size=0};e.prototype.has=function(h){return!!d(this,h).B};e.prototype.get=function(h){return(h=d(this,h).B)&&h.value};e.prototype.entries=function(){return c(this,function(h){return[h.key,h.value]})};e.prototype.keys=function(){return c(this,function(h){return h.key})};e.prototype.values=function(){return c(this,function(h){return h.value})};e.prototype.forEach=function(h,k){for(var l=this.entries(),m;!(m=l.next()).done;)m=m.value, h.call(k,m[1],m[0],this)};e.prototype[r(p.Symbol,"iterator")]=e.prototype.entries;var g=0;return e},"es6");function ua(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c<a.length){var f=c++;return{value:b(f,a[f]),done:!1}}d=!0;return{done:!0,value:void 0}}};e[r(p.Symbol,"iterator")]=function(){return e};return e} ha("String.prototype.startsWith",function(a){return a?a:function(b,c){if(null==this)throw new TypeError("The 'this' value for String.prototype.startsWith must not be null or undefined");if(b instanceof RegExp)throw new TypeError("First argument to String.prototype.startsWith must not be a regular expression");var d=this.length,e=b.length;c=Math.max(0,Math.min(c|0,this.length));for(var f=0;f<e&&c<d;)if(this[c++]!=b[f++])return!1;return f>=e}},"es6");ha("globalThis",function(a){return a||da},"es_2020"); ha("Set",function(a){function b(c){this.h=new p.Map;if(c){c=u(c);for(var d;!(d=c.next()).done;)this.add(d.value)}this.size=this.h.size}if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var c=Object.seal({x:4}),d=new a(u([c]));if(!d.has(c)||1!=d.size||d.add(c)!=d||1!=d.size||d.add({x:4})!=d||2!=d.size)return!1;var e=d.entries(),f=e.next();if(f.done||f.value[0]!=c||f.value[1]!=c)return!1;f=e.next();return f.done||f.value[0]==c||4!=f.value[0].x|| f.value[1]!=f.value[0]?!1:e.next().done}catch(g){return!1}}())return a;b.prototype.add=function(c){c=0===c?0:c;this.h.set(c,c);this.size=this.h.size;return this};b.prototype.delete=function(c){c=this.h.delete(c);this.size=this.h.size;return c};b.prototype.clear=function(){this.h.clear();this.size=0};b.prototype.has=function(c){return this.h.has(c)};b.prototype.entries=function(){return this.h.entries()};b.prototype.values=function(){return r(this.h,"values").call(this.h)};b.prototype.keys=r(b.prototype, "values");b.prototype[r(p.Symbol,"iterator")]=r(b.prototype,"values");b.prototype.forEach=function(c,d){var e=this;this.h.forEach(function(f){return c.call(d,f,f,e)})};return b},"es6");ha("Array.prototype.keys",function(a){return a?a:function(){return ua(this,function(b){return b})}},"es6");ha("Array.prototype.values",function(a){return a?a:function(){return ua(this,function(b,c){return c})}},"es8");ha("Number.isNaN",function(a){return a?a:function(b){return"number"===typeof b&&isNaN(b)}},"es6"); ha("Promise.prototype.finally",function(a){return a?a:function(b){return this.then(function(c){return p.Promise.resolve(b()).then(function(){return c})},function(c){return p.Promise.resolve(b()).then(function(){throw c;})})}},"es9");var w=this||self;function va(a){a=a.split(".");for(var b=w,c=0;c<a.length;c++)if(b=b[a[c]],null==b)return null;return b}function wa(a){var b=typeof a;return"object"!=b?b:a?Array.isArray(a)?"array":b:"null"} function xa(a){var b=wa(a);return"array"==b||"object"==b&&"number"==typeof a.length}function ya(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function za(a){return Object.prototype.hasOwnProperty.call(a,Aa)&&a[Aa]||(a[Aa]=++Ba)}var Aa="closure_uid_"+(1E9*Math.random()>>>0),Ba=0;function Ca(a,b,c){return a.call.apply(a.bind,arguments)} function Da(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}}function Ea(a,b,c){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?Ea=Ca:Ea=Da;return Ea.apply(null,arguments)} function Fa(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}}function Ga(a){var b=["__uspapi"],c=w;b[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+b[0]);for(var d;b.length&&(d=b.shift());)b.length||void 0===a?c[d]&&c[d]!==Object.prototype[d]?c=c[d]:c=c[d]={}:c[d]=a}function Ha(a){return a};var Ia=(new Date).getTime();function Ja(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]} function Ka(a,b){var c=0;a=Ja(String(a)).split(".");b=Ja(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&e<d;e++){var f=a[e]||"",g=b[e]||"";do{f=/(\d*)(\D*)(.*)/.exec(f)||["","","",""];g=/(\d*)(\D*)(.*)/.exec(g)||["","","",""];if(0==f[0].length&&0==g[0].length)break;c=La(0==f[1].length?0:parseInt(f[1],10),0==g[1].length?0:parseInt(g[1],10))||La(0==f[2].length,0==g[2].length)||La(f[2],g[2]);f=f[3];g=g[3]}while(0==c)}return c}function La(a,b){return a<b?-1:a>b?1:0};function Ma(){var a=w.navigator;return a&&(a=a.userAgent)?a:""}function x(a){return-1!=Ma().indexOf(a)};function Na(){return x("Trident")||x("MSIE")}function Oa(){return(x("Chrome")||x("CriOS"))&&!x("Edge")||x("Silk")}function Pa(a){var b={};a.forEach(function(c){b[c[0]]=c[1]});return function(c){return b[r(c,"find").call(c,function(d){return d in b})]||""}} function Qa(){var a=Ma();if(Na()){var b=/rv: *([\d\.]*)/.exec(a);if(b&&b[1])a=b[1];else{b="";var c=/MSIE +([\d\.]+)/.exec(a);if(c&&c[1])if(a=/Trident\/(\d.\d)/.exec(a),"7.0"==c[1])if(a&&a[1])switch(a[1]){case "4.0":b="8.0";break;case "5.0":b="9.0";break;case "6.0":b="10.0";break;case "7.0":b="11.0"}else b="7.0";else b=c[1];a=b}return a}c=RegExp("([A-Z][\\w ]+)/([^\\s]+)\\s*(?:\\((.*?)\\))?","g");b=[];for(var d;d=c.exec(a);)b.push([d[1],d[2],d[3]||void 0]);a=Pa(b);return x("Opera")?a(["Version","Opera"]): x("Edge")?a(["Edge"]):x("Edg/")?a(["Edg"]):x("Silk")?a(["Silk"]):Oa()?a(["Chrome","CriOS","HeadlessChrome"]):(a=b[2])&&a[1]||""};function Ra(a,b){for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)e in d&&b.call(void 0,d[e],e,a)}function Sa(a,b){for(var c=a.length,d=[],e=0,f="string"===typeof a?a.split(""):a,g=0;g<c;g++)if(g in f){var h=f[g];b.call(void 0,h,g,a)&&(d[e++]=h)}return d}function Ta(a,b){for(var c=a.length,d=Array(c),e="string"===typeof a?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d} function Ua(a,b){for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a))return!0;return!1}function Va(a,b){a:{for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:"string"===typeof a?a.charAt(b):a[b]} function Wa(a,b){a:{for(var c="string"===typeof a?a.split(""):a,d=a.length-1;0<=d;d--)if(d in c&&b.call(void 0,c[d],d,a)){b=d;break a}b=-1}return 0>b?null:"string"===typeof a?a.charAt(b):a[b]}function Xa(a,b){a:if("string"===typeof a)a="string"!==typeof b||1!=b.length?-1:a.indexOf(b,0);else{for(var c=0;c<a.length;c++)if(c in a&&a[c]===b){a=c;break a}a=-1}return 0<=a}function Ya(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]};function Za(a){Za[" "](a);return a}Za[" "]=function(){};var $a=Na();!x("Android")||Oa();Oa();!x("Safari")||Oa();var ab={},bb=null;var cb="undefined"!==typeof Uint8Array;var db="function"===typeof p.Symbol&&"symbol"===typeof(0,p.Symbol)()?(0,p.Symbol)(void 0):void 0;function eb(a,b){Object.isFrozen(a)||(db?a[db]|=b:void 0!==a.ma?a.ma|=b:Object.defineProperties(a,{ma:{value:b,configurable:!0,writable:!0,enumerable:!1}}))}function fb(a){var b;db?b=a[db]:b=a.ma;return null==b?0:b}function gb(a){eb(a,1);return a}function hb(a){return Array.isArray(a)?!!(fb(a)&2):!1}function ib(a){if(!Array.isArray(a))throw Error("cannot mark non-array as immutable");eb(a,2)};function jb(a){return null!==a&&"object"===typeof a&&!Array.isArray(a)&&a.constructor===Object}var kb,lb=Object.freeze(gb([]));function mb(a){if(hb(a.v))throw Error("Cannot mutate an immutable Message");}var nb="undefined"!=typeof p.Symbol&&"undefined"!=typeof p.Symbol.hasInstance;function ob(a){return{value:a,configurable:!1,writable:!1,enumerable:!1}};function pb(a){switch(typeof a){case "number":return isFinite(a)?a:String(a);case "object":if(a&&!Array.isArray(a)&&cb&&null!=a&&a instanceof Uint8Array){var b;void 0===b&&(b=0);if(!bb){bb={};for(var c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),d=["+/=","+/","-_=","-_.","-_"],e=0;5>e;e++){var f=c.concat(d[e].split(""));ab[e]=f;for(var g=0;g<f.length;g++){var h=f[g];void 0===bb[h]&&(bb[h]=g)}}}b=ab[b];c=Array(Math.floor(a.length/3));d=b[64]||"";for(e=f=0;f<a.length- 2;f+=3){var k=a[f],l=a[f+1];h=a[f+2];g=b[k>>2];k=b[(k&3)<<4|l>>4];l=b[(l&15)<<2|h>>6];h=b[h&63];c[e++]=g+k+l+h}g=0;h=d;switch(a.length-f){case 2:g=a[f+1],h=b[(g&15)<<2]||d;case 1:a=a[f],c[e]=b[a>>2]+b[(a&3)<<4|g>>4]+h+d}return c.join("")}}return a};function qb(a){var b=sb;b=void 0===b?tb:b;return ub(a,b)}function vb(a,b){if(null!=a){if(Array.isArray(a))a=ub(a,b);else if(jb(a)){var c={},d;for(d in a)Object.prototype.hasOwnProperty.call(a,d)&&(c[d]=vb(a[d],b));a=c}else a=b(a);return a}}function ub(a,b){for(var c=a.slice(),d=0;d<c.length;d++)c[d]=vb(c[d],b);Array.isArray(a)&&fb(a)&1&&gb(c);return c}function sb(a){if(a&&"object"==typeof a&&a.toJSON)return a.toJSON();a=pb(a);return Array.isArray(a)?qb(a):a} function tb(a){return cb&&null!=a&&a instanceof Uint8Array?new Uint8Array(a):a};function A(a,b,c){return-1===b?null:b>=a.l?a.i?a.i[b]:void 0:(void 0===c?0:c)&&a.i&&(c=a.i[b],null!=c)?c:a.v[b+a.j]}function B(a,b,c,d,e){d=void 0===d?!1:d;(void 0===e?0:e)||mb(a);b<a.l&&!d?a.v[b+a.j]=c:(a.i||(a.i=a.v[a.l+a.j]={}))[b]=c;return a}function wb(a,b,c,d){c=void 0===c?!0:c;d=void 0===d?!1:d;var e=A(a,b,d);null==e&&(e=lb);if(hb(a.v))c&&(ib(e),Object.freeze(e));else if(e===lb||hb(e))e=gb(e.slice()),B(a,b,e,d);return e}function xb(a,b){a=A(a,b);return null==a?a:!!a} function C(a,b,c){a=A(a,b);return null==a?c:a}function D(a,b,c){a=xb(a,b);return null==a?void 0===c?!1:c:a}function yb(a,b){a=A(a,b);a=null==a?a:+a;return null==a?0:a}function zb(a,b,c){var d=void 0===d?!1:d;return B(a,b,null==c?gb([]):Array.isArray(c)?gb(c):c,d)}function Ab(a,b,c){mb(a);0!==c?B(a,b,c):B(a,b,void 0,!1,!1);return a}function Bb(a,b,c,d){mb(a);(c=Cb(a,c))&&c!==b&&null!=d&&(a.h&&c in a.h&&(a.h[c]=void 0),B(a,c));return B(a,b,d)}function Db(a,b,c){return Cb(a,b)===c?c:-1} function Cb(a,b){for(var c=0,d=0;d<b.length;d++){var e=b[d];null!=A(a,e)&&(0!==c&&B(a,c,void 0,!1,!0),c=e)}return c}function G(a,b,c){if(-1===c)return null;a.h||(a.h={});var d=a.h[c];if(d)return d;var e=A(a,c,!1);if(null==e)return d;b=new b(e);hb(a.v)&&ib(b.v);return a.h[c]=b}function H(a,b,c){a.h||(a.h={});var d=hb(a.v),e=a.h[c];if(!e){var f=wb(a,c,!0,!1);e=[];d=d||hb(f);for(var g=0;g<f.length;g++)e[g]=new b(f[g]),d&&ib(e[g].v);d&&(ib(e),Object.freeze(e));a.h[c]=e}return e} function Eb(a,b,c){var d=void 0===d?!1:d;mb(a);a.h||(a.h={});var e=c?c.v:c;a.h[b]=c;return B(a,b,e,d)}function Fb(a,b,c,d){mb(a);a.h||(a.h={});var e=d?d.v:d;a.h[b]=d;return Bb(a,b,c,e)}function Gb(a,b,c){var d=void 0===d?!1:d;mb(a);if(c){var e=gb([]);for(var f=0;f<c.length;f++)e[f]=c[f].v;a.h||(a.h={});a.h[b]=c}else a.h&&(a.h[b]=void 0),e=lb;return B(a,b,e,d)}function I(a,b){return C(a,b,"")}function Hb(a,b,c){return C(a,Db(a,c,b),0)}function Ib(a,b,c,d){return G(a,b,Db(a,d,c))};function Jb(a,b,c){a||(a=Kb);Kb=null;var d=this.constructor.messageId;a||(a=d?[d]:[]);this.j=(d?0:-1)-(this.constructor.h||0);this.h=void 0;this.v=a;a:{d=this.v.length;a=d-1;if(d&&(d=this.v[a],jb(d))){this.l=a-this.j;this.i=d;break a}void 0!==b&&-1<b?(this.l=Math.max(b,a+1-this.j),this.i=void 0):this.l=Number.MAX_VALUE}if(c)for(b=0;b<c.length;b++)if(a=c[b],a<this.l)a+=this.j,(d=this.v[a])?Array.isArray(d)&&gb(d):this.v[a]=lb;else{d=this.i||(this.i=this.v[this.l+this.j]={});var e=d[a];e?Array.isArray(e)&& gb(e):d[a]=lb}}Jb.prototype.toJSON=function(){var a=this.v;return kb?a:qb(a)};function Lb(a){kb=!0;try{return JSON.stringify(a.toJSON(),Mb)}finally{kb=!1}}function Nb(a,b){if(null==b||""==b)return new a;b=JSON.parse(b);if(!Array.isArray(b))throw Error("Expected to deserialize an Array but got "+wa(b)+": "+b);Kb=b;a=new a(b);Kb=null;return a}function Mb(a,b){return pb(b)}var Kb;function Ob(){Jb.apply(this,arguments)}v(Ob,Jb);if(nb){var Pb={};Object.defineProperties(Ob,(Pb[p.Symbol.hasInstance]=ob(function(){throw Error("Cannot perform instanceof checks for MutableMessage");}),Pb))};function J(){Ob.apply(this,arguments)}v(J,Ob);if(nb){var Qb={};Object.defineProperties(J,(Qb[p.Symbol.hasInstance]=ob(Object[p.Symbol.hasInstance]),Qb))};function Rb(a){J.call(this,a,-1,Sb)}v(Rb,J);function Tb(a){J.call(this,a)}v(Tb,J);var Sb=[2,3];function Ub(a,b){this.i=a===Vb&&b||"";this.h=Wb}var Wb={},Vb={};function Xb(a,b){var c={},d;for(d in a)b.call(void 0,a[d],d,a)&&(c[d]=a[d]);return c}function Yb(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return!0;return!1}function Zb(a){var b=[],c=0,d;for(d in a)b[c++]=a[d];return b}function $b(a){var b={},c;for(c in a)b[c]=a[c];return b};var ac;function bc(){if(void 0===ac){var a=null,b=w.trustedTypes;if(b&&b.createPolicy){try{a=b.createPolicy("goog#html",{createHTML:Ha,createScript:Ha,createScriptURL:Ha})}catch(c){w.console&&w.console.error(c.message)}ac=a}else ac=a}return ac};function cc(a,b){this.h=b===dc?a:""}function ec(a,b){a=fc.exec(gc(a).toString());var c=a[3]||"";return hc(a[1]+ic("?",a[2]||"",b)+ic("#",c))}cc.prototype.toString=function(){return this.h+""};function gc(a){return a instanceof cc&&a.constructor===cc?a.h:"type_error:TrustedResourceUrl"}var fc=/^([^?#]*)(\?[^#]*)?(#[\s\S]*)?/,dc={};function hc(a){var b=bc();a=b?b.createScriptURL(a):a;return new cc(a,dc)} function ic(a,b,c){if(null==c)return b;if("string"===typeof c)return c?a+encodeURIComponent(c):"";for(var d in c)if(Object.prototype.hasOwnProperty.call(c,d)){var e=c[d];e=Array.isArray(e)?e:[e];for(var f=0;f<e.length;f++){var g=e[f];null!=g&&(b||(b=a),b+=(b.length>a.length?"&":"")+encodeURIComponent(d)+"="+encodeURIComponent(String(g)))}}return b};function jc(a,b){this.h=b===kc?a:""}jc.prototype.toString=function(){return this.h.toString()};var kc={};/* SPDX-License-Identifier: Apache-2.0 */ var lc={};function mc(){}function nc(a){this.h=a}v(nc,mc);nc.prototype.toString=function(){return this.h.toString()};function oc(a){var b,c=null==(b=bc())?void 0:b.createScriptURL(a);return new nc(null!=c?c:a,lc)}function pc(a){if(a instanceof nc)return a.h;throw Error("");};function qc(a){return a instanceof mc?pc(a):gc(a)}function rc(a){return a instanceof jc&&a.constructor===jc?a.h:"type_error:SafeUrl"}function sc(a){return a instanceof mc?pc(a).toString():gc(a).toString()};var tc="alternate author bookmark canonical cite help icon license next prefetch dns-prefetch prerender preconnect preload prev search subresource".split(" ");function uc(a){return function(){return!a.apply(this,arguments)}}function vc(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}}function wc(a){var b=a;return function(){if(b){var c=b;b=null;c()}}};function xc(a,b,c){a.addEventListener&&a.addEventListener(b,c,!1)}function yc(a,b){a.removeEventListener&&a.removeEventListener("message",b,!1)};function zc(a){return String(a).replace(/\-([a-z])/g,function(b,c){return c.toUpperCase()})};function Ac(a,b,c){function d(h){h&&b.appendChild("string"===typeof h?a.createTextNode(h):h)}for(var e=1;e<c.length;e++){var f=c[e];if(!xa(f)||ya(f)&&0<f.nodeType)d(f);else{a:{if(f&&"number"==typeof f.length){if(ya(f)){var g="function"==typeof f.item||"string"==typeof f.item;break a}if("function"===typeof f){g="function"==typeof f.item;break a}}g=!1}Ra(g?Ya(f):f,d)}}}function Bc(a){this.h=a||w.document||document}n=Bc.prototype;n.getElementsByTagName=function(a,b){return(b||this.h).getElementsByTagName(String(a))}; n.createElement=function(a){var b=this.h;a=String(a);"application/xhtml+xml"===b.contentType&&(a=a.toLowerCase());return b.createElement(a)};n.createTextNode=function(a){return this.h.createTextNode(String(a))};n.append=function(a,b){Ac(9==a.nodeType?a:a.ownerDocument||a.document,a,arguments)}; n.contains=function(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a};function Cc(){return!Dc()&&(x("iPod")||x("iPhone")||x("Android")||x("IEMobile"))}function Dc(){return x("iPad")||x("Android")&&!x("Mobile")||x("Silk")};var Ec=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$"),Fc=/#|$/;function Gc(a){var b=a.search(Fc),c;a:{for(c=0;0<=(c=a.indexOf("client",c))&&c<b;){var d=a.charCodeAt(c-1);if(38==d||63==d)if(d=a.charCodeAt(c+6),!d||61==d||38==d||35==d)break a;c+=7}c=-1}if(0>c)return null;d=a.indexOf("&",c);if(0>d||d>b)d=b;c+=7;return decodeURIComponent(a.substr(c,d-c).replace(/\+/g," "))};function Hc(a){try{var b;if(b=!!a&&null!=a.location.href)a:{try{Za(a.foo);b=!0;break a}catch(c){}b=!1}return b}catch(c){return!1}}function Ic(a){return Hc(a.top)?a.top:null} function Lc(a,b){var c=Mc("SCRIPT",a);c.src=qc(b);var d,e;(d=(b=null==(e=(d=(c.ownerDocument&&c.ownerDocument.defaultView||window).document).querySelector)?void 0:e.call(d,"script[nonce]"))?b.nonce||b.getAttribute("nonce")||"":"")&&c.setAttribute("nonce",d);return(a=a.getElementsByTagName("script")[0])&&a.parentNode?(a.parentNode.insertBefore(c,a),c):null}function Nc(a,b){return b.getComputedStyle?b.getComputedStyle(a,null):a.currentStyle} function Oc(a,b){if(!Pc()&&!Qc()){var c=Math.random();if(c<b)return c=Rc(),a[Math.floor(c*a.length)]}return null}function Rc(){if(!p.globalThis.crypto)return Math.random();try{var a=new Uint32Array(1);p.globalThis.crypto.getRandomValues(a);return a[0]/65536/65536}catch(b){return Math.random()}}function Sc(a,b){if(a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&b(a[c],c,a)} function Tc(a){var b=a.length;if(0==b)return 0;for(var c=305419896,d=0;d<b;d++)c^=(c<<5)+(c>>2)+a.charCodeAt(d)&4294967295;return 0<c?c:4294967296+c}var Qc=vc(function(){return Ua(["Google Web Preview","Mediapartners-Google","Google-Read-Aloud","Google-Adwords"],Uc)||1E-4>Math.random()});function Vc(a,b){var c=-1;try{a&&(c=parseInt(a.getItem(b),10))}catch(d){return null}return 0<=c&&1E3>c?c:null} function Wc(a,b){var c=Qc()?null:Math.floor(1E3*Rc());var d;if(d=null!=c&&a)a:{var e=String(c);try{if(a){a.setItem(b,e);d=e;break a}}catch(f){}d=null}return d?c:null}var Pc=vc(function(){return Uc("MSIE")});function Uc(a){return-1!=Ma().indexOf(a)}var Xc=/^([0-9.]+)px$/,Yc=/^(-?[0-9.]{1,30})$/;function Zc(a){var b=void 0===b?null:b;if(!Yc.test(a))return b;a=Number(a);return isNaN(a)?b:a}function K(a){return(a=Xc.exec(a))?+a[1]:null} function $c(a,b){for(var c=0;50>c;++c){try{var d=!(!a.frames||!a.frames[b])}catch(g){d=!1}if(d)return a;a:{try{var e=a.parent;if(e&&e!=a){var f=e;break a}}catch(g){}f=null}if(!(a=f))break}return null}var ad=vc(function(){return Cc()?2:Dc()?1:0});function bd(a){Sc({display:"none"},function(b,c){a.style.setProperty(c,b,"important")})}var cd=[];function dd(){var a=cd;cd=[];a=u(a);for(var b=a.next();!b.done;b=a.next()){b=b.value;try{b()}catch(c){}}} function ed(a,b){0!=a.length&&b.head&&a.forEach(function(c){if(c&&c&&b.head){var d=Mc("META");b.head.appendChild(d);d.httpEquiv="origin-trial";d.content=c}})}function fd(a){if("number"!==typeof a.goog_pvsid)try{Object.defineProperty(a,"goog_pvsid",{value:Math.floor(Math.random()*Math.pow(2,52)),configurable:!1})}catch(b){}return Number(a.goog_pvsid)||-1} function gd(a){var b=hd;"complete"===b.readyState||"interactive"===b.readyState?(cd.push(a),1==cd.length&&(p.Promise?p.Promise.resolve().then(dd):window.setImmediate?setImmediate(dd):setTimeout(dd,0))):b.addEventListener("DOMContentLoaded",a)}function Mc(a,b){b=void 0===b?document:b;return b.createElement(String(a).toLowerCase())};var id=null;var hd=document,L=window;var jd=null;function kd(a,b){b=void 0===b?[]:b;var c=!1;w.google_logging_queue||(c=!0,w.google_logging_queue=[]);w.google_logging_queue.push([a,b]);if(a=c){if(null==jd){jd=!1;try{var d=Ic(w);d&&-1!==d.location.hash.indexOf("google_logging")&&(jd=!0);w.localStorage.getItem("google_logging")&&(jd=!0)}catch(e){}}a=jd}a&&(d=w.document,a=new Ub(Vb,"https://pagead2.googlesyndication.com/pagead/js/logging_library.js"),a=hc(a instanceof Ub&&a.constructor===Ub&&a.h===Wb?a.i:"type_error:Const"),Lc(d,a))};function ld(a){a=void 0===a?w:a;var b=a.context||a.AMP_CONTEXT_DATA;if(!b)try{b=a.parent.context||a.parent.AMP_CONTEXT_DATA}catch(c){}try{if(b&&b.pageViewId&&b.canonicalUrl)return b}catch(c){}return null}function md(a){return(a=a||ld())?Hc(a.master)?a.master:null:null};function nd(a){var b=ta.apply(1,arguments);if(0===b.length)return oc(a[0]);for(var c=[a[0]],d=0;d<b.length;d++)c.push(encodeURIComponent(b[d])),c.push(a[d+1]);return oc(c.join(""))};function od(a){var b=void 0===b?1:b;a=md(ld(a))||a;a.google_unique_id=(a.google_unique_id||0)+b;return a.google_unique_id}function pd(a){a=a.google_unique_id;return"number"===typeof a?a:0}function qd(){var a=void 0===a?L:a;if(!a)return!1;try{return!(!a.navigator.standalone&&!a.top.navigator.standalone)}catch(b){return!1}}function rd(a){if(!a)return"";a=a.toLowerCase();"ca-"!=a.substring(0,3)&&(a="ca-"+a);return a};function sd(){this.i=new td(this);this.h=0}sd.prototype.resolve=function(a){ud(this);this.h=1;this.l=a;vd(this.i)};sd.prototype.reject=function(a){ud(this);this.h=2;this.j=a;vd(this.i)};function ud(a){if(0!=a.h)throw Error("Already resolved/rejected.");}function td(a){this.h=a}td.prototype.then=function(a,b){if(this.i)throw Error("Then functions already set.");this.i=a;this.j=b;vd(this)}; function vd(a){switch(a.h.h){case 0:break;case 1:a.i&&a.i(a.h.l);break;case 2:a.j&&a.j(a.h.j);break;default:throw Error("Unhandled deferred state.");}};function wd(a){this.h=a.slice(0)}n=wd.prototype;n.forEach=function(a){var b=this;this.h.forEach(function(c,d){return void a(c,d,b)})};n.filter=function(a){return new wd(Sa(this.h,a))};n.apply=function(a){return new wd(a(this.h.slice(0)))};n.sort=function(a){return new wd(this.h.slice(0).sort(a))};n.get=function(a){return this.h[a]};n.add=function(a){var b=this.h.slice(0);b.push(a);return new wd(b)};function xd(a,b){for(var c=[],d=a.length,e=0;e<d;e++)c.push(a[e]);c.forEach(b,void 0)};function yd(){this.h={};this.i={}}yd.prototype.set=function(a,b){var c=zd(a);this.h[c]=b;this.i[c]=a};yd.prototype.get=function(a,b){a=zd(a);return void 0!==this.h[a]?this.h[a]:b};yd.prototype.clear=function(){this.h={};this.i={}};function zd(a){return a instanceof Object?String(za(a)):a+""};function Ad(a,b){this.h=a;this.i=b}function Bd(a){return null!=a.h?a.h.value:null}function Cd(a,b){null!=a.h&&b(a.h.value);return a}Ad.prototype.map=function(a){return null!=this.h?(a=a(this.h.value),a instanceof Ad?a:Dd(a)):this};function Ed(a,b){null!=a.h||b(a.i);return a}function Dd(a){return new Ad({value:a},null)}function Fd(a){return new Ad(null,a)}function Gd(a){try{return Dd(a())}catch(b){return Fd(b)}};function Hd(a){this.h=new yd;if(a)for(var b=0;b<a.length;++b)this.add(a[b])}Hd.prototype.add=function(a){this.h.set(a,!0)};Hd.prototype.contains=function(a){return void 0!==this.h.h[zd(a)]};function Id(){this.h=new yd}Id.prototype.set=function(a,b){var c=this.h.get(a);c||(c=new Hd,this.h.set(a,c));c.add(b)};function Jd(a){J.call(this,a,-1,Kd)}v(Jd,J);Jd.prototype.getId=function(){return A(this,3)};var Kd=[4];function Ld(a){var b=void 0===a.Ga?void 0:a.Ga,c=void 0===a.gb?void 0:a.gb,d=void 0===a.Ra?void 0:a.Ra;this.h=void 0===a.bb?void 0:a.bb;this.l=new wd(b||[]);this.j=d;this.i=c};function Md(a){var b=[],c=a.l;c&&c.h.length&&b.push({X:"a",ca:Nd(c)});null!=a.h&&b.push({X:"as",ca:a.h});null!=a.i&&b.push({X:"i",ca:String(a.i)});null!=a.j&&b.push({X:"rp",ca:String(a.j)});b.sort(function(d,e){return d.X.localeCompare(e.X)});b.unshift({X:"t",ca:"aa"});return b}function Nd(a){a=a.h.slice(0).map(Od);a=JSON.stringify(a);return Tc(a)}function Od(a){var b={};null!=A(a,7)&&(b.q=A(a,7));null!=A(a,2)&&(b.o=A(a,2));null!=A(a,5)&&(b.p=A(a,5));return b};function Pd(a){J.call(this,a)}v(Pd,J);Pd.prototype.setLocation=function(a){return B(this,1,a)};function Qd(a,b){this.Ja=a;this.Qa=b}function Rd(a){var b=[].slice.call(arguments).filter(uc(function(e){return null===e}));if(!b.length)return null;var c=[],d={};b.forEach(function(e){c=c.concat(e.Ja||[]);d=r(Object,"assign").call(Object,d,e.Qa)});return new Qd(c,d)} function Sd(a){switch(a){case 1:return new Qd(null,{google_ad_semantic_area:"mc"});case 2:return new Qd(null,{google_ad_semantic_area:"h"});case 3:return new Qd(null,{google_ad_semantic_area:"f"});case 4:return new Qd(null,{google_ad_semantic_area:"s"});default:return null}} function Td(a){if(null==a)a=null;else{var b=Md(a);a=[];b=u(b);for(var c=b.next();!c.done;c=b.next()){c=c.value;var d=String(c.ca);a.push(c.X+"."+(20>=d.length?d:d.slice(0,19)+"_"))}a=new Qd(null,{google_placement_id:a.join("~")})}return a};var Ud={},Vd=new Qd(["google-auto-placed"],(Ud.google_reactive_ad_format=40,Ud.google_tag_origin="qs",Ud));function Wd(a){J.call(this,a)}v(Wd,J);function Xd(a){J.call(this,a)}v(Xd,J);Xd.prototype.getName=function(){return A(this,4)};function Yd(a){J.call(this,a)}v(Yd,J);function Zd(a){J.call(this,a)}v(Zd,J);function $d(a){J.call(this,a)}v($d,J);var ae=[1,2,3];function be(a){J.call(this,a)}v(be,J);function ce(a){J.call(this,a,-1,de)}v(ce,J);var de=[6,7,9,10,11];function ee(a){J.call(this,a,-1,fe)}v(ee,J);function ge(a){J.call(this,a)}v(ge,J);function he(a){J.call(this,a)}v(he,J);var fe=[1],ie=[1,2];function je(a){J.call(this,a,-1,ke)}v(je,J);function le(a){J.call(this,a)}v(le,J);function me(a){J.call(this,a,-1,ne)}v(me,J);function oe(a){J.call(this,a)}v(oe,J);function pe(a){J.call(this,a)}v(pe,J);function qe(a){J.call(this,a)}v(qe,J);function re(a){J.call(this,a)}v(re,J);var ke=[1,2,5,7],ne=[2,5,6,11];function se(a){J.call(this,a)}v(se,J);function te(a){if(1!=a.nodeType)var b=!1;else if(b="INS"==a.tagName)a:{b=["adsbygoogle-placeholder"];a=a.className?a.className.split(/\s+/):[];for(var c={},d=0;d<a.length;++d)c[a[d]]=!0;for(d=0;d<b.length;++d)if(!c[b[d]]){b=!1;break a}b=!0}return b};function ue(a,b,c){switch(c){case 0:b.parentNode&&b.parentNode.insertBefore(a,b);break;case 3:if(c=b.parentNode){var d=b.nextSibling;if(d&&d.parentNode!=c)for(;d&&8==d.nodeType;)d=d.nextSibling;c.insertBefore(a,d)}break;case 1:b.insertBefore(a,b.firstChild);break;case 2:b.appendChild(a)}te(b)&&(b.setAttribute("data-init-display",b.style.display),b.style.display="block")};function M(a,b){this.h=a;this.defaultValue=void 0===b?!1:b}function N(a,b){this.h=a;this.defaultValue=void 0===b?0:b}function ve(a,b){b=void 0===b?[]:b;this.h=a;this.defaultValue=b};var we=new M(1084),xe=new M(1082,!0),ye=new N(62,.001),ze=new N(1130,100),Ae=new function(a,b){this.h=a;this.defaultValue=void 0===b?"":b}(14),Be=new N(1114,1),Ce=new N(1110),De=new N(1111),Ee=new N(1112),Fe=new N(1113),Ge=new N(1104),He=new N(1108),Ie=new N(1106),Je=new N(1107),Ke=new N(1105),Le=new N(1115,1),Me=new M(1121),Ne=new M(1144),Oe=new M(1143),Pe=new M(316),Qe=new M(313),Re=new M(369),Se=new M(1093),Te=new N(1098),Ue=new M(1129),Ve=new M(1128),We=new M(1026),Xe=new M(1090),Ye=new M(1053, !0),Ze=new M(1162),$e=new M(1120),af=new M(1100,!0),bf=new N(1046),cf=new M(1102,!0),df=new M(218),ef=new M(217),ff=new M(227),gf=new M(208),hf=new M(282),jf=new M(1086),kf=new N(1079,5),lf=new M(1141),mf=new ve(1939),nf=new ve(1934,["A8FHS1NmdCwGqD9DwOicnHHY+y27kdWfxKa0YHSGDfv0CSpDKRHTQdQmZVPDUdaFWUsxdgVxlwAd6o+dhJykPA0AAACWeyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9", "A8zdXi6dr1hwXEUjQrYiyYQGlU3557y5QWDnN0Lwgj9ePt66XMEvNkVWOEOWPd7TP9sBQ25X0Q15Lr1Nn4oGFQkAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9","A4/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme/J33Q/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9"]), of=new M(203),pf=new M(434462125),qf=new M(84),rf=new M(1928),sf=new M(1941),tf=new M(370946349),uf=new M(392736476,!0),vf=new N(406149835),wf=new ve(1932,["AxujKG9INjsZ8/gUq8+dTruNvk7RjZQ1oFhhgQbcTJKDnZfbzSTE81wvC2Hzaf3TW4avA76LTZEMdiedF1vIbA4AAABueyJvcmlnaW4iOiJodHRwczovL2ltYXNkay5nb29nbGVhcGlzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzVGhpcmRQYXJ0eSI6dHJ1ZX0=","Azuce85ORtSnWe1MZDTv68qpaW3iHyfL9YbLRy0cwcCZwVnePnOmkUJlG8HGikmOwhZU22dElCcfrfX2HhrBPAkAAAB7eyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9", "A16nvcdeoOAqrJcmjLRpl1I6f3McDD8EfofAYTt/P/H4/AWwB99nxiPp6kA0fXoiZav908Z8etuL16laFPUdfQsAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9","AxBHdr0J44vFBQtZUqX9sjiqf5yWZ/OcHRcRMN3H9TH+t90V/j3ENW6C8+igBZFXMJ7G3Pr8Dd13632aLng42wgAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9", "A88BWHFjcawUfKU3lIejLoryXoyjooBXLgWmGh+hNcqMK44cugvsI5YZbNarYvi3roc1fYbHA1AVbhAtuHZflgEAAAB2eyJvcmlnaW4iOiJodHRwczovL2dvb2dsZS5jb206NDQzIiwiZmVhdHVyZSI6IlRydXN0VG9rZW5zIiwiZXhwaXJ5IjoxNjUyNzc0NDAwLCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ=="]),xf=new N(1935);function O(a){var b="sa";if(a.sa&&a.hasOwnProperty(b))return a.sa;b=new a;return a.sa=b};function yf(){var a={};this.i=function(b,c){return null!=a[b]?a[b]:c};this.j=function(b,c){return null!=a[b]?a[b]:c};this.l=function(b,c){return null!=a[b]?a[b]:c};this.h=function(b,c){return null!=a[b]?a[b]:c};this.m=function(){}}function P(a){return O(yf).i(a.h,a.defaultValue)}function Q(a){return O(yf).j(a.h,a.defaultValue)}function zf(){return O(yf).l(Ae.h,Ae.defaultValue)};function Af(a,b,c){function d(f){f=Bf(f);return null==f?!1:c>f}function e(f){f=Bf(f);return null==f?!1:c<f}switch(b){case 0:return{init:Cf(a.previousSibling,e),ja:function(f){return Cf(f.previousSibling,e)},na:0};case 2:return{init:Cf(a.lastChild,e),ja:function(f){return Cf(f.previousSibling,e)},na:0};case 3:return{init:Cf(a.nextSibling,d),ja:function(f){return Cf(f.nextSibling,d)},na:3};case 1:return{init:Cf(a.firstChild,d),ja:function(f){return Cf(f.nextSibling,d)},na:3}}throw Error("Un-handled RelativePosition: "+ b);}function Bf(a){return a.hasOwnProperty("google-ama-order-assurance")?a["google-ama-order-assurance"]:null}function Cf(a,b){return a&&b(a)?a:null};var Df={rectangle:1,horizontal:2,vertical:4};function Ef(a,b){a.google_image_requests||(a.google_image_requests=[]);var c=Mc("IMG",a.document);c.src=b;a.google_image_requests.push(c)}function Ff(a){var b="https://pagead2.googlesyndication.com/pagead/gen_204?id=dtt_err";Sc(a,function(c,d){c&&(b+="&"+d+"="+encodeURIComponent(c))});Gf(b)}function Gf(a){var b=window;b.fetch?b.fetch(a,{keepalive:!0,credentials:"include",redirect:"follow",method:"get",mode:"no-cors"}):Ef(b,a)};function Hf(){this.j="&";this.i={};this.l=0;this.h=[]}function If(a,b){var c={};c[a]=b;return[c]}function Jf(a,b,c,d,e){var f=[];Sc(a,function(g,h){(g=Kf(g,b,c,d,e))&&f.push(h+"="+g)});return f.join(b)} function Kf(a,b,c,d,e){if(null==a)return"";b=b||"&";c=c||",$";"string"==typeof c&&(c=c.split(""));if(a instanceof Array){if(d=d||0,d<c.length){for(var f=[],g=0;g<a.length;g++)f.push(Kf(a[g],b,c,d+1,e));return f.join(c[d])}}else if("object"==typeof a)return e=e||0,2>e?encodeURIComponent(Jf(a,b,c,d,e+1)):"...";return encodeURIComponent(String(a))} function Lf(a,b){var c="https://pagead2.googlesyndication.com"+b,d=Mf(a)-b.length;if(0>d)return"";a.h.sort(function(m,q){return m-q});b=null;for(var e="",f=0;f<a.h.length;f++)for(var g=a.h[f],h=a.i[g],k=0;k<h.length;k++){if(!d){b=null==b?g:b;break}var l=Jf(h[k],a.j,",$");if(l){l=e+l;if(d>=l.length){d-=l.length;c+=l;e=a.j;break}b=null==b?g:b}}a="";null!=b&&(a=e+"trn="+b);return c+a}function Mf(a){var b=1,c;for(c in a.i)b=c.length>b?c.length:b;return 3997-b-a.j.length-1};function Nf(){this.h=Math.random()}function Of(){var a=Pf,b=w.google_srt;0<=b&&1>=b&&(a.h=b)}function Qf(a,b,c,d,e){if((d?a.h:Math.random())<(e||.01))try{if(c instanceof Hf)var f=c;else f=new Hf,Sc(c,function(h,k){var l=f,m=l.l++;h=If(k,h);l.h.push(m);l.i[m]=h});var g=Lf(f,"/pagead/gen_204?id="+b+"&");g&&Ef(w,g)}catch(h){}};var Rf={overlays:1,interstitials:2,vignettes:2,inserts:3,immersives:4,list_view:5};function Sf(){this.wasPlaTagProcessed=!1;this.wasReactiveAdConfigReceived={};this.adCount={};this.wasReactiveAdVisible={};this.stateForType={};this.reactiveTypeEnabledInAsfe={};this.wasReactiveTagRequestSent=!1;this.reactiveTypeDisabledByPublisher={};this.tagSpecificState={};this.messageValidationEnabled=!1;this.floatingAdsStacking=new Tf;this.sideRailProcessedFixedElements=new p.Set;this.sideRailAvailableSpace=new p.Map} function Uf(a){a.google_reactive_ads_global_state?(null==a.google_reactive_ads_global_state.sideRailProcessedFixedElements&&(a.google_reactive_ads_global_state.sideRailProcessedFixedElements=new p.Set),null==a.google_reactive_ads_global_state.sideRailAvailableSpace&&(a.google_reactive_ads_global_state.sideRailAvailableSpace=new p.Map)):a.google_reactive_ads_global_state=new Sf;return a.google_reactive_ads_global_state} function Tf(){this.maxZIndexRestrictions={};this.nextRestrictionId=0;this.maxZIndexListeners=[]};function Vf(a){a=a.document;var b={};a&&(b="CSS1Compat"==a.compatMode?a.documentElement:a.body);return b||{}}function Wf(a){return Vf(a).clientWidth};function Xf(a){return null!==a&&void 0!==a}function Yf(a,b){if(!b(a))throw Error(String(a));};function Zf(a){return"string"===typeof a}function $f(a){return void 0===a};function ag(a){J.call(this,a,-1,bg)}v(ag,J);var bg=[2,8],cg=[3,4,5],dg=[6,7];var eg;eg={Kb:0,Ya:3,Za:4,$a:5};var fg=eg.Ya,gg=eg.Za,hg=eg.$a;function ig(a){return null!=a?!a:a}function jg(a,b){for(var c=!1,d=0;d<a.length;d++){var e=a[d]();if(e===b)return e;null==e&&(c=!0)}if(!c)return!b}function kg(a,b){var c=H(a,ag,2);if(!c.length)return lg(a,b);a=C(a,1,0);if(1===a)return ig(kg(c[0],b));c=Ta(c,function(d){return function(){return kg(d,b)}});switch(a){case 2:return jg(c,!1);case 3:return jg(c,!0)}} function lg(a,b){var c=Cb(a,cg);a:{switch(c){case fg:var d=Hb(a,3,cg);break a;case gg:d=Hb(a,4,cg);break a;case hg:d=Hb(a,5,cg);break a}d=void 0}if(d&&(b=(b=b[c])&&b[d])){try{var e=b.apply(null,ka(wb(a,8)))}catch(f){return}b=C(a,1,0);if(4===b)return!!e;d=null!=e;if(5===b)return d;if(12===b)a=I(a,Db(a,dg,7));else a:{switch(c){case gg:a=yb(a,Db(a,dg,6));break a;case hg:a=I(a,Db(a,dg,7));break a}a=void 0}if(null!=a){if(6===b)return e===a;if(9===b)return null!=e&&0===Ka(String(e),a);if(d)switch(b){case 7:return e< a;case 8:return e>a;case 12:return Zf(a)&&Zf(e)&&(new RegExp(a)).test(e);case 10:return null!=e&&-1===Ka(String(e),a);case 11:return null!=e&&1===Ka(String(e),a)}}}}function mg(a,b){return!a||!(!b||!kg(a,b))};function ng(a){J.call(this,a,-1,og)}v(ng,J);var og=[4];function pg(a){J.call(this,a)}v(pg,J);function qg(a){J.call(this,a,-1,rg)}v(qg,J);var rg=[5],sg=[1,2,3,6,7];function tg(a){a.Sa.apply(a,ka(ta.apply(1,arguments).map(function(b){return{Xa:4,message:b}})))}function ug(a){a.Sa.apply(a,ka(ta.apply(1,arguments).map(function(b){return{Xa:7,message:b}})))};function vg(a){return function(){var b=ta.apply(0,arguments);try{return a.apply(this,b)}catch(c){}}}var wg=vg(function(a){var b=[],c={};a=u(a);for(var d=a.next();!d.done;c={ea:c.ea},d=a.next())c.ea=d.value,vg(function(e){return function(){b.push('[{"'+e.ea.Xa+'":'+Lb(e.ea.message)+"}]")}}(c))();return"[["+b.join(",")+"]]"});function xg(a,b){if(p.globalThis.fetch)p.globalThis.fetch(a,{method:"POST",body:b,keepalive:65536>b.length,credentials:"omit",mode:"no-cors",redirect:"follow"});else{var c=new XMLHttpRequest;c.open("POST",a,!0);c.send(b)}};function yg(a){var b=void 0===b?xg:b;this.l=void 0===a?1E3:a;this.j=b;this.i=[];this.h=null}yg.prototype.Sa=function(){var a=ta.apply(0,arguments),b=this;vg(function(){b.i.push.apply(b.i,ka(a));var c=vg(function(){var d=wg(b.i);b.j("https://pagead2.googlesyndication.com/pagead/ping?e=1",d);b.i=[];b.h=null});100<=b.i.length?(null!==b.h&&clearTimeout(b.h),b.h=setTimeout(c,0)):null===b.h&&(b.h=setTimeout(c,b.l))})()};function zg(a){J.call(this,a,-1,Ag)}v(zg,J);function Bg(a,b){return Eb(a,1,b)}function Cg(a,b){return Gb(a,2,b)}function Dg(a,b){return zb(a,4,b)}function Eg(a,b){return Gb(a,5,b)}function Fg(a,b){return Ab(a,6,b)}function Gg(a){J.call(this,a)}v(Gg,J);Gg.prototype.V=function(){return C(this,1,0)};function Hg(a,b){return Ab(a,1,b)}function Ig(a,b){return Ab(a,2,b)}function Jg(a){J.call(this,a)}v(Jg,J);var Ag=[2,4,5],Kg=[1,2];function Lg(a){J.call(this,a,-1,Mg)}v(Lg,J);function Ng(a){J.call(this,a,-1,Og)}v(Ng,J);var Mg=[2,3],Og=[5],Pg=[1,2,3,4];function Qg(a){J.call(this,a)}v(Qg,J);Qg.prototype.getTagSessionCorrelator=function(){return C(this,2,0)};function Rg(a){var b=new Qg;return Fb(b,4,Sg,a)}var Sg=[4,5,7];function Tg(a,b,c){var d=void 0===d?new yg(b):d;this.i=a;this.m=c;this.j=d;this.h=[];this.l=0<this.i&&Rc()<1/this.i}function Yg(a,b,c,d,e,f){var g=Ig(Hg(new Gg,b),c);b=Fg(Cg(Bg(Eg(Dg(new zg,d),e),g),a.h),f);b=Rg(b);a.l&&tg(a.j,Zg(a,b));if(1===f||3===f||4===f&&!a.h.some(function(h){return h.V()===g.V()&&C(h,2,0)===c}))a.h.push(g),100<a.h.length&&a.h.shift()}function $g(a,b,c,d){if(a.m){var e=new Lg;b=Gb(e,2,b);c=Gb(b,3,c);d&&Ab(c,1,d);d=new Qg;d=Fb(d,7,Sg,c);a.l&&tg(a.j,Zg(a,d))}} function Zg(a,b){b=Ab(b,1,Date.now());var c=fd(window);b=Ab(b,2,c);return Ab(b,6,a.i)};function ah(){var a={};this.h=(a[fg]={},a[gg]={},a[hg]={},a)};var bh=/^true$/.test("false");function ch(a,b){switch(b){case 1:return Hb(a,1,sg);case 2:return Hb(a,2,sg);case 3:return Hb(a,3,sg);case 6:return Hb(a,6,sg);default:return null}}function dh(a,b){if(!a)return null;switch(b){case 1:return D(a,1);case 7:return I(a,3);case 2:return yb(a,2);case 3:return I(a,3);case 6:return wb(a,4);default:return null}}var eh=vc(function(){if(!bh)return{};try{var a=window.sessionStorage&&window.sessionStorage.getItem("GGDFSSK");if(a)return JSON.parse(a)}catch(b){}return{}}); function fh(a,b,c,d){var e=d=void 0===d?0:d,f,g;O(gh).j[e]=null!=(g=null==(f=O(gh).j[e])?void 0:f.add(b))?g:(new p.Set).add(b);e=eh();if(null!=e[b])return e[b];b=hh(d)[b];if(!b)return c;b=new qg(b);b=ih(b);a=dh(b,a);return null!=a?a:c}function ih(a){var b=O(ah).h;if(b){var c=Wa(H(a,pg,5),function(d){return mg(G(d,ag,1),b)});if(c)return G(c,ng,2)}return G(a,ng,4)}function gh(){this.i={};this.l=[];this.j={};this.h=new p.Map}function jh(a,b,c){return!!fh(1,a,void 0===b?!1:b,c)} function kh(a,b,c){b=void 0===b?0:b;a=Number(fh(2,a,b,c));return isNaN(a)?b:a}function lh(a,b,c){return fh(3,a,void 0===b?"":b,c)}function mh(a,b,c){b=void 0===b?[]:b;return fh(6,a,b,c)}function hh(a){return O(gh).i[a]||(O(gh).i[a]={})}function nh(a,b){var c=hh(b);Sc(a,function(d,e){return c[e]=d})} function oh(a,b,c,d,e){e=void 0===e?!1:e;var f=[],g=[];Ra(b,function(h){var k=hh(h);Ra(a,function(l){var m=Cb(l,sg),q=ch(l,m);if(q){var t,y,F;var z=null!=(F=null==(t=O(gh).h.get(h))?void 0:null==(y=t.get(q))?void 0:y.slice(0))?F:[];a:{t=new Ng;switch(m){case 1:Bb(t,1,Pg,q);break;case 2:Bb(t,2,Pg,q);break;case 3:Bb(t,3,Pg,q);break;case 6:Bb(t,4,Pg,q);break;default:m=void 0;break a}zb(t,5,z);m=t}if(z=m){var E;z=!(null==(E=O(gh).j[h])||!E.has(q))}z&&f.push(m);if(E=m){var S;E=!(null==(S=O(gh).h.get(h))|| !S.has(q))}E&&g.push(m);e||(S=O(gh),S.h.has(h)||S.h.set(h,new p.Map),S.h.get(h).has(q)||S.h.get(h).set(q,[]),d&&S.h.get(h).get(q).push(d));k[q]=l.toJSON()}})});(f.length||g.length)&&$g(c,f,g,null!=d?d:void 0)}function ph(a,b){var c=hh(b);Ra(a,function(d){var e=new qg(d),f=Cb(e,sg);(e=ch(e,f))&&(c[e]||(c[e]=d))})}function qh(){return Ta(r(Object,"keys").call(Object,O(gh).i),function(a){return Number(a)})}function rh(a){Xa(O(gh).l,a)||nh(hh(4),a)};function sh(a){this.methodName=a}var th=new sh(1),uh=new sh(16),vh=new sh(15),wh=new sh(2),xh=new sh(3),yh=new sh(4),zh=new sh(5),Ah=new sh(6),Bh=new sh(7),Ch=new sh(8),Dh=new sh(9),Eh=new sh(10),Fh=new sh(11),Gh=new sh(12),Hh=new sh(13),Ih=new sh(14);function Jh(a,b,c){c.hasOwnProperty(a.methodName)||Object.defineProperty(c,String(a.methodName),{value:b})}function Kh(a,b,c){return b[a.methodName]||c||function(){}} function Lh(a){Jh(zh,jh,a);Jh(Ah,kh,a);Jh(Bh,lh,a);Jh(Ch,mh,a);Jh(Hh,ph,a);Jh(vh,rh,a)}function Mh(a){Jh(yh,function(b){O(ah).h=b},a);Jh(Dh,function(b,c){var d=O(ah);d.h[fg][b]||(d.h[fg][b]=c)},a);Jh(Eh,function(b,c){var d=O(ah);d.h[gg][b]||(d.h[gg][b]=c)},a);Jh(Fh,function(b,c){var d=O(ah);d.h[hg][b]||(d.h[hg][b]=c)},a);Jh(Ih,function(b){for(var c=O(ah),d=u([fg,gg,hg]),e=d.next();!e.done;e=d.next())e=e.value,r(Object,"assign").call(Object,c.h[e],b[e])},a)} function Nh(a){a.hasOwnProperty("init-done")||Object.defineProperty(a,"init-done",{value:!0})};function Oh(){this.l=function(){};this.i=function(){};this.j=function(){};this.h=function(){return[]}}function Ph(a,b,c){a.l=Kh(th,b,function(){});a.j=function(d){Kh(wh,b,function(){return[]})(d,c)};a.h=function(){return Kh(xh,b,function(){return[]})(c)};a.i=function(d){Kh(uh,b,function(){})(d,c)}};function Qh(a,b){var c=void 0===c?{}:c;this.error=a;this.context=b.context;this.msg=b.message||"";this.id=b.id||"jserror";this.meta=c}function Rh(a){return!!(a.error&&a.meta&&a.id)};var Sh=RegExp("^https?://(\\w|-)+\\.cdn\\.ampproject\\.(net|org)(\\?|/|$)");function Th(a,b){this.h=a;this.i=b}function Uh(a,b,c){this.url=a;this.u=b;this.La=!!c;this.depth=null};var Vh=null;function Wh(){if(null===Vh){Vh="";try{var a="";try{a=w.top.location.hash}catch(c){a=w.location.hash}if(a){var b=a.match(/\bdeid=([\d,]+)/);Vh=b?b[1]:""}}catch(c){}}return Vh};function Xh(){var a=void 0===a?w:a;return(a=a.performance)&&a.now&&a.timing?Math.floor(a.now()+a.timing.navigationStart):Date.now()}function Yh(){var a=void 0===a?w:a;return(a=a.performance)&&a.now?a.now():null};function Zh(a,b){var c=Yh()||Xh();this.label=a;this.type=b;this.value=c;this.duration=0;this.uniqueId=Math.random();this.slotId=void 0};var $h=w.performance,ai=!!($h&&$h.mark&&$h.measure&&$h.clearMarks),bi=vc(function(){var a;if(a=ai)a=Wh(),a=!!a.indexOf&&0<=a.indexOf("1337");return a});function ci(){this.i=[];this.j=w||w;var a=null;w&&(w.google_js_reporting_queue=w.google_js_reporting_queue||[],this.i=w.google_js_reporting_queue,a=w.google_measure_js_timing);this.h=bi()||(null!=a?a:1>Math.random())} function di(a){a&&$h&&bi()&&($h.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_start"),$h.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_end"))}ci.prototype.start=function(a,b){if(!this.h)return null;a=new Zh(a,b);b="goog_"+a.label+"_"+a.uniqueId+"_start";$h&&bi()&&$h.mark(b);return a};ci.prototype.end=function(a){if(this.h&&"number"===typeof a.value){a.duration=(Yh()||Xh())-a.value;var b="goog_"+a.label+"_"+a.uniqueId+"_end";$h&&bi()&&$h.mark(b);!this.h||2048<this.i.length||this.i.push(a)}};function ei(){var a=fi;this.m=Pf;this.i=null;this.l=this.I;this.h=void 0===a?null:a;this.j=!1}n=ei.prototype;n.Ua=function(a){this.l=a};n.Ta=function(a){this.i=a};n.Va=function(a){this.j=a};n.oa=function(a,b,c){try{if(this.h&&this.h.h){var d=this.h.start(a.toString(),3);var e=b();this.h.end(d)}else e=b()}catch(h){b=!0;try{di(d),b=this.l(a,new Qh(h,{message:gi(h)}),void 0,c)}catch(k){this.I(217,k)}if(b){var f,g;null==(f=window.console)||null==(g=f.error)||g.call(f,h)}else throw h;}return e}; n.Oa=function(a,b){var c=this;return function(){var d=ta.apply(0,arguments);return c.oa(a,function(){return b.apply(void 0,d)})}}; n.I=function(a,b,c,d,e){e=e||"jserror";try{var f=new Hf;f.h.push(1);f.i[1]=If("context",a);Rh(b)||(b=new Qh(b,{message:gi(b)}));if(b.msg){var g=b.msg.substring(0,512);f.h.push(2);f.i[2]=If("msg",g)}var h=b.meta||{};if(this.i)try{this.i(h)}catch(Jc){}if(d)try{d(h)}catch(Jc){}b=[h];f.h.push(3);f.i[3]=b;d=w;b=[];g=null;do{var k=d;if(Hc(k)){var l=k.location.href;g=k.document&&k.document.referrer||null}else l=g,g=null;b.push(new Uh(l||"",k));try{d=k.parent}catch(Jc){d=null}}while(d&&k!=d);l=0;for(var m= b.length-1;l<=m;++l)b[l].depth=m-l;k=w;if(k.location&&k.location.ancestorOrigins&&k.location.ancestorOrigins.length==b.length-1)for(m=1;m<b.length;++m){var q=b[m];q.url||(q.url=k.location.ancestorOrigins[m-1]||"",q.La=!0)}var t=new Uh(w.location.href,w,!1);k=null;var y=b.length-1;for(q=y;0<=q;--q){var F=b[q];!k&&Sh.test(F.url)&&(k=F);if(F.url&&!F.La){t=F;break}}F=null;var z=b.length&&b[y].url;0!=t.depth&&z&&(F=b[y]);var E=new Th(t,F);if(E.i){var S=E.i.url||"";f.h.push(4);f.i[4]=If("top",S)}var rb= {url:E.h.url||""};if(E.h.url){var Kc=E.h.url.match(Ec),Ug=Kc[1],Vg=Kc[3],Wg=Kc[4];t="";Ug&&(t+=Ug+":");Vg&&(t+="//",t+=Vg,Wg&&(t+=":"+Wg));var Xg=t}else Xg="";rb=[rb,{url:Xg}];f.h.push(5);f.i[5]=rb;Qf(this.m,e,f,this.j,c)}catch(Jc){try{Qf(this.m,e,{context:"ecmserr",rctx:a,msg:gi(Jc),url:E&&E.h.url},this.j,c)}catch(zp){}}return!0};n.Pa=function(a,b){var c=this;b.catch(function(d){d=d?d:"unknown rejection";c.I(a,d instanceof Error?d:Error(d))})}; function gi(a){var b=a.toString();a.name&&-1==b.indexOf(a.name)&&(b+=": "+a.name);a.message&&-1==b.indexOf(a.message)&&(b+=": "+a.message);if(a.stack){a=a.stack;try{-1==a.indexOf(b)&&(a=b+"\n"+a);for(var c;a!=c;)c=a,a=a.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/,"$1");b=a.replace(/\n */g,"\n")}catch(d){}}return b};var hi=ja(["https://www.googletagservices.com/console/host/host.js"]),ii=ja(["https://www.googletagservices.com/console/panel/index.html"]),ji=ja(["https://www.googletagservices.com/console/overlay/index.html"]);nd(hi);nd(ii);nd(ji);function ki(a,b){do{var c=Nc(a,b);if(c&&"fixed"==c.position)return!1}while(a=a.parentElement);return!0};function li(a,b){for(var c=["width","height"],d=0;d<c.length;d++){var e="google_ad_"+c[d];if(!b.hasOwnProperty(e)){var f=K(a[c[d]]);f=null===f?null:Math.round(f);null!=f&&(b[e]=f)}}}function mi(a,b){return!((Yc.test(b.google_ad_width)||Xc.test(a.style.width))&&(Yc.test(b.google_ad_height)||Xc.test(a.style.height)))}function ni(a,b){return(a=oi(a,b))?a.y:0} function oi(a,b){try{var c=b.document.documentElement.getBoundingClientRect(),d=a.getBoundingClientRect();return{x:d.left-c.left,y:d.top-c.top}}catch(e){return null}}function pi(a){var b=0,c;for(c in Df)-1!=a.indexOf(c)&&(b|=Df[c]);return b} function qi(a,b,c,d,e){if(a!==a.top)return Ic(a)?3:16;if(!(488>Wf(a)))return 4;if(!(a.innerHeight>=a.innerWidth))return 5;var f=Wf(a);if(!f||(f-c)/f>d)a=6;else{if(c="true"!=e.google_full_width_responsive)a:{c=Wf(a);for(b=b.parentElement;b;b=b.parentElement)if((d=Nc(b,a))&&(e=K(d.width))&&!(e>=c)&&"visible"!=d.overflow){c=!0;break a}c=!1}a=c?7:!0}return a} function ri(a,b,c,d){var e=qi(b,c,a,.3,d);!0!==e?a=e:"true"==d.google_full_width_responsive||ki(c,b)?(b=Wf(b),a=b-a,a=b&&0<=a?!0:b?-10>a?11:0>a?14:12:10):a=9;return a}function si(a,b,c){a=a.style;"rtl"==b?a.marginRight=c:a.marginLeft=c} function ti(a,b){if(3==b.nodeType)return/\S/.test(b.data);if(1==b.nodeType){if(/^(script|style)$/i.test(b.nodeName))return!1;try{var c=Nc(b,a)}catch(d){}return!c||"none"!=c.display&&!("absolute"==c.position&&("hidden"==c.visibility||"collapse"==c.visibility))}return!1}function ui(a,b,c){a=oi(b,a);return"rtl"==c?-a.x:a.x} function vi(a,b){var c;c=(c=b.parentElement)?(c=Nc(c,a))?c.direction:"":"";if(c){b.style.border=b.style.borderStyle=b.style.outline=b.style.outlineStyle=b.style.transition="none";b.style.borderSpacing=b.style.padding="0";si(b,c,"0px");b.style.width=Wf(a)+"px";if(0!==ui(a,b,c)){si(b,c,"0px");var d=ui(a,b,c);si(b,c,-1*d+"px");a=ui(a,b,c);0!==a&&a!==d&&si(b,c,d/(a-d)*d+"px")}b.style.zIndex=30}};function wi(a,b){this.l=a;this.j=b}wi.prototype.minWidth=function(){return this.l};wi.prototype.height=function(){return this.j};wi.prototype.h=function(a){return 300<a&&300<this.j?this.l:Math.min(1200,Math.round(a))};wi.prototype.i=function(){};function xi(a,b,c,d){d=void 0===d?function(f){return f}:d;var e;return a.style&&a.style[c]&&d(a.style[c])||(e=Nc(a,b))&&e[c]&&d(e[c])||null}function yi(a){return function(b){return b.minWidth()<=a}}function zi(a,b,c,d){var e=a&&Ai(c,b),f=Bi(b,d);return function(g){return!(e&&g.height()>=f)}}function Ci(a){return function(b){return b.height()<=a}}function Ai(a,b){return ni(a,b)<Vf(b).clientHeight-100} function Di(a,b){var c=xi(b,a,"height",K);if(c)return c;var d=b.style.height;b.style.height="inherit";c=xi(b,a,"height",K);b.style.height=d;if(c)return c;c=Infinity;do(d=b.style&&K(b.style.height))&&(c=Math.min(c,d)),(d=xi(b,a,"maxHeight",K))&&(c=Math.min(c,d));while((b=b.parentElement)&&"HTML"!=b.tagName);return c}function Bi(a,b){var c=0==pd(a);return b&&c?Math.max(250,2*Vf(a).clientHeight/3):250};var R={},Ei=(R.google_ad_channel=!0,R.google_ad_client=!0,R.google_ad_host=!0,R.google_ad_host_channel=!0,R.google_adtest=!0,R.google_tag_for_child_directed_treatment=!0,R.google_tag_for_under_age_of_consent=!0,R.google_tag_partner=!0,R.google_restrict_data_processing=!0,R.google_page_url=!0,R.google_debug_params=!0,R.google_adbreak_test=!0,R.google_ad_frequency_hint=!0,R.google_admob_interstitial_slot=!0,R.google_admob_rewarded_slot=!0,R.google_max_ad_content_rating=!0,R.google_traffic_source=!0, R),Fi=RegExp("(^| )adsbygoogle($| )");function Gi(a,b){for(var c=0;c<b.length;c++){var d=b[c],e=zc(d.Rb);a[e]=d.value}};function Hi(a,b,c,d){this.l=a;this.i=b;this.j=c;this.h=d}function Ii(a,b){var c=[];try{c=b.querySelectorAll(a.l)}catch(g){}if(!c.length)return[];b=Ya(c);b=Ji(a,b);"number"===typeof a.i&&(c=a.i,0>c&&(c+=b.length),b=0<=c&&c<b.length?[b[c]]:[]);if("number"===typeof a.j){c=[];for(var d=0;d<b.length;d++){var e=Ki(b[d]),f=a.j;0>f&&(f+=e.length);0<=f&&f<e.length&&c.push(e[f])}b=c}return b} Hi.prototype.toString=function(){return JSON.stringify({nativeQuery:this.l,occurrenceIndex:this.i,paragraphIndex:this.j,ignoreMode:this.h})};function Ji(a,b){if(null==a.h)return b;switch(a.h){case 1:return b.slice(1);case 2:return b.slice(0,b.length-1);case 3:return b.slice(1,b.length-1);case 0:return b;default:throw Error("Unknown ignore mode: "+a.h);}}function Ki(a){var b=[];xd(a.getElementsByTagName("p"),function(c){100<=Li(c)&&b.push(c)});return b} function Li(a){if(3==a.nodeType)return a.length;if(1!=a.nodeType||"SCRIPT"==a.tagName)return 0;var b=0;xd(a.childNodes,function(c){b+=Li(c)});return b}function Mi(a){return 0==a.length||isNaN(a[0])?a:"\\"+(30+parseInt(a[0],10))+" "+a.substring(1)};function Ni(a){if(!a)return null;var b=A(a,7);if(A(a,1)||a.getId()||0<wb(a,4).length){var c=a.getId();b=wb(a,4);var d=A(a,1),e="";d&&(e+=d);c&&(e+="#"+Mi(c));if(b)for(c=0;c<b.length;c++)e+="."+Mi(b[c]);a=(b=e)?new Hi(b,A(a,2),A(a,5),Oi(A(a,6))):null}else a=b?new Hi(b,A(a,2),A(a,5),Oi(A(a,6))):null;return a}var Pi={1:1,2:2,3:3,0:0};function Oi(a){return null==a?a:Pi[a]}var Qi={1:0,2:1,3:2,4:3};function Ri(a){return a.google_ama_state=a.google_ama_state||{}} function Si(a){a=Ri(a);return a.optimization=a.optimization||{}};function Ti(a){switch(A(a,8)){case 1:case 2:if(null==a)var b=null;else b=G(a,Jd,1),null==b?b=null:(a=A(a,2),b=null==a?null:new Ld({Ga:[b],Ra:a}));return null!=b?Dd(b):Fd(Error("Missing dimension when creating placement id"));case 3:return Fd(Error("Missing dimension when creating placement id"));default:return Fd(Error("Invalid type: "+A(a,8)))}};function T(a){a=void 0===a?"":a;var b=Error.call(this);this.message=b.message;"stack"in b&&(this.stack=b.stack);this.name="TagError";this.message=a?"adsbygoogle.push() error: "+a:"";Error.captureStackTrace?Error.captureStackTrace(this,T):this.stack=Error().stack||""}v(T,Error);var Pf,Ui,fi=new ci;function Vi(a){null!=a&&(w.google_measure_js_timing=a);w.google_measure_js_timing||(a=fi,a.h=!1,a.i!=a.j.google_js_reporting_queue&&(bi()&&Ra(a.i,di),a.i.length=0))}(function(a){Pf=a||new Nf;"number"!==typeof w.google_srt&&(w.google_srt=Math.random());Of();Ui=new ei;Ui.Va(!0);"complete"==w.document.readyState?Vi():fi.h&&xc(w,"load",function(){Vi()})})();function Wi(a,b,c){return Ui.oa(a,b,c)}function Xi(a,b){return Ui.Oa(a,b)} function Yi(a,b,c){var d=O(Oh).h();!b.eid&&d.length&&(b.eid=d.toString());Qf(Pf,a,b,!0,c)}function Zi(a,b){Ui.Pa(a,b)}function $i(a,b,c,d){var e;Rh(b)?e=b.msg||gi(b.error):e=gi(b);return 0==e.indexOf("TagError")?(c=b instanceof Qh?b.error:b,c.pbr||(c.pbr=!0,Ui.I(a,b,.1,d,"puberror")),!1):Ui.I(a,b,c,d)};function aj(a){a=void 0===a?window:a;a=a.googletag;return(null==a?0:a.apiReady)?a:void 0};function bj(a){var b=aj(a);return b?Sa(Ta(b.pubads().getSlots(),function(c){return a.document.getElementById(c.getSlotElementId())}),function(c){return null!=c}):null}function cj(a,b){return Ya(a.document.querySelectorAll(b))}function dj(a){var b=[];a=u(a);for(var c=a.next();!c.done;c=a.next()){c=c.value;for(var d=!0,e=0;e<b.length;e++){var f=b[e];if(f.contains(c)){d=!1;break}if(c.contains(f)){d=!1;b[e]=c;break}}d&&b.push(c)}return b};function ej(a,b){function c(){d.push({anchor:e.anchor,position:e.position});return e.anchor==b.anchor&&e.position==b.position}for(var d=[],e=a;e;){switch(e.position){case 1:if(c())return d;e.position=2;case 2:if(c())return d;if(e.anchor.firstChild){e={anchor:e.anchor.firstChild,position:1};continue}else e.position=3;case 3:if(c())return d;e.position=4;case 4:if(c())return d}for(;e&&!e.anchor.nextSibling&&e.anchor.parentNode!=e.anchor.ownerDocument.body;){e={anchor:e.anchor.parentNode,position:3}; if(c())return d;e.position=4;if(c())return d}e&&e.anchor.nextSibling?e={anchor:e.anchor.nextSibling,position:1}:e=null}return d};function fj(a,b){this.i=a;this.h=b} function gj(a,b){var c=new Id,d=new Hd;b.forEach(function(e){if(Ib(e,Yd,1,ae)){e=Ib(e,Yd,1,ae);if(G(e,Wd,1)&&G(G(e,Wd,1),Jd,1)&&G(e,Wd,2)&&G(G(e,Wd,2),Jd,1)){var f=hj(a,G(G(e,Wd,1),Jd,1)),g=hj(a,G(G(e,Wd,2),Jd,1));if(f&&g)for(f=u(ej({anchor:f,position:A(G(e,Wd,1),2)},{anchor:g,position:A(G(e,Wd,2),2)})),g=f.next();!g.done;g=f.next())g=g.value,c.set(za(g.anchor),g.position)}G(e,Wd,3)&&G(G(e,Wd,3),Jd,1)&&(f=hj(a,G(G(e,Wd,3),Jd,1)))&&c.set(za(f),A(G(e,Wd,3),2))}else Ib(e,Zd,2,ae)?ij(a,Ib(e,Zd,2,ae), c):Ib(e,$d,3,ae)&&jj(a,Ib(e,$d,3,ae),d)});return new fj(c,d)}function ij(a,b,c){G(b,Jd,1)&&(a=kj(a,G(b,Jd,1)))&&a.forEach(function(d){d=za(d);c.set(d,1);c.set(d,4);c.set(d,2);c.set(d,3)})}function jj(a,b,c){G(b,Jd,1)&&(a=kj(a,G(b,Jd,1)))&&a.forEach(function(d){c.add(za(d))})}function hj(a,b){return(a=kj(a,b))&&0<a.length?a[0]:null}function kj(a,b){return(b=Ni(b))?Ii(b,a):null};function lj(){this.h=new p.Set}function mj(a){a=nj(a);return a.has("all")||a.has("after")}function oj(a){a=nj(a);return a.has("all")||a.has("before")}function pj(a,b,c){switch(c){case 2:case 3:break;case 1:case 4:b=b.parentElement;break;default:throw Error("Unknown RelativePosition: "+c);}for(c=[];b;){if(qj(b))return!0;if(a.h.has(b))break;c.push(b);b=b.parentElement}c.forEach(function(d){return a.h.add(d)});return!1} function qj(a){var b=nj(a);return a&&("AUTO-ADS-EXCLUSION-AREA"===a.tagName||b.has("inside")||b.has("all"))}function nj(a){return(a=a&&a.getAttribute("data-no-auto-ads"))?new p.Set(a.split("|")):new p.Set};function rj(a,b){if(!a)return!1;a=Nc(a,b);if(!a)return!1;a=a.cssFloat||a.styleFloat;return"left"==a||"right"==a}function sj(a){for(a=a.previousSibling;a&&1!=a.nodeType;)a=a.previousSibling;return a?a:null}function tj(a){return!!a.nextSibling||!!a.parentNode&&tj(a.parentNode)};function uj(a){var b={};a&&wb(a,6).forEach(function(c){b[c]=!0});return b}function vj(a,b,c,d,e){this.h=a;this.H=b;this.j=c;this.m=e||null;this.A=(this.C=d)?gj(a.document,H(d,Xd,5)):gj(a.document,[]);this.G=new lj;this.i=0;this.l=!1} function wj(a,b){if(a.l)return!0;a.l=!0;var c=H(a.j,ce,1);a.i=0;var d=uj(a.C);var e=a.h;try{var f=e.localStorage.getItem("google_ama_settings");var g=f?Nb(se,f):null}catch(S){g=null}var h=null!==g&&D(g,2,!1);g=Ri(e);h&&(g.eatf=!0,kd(7,[!0,0,!1]));var k=P(Ve)||P(Ue);f=P(Ue);if(k){b:{var l={fb:!1},m=cj(e,".google-auto-placed"),q=cj(e,'ins.adsbygoogle[data-anchor-shown="true"]'),t=cj(e,"ins.adsbygoogle[data-ad-format=autorelaxed]");var y=(bj(e)||cj(e,"div[id^=div-gpt-ad]")).concat(cj(e,"iframe[id^=google_ads_iframe]")); var F=cj(e,"div.trc_related_container,div.OUTBRAIN,div[id^=rcjsload],div[id^=ligatusframe],div[id^=crt-],iframe[id^=cto_iframe],div[id^=yandex_], div[id^=Ya_sync],iframe[src*=adnxs],div.advertisement--appnexus,div[id^=apn-ad],div[id^=amzn-native-ad],iframe[src*=amazon-adsystem],iframe[id^=ox_],iframe[src*=openx],img[src*=openx],div[class*=adtech],div[id^=adtech],iframe[src*=adtech],div[data-content-ad-placement=true],div.wpcnt div[id^=atatags-]"),z=cj(e,"ins.adsbygoogle-ablated-ad-slot"),E=cj(e,"div.googlepublisherpluginad"); k=[].concat(cj(e,"iframe[id^=aswift_],iframe[id^=google_ads_frame]"),cj(e,"ins.adsbygoogle"));h=[];l=u([[l.Mb,m],[l.fb,q],[l.Pb,t],[l.Nb,y],[l.Qb,F],[l.Lb,z],[l.Ob,E]]);for(m=l.next();!m.done;m=l.next())q=u(m.value),m=q.next().value,q=q.next().value,!1===m?h=h.concat(q):k=k.concat(q);k=dj(k);l=dj(h);h=k.slice(0);k=u(l);for(l=k.next();!l.done;l=k.next())for(l=l.value,m=0;m<h.length;m++)(l.contains(h[m])||h[m].contains(l))&&h.splice(m,1);e=Vf(e).clientHeight;for(k=0;k<h.length;k++)if(l=h[k].getBoundingClientRect(), !(0===l.height&&!f||l.top>e)){e=!0;break b}e=!1}g=e?g.eatfAbg=!0:!1}else g=h;if(g)return!0;g=new Hd([2]);for(e=0;e<c.length;e++){f=a;k=c[e];h=e;l=b;if(!G(k,Pd,4)||!g.contains(A(G(k,Pd,4),1))||1!==A(k,8)||k&&null!=A(k,4)&&d[A(G(k,Pd,4),2)])f=null;else{f.i++;if(k=xj(f,k,l,d))l=Ri(f.h),l.numAutoAdsPlaced||(l.numAutoAdsPlaced=0),null==l.placed&&(l.placed=[]),l.numAutoAdsPlaced++,l.placed.push({index:h,element:k.ha}),kd(7,[!1,f.i,!0]);f=k}if(f)return!0}kd(7,[!1,a.i,!1]);return!1} function xj(a,b,c,d){if(b&&null!=A(b,4)&&d[A(G(b,Pd,4),2)]||1!=A(b,8))return null;d=G(b,Jd,1);if(!d)return null;d=Ni(d);if(!d)return null;d=Ii(d,a.h.document);if(0==d.length)return null;d=d[0];var e=Qi[A(b,2)];e=void 0===e?null:e;var f;if(!(f=null==e)){a:{f=a.h;switch(e){case 0:f=rj(sj(d),f);break a;case 3:f=rj(d,f);break a;case 2:var g=d.lastChild;f=rj(g?1==g.nodeType?g:sj(g):null,f);break a}f=!1}if(c=!f&&!(!c&&2==e&&!tj(d)))c=1==e||2==e?d:d.parentNode,c=!(c&&!te(c)&&0>=c.offsetWidth);f=!c}if(!(c= f)){c=a.A;f=A(b,2);g=za(d);g=c.i.h.get(g);if(!(g=g?g.contains(f):!1))a:{if(c.h.contains(za(d)))switch(f){case 2:case 3:g=!0;break a;default:g=!1;break a}for(f=d.parentElement;f;){if(c.h.contains(za(f))){g=!0;break a}f=f.parentElement}g=!1}c=g}if(!c){c=a.G;f=A(b,2);a:switch(f){case 1:g=mj(d.previousElementSibling)||oj(d);break a;case 4:g=mj(d)||oj(d.nextElementSibling);break a;case 2:g=oj(d.firstElementChild);break a;case 3:g=mj(d.lastElementChild);break a;default:throw Error("Unknown RelativePosition: "+ f);}c=g||pj(c,d,f)}if(c)return null;c=G(b,be,3);f={};c&&(f.Wa=A(c,1),f.Ha=A(c,2),f.cb=!!xb(c,3));c=G(b,Pd,4)&&A(G(b,Pd,4),2)?A(G(b,Pd,4),2):null;c=Sd(c);g=null!=A(b,12)?A(b,12):null;g=null==g?null:new Qd(null,{google_ml_rank:g});b=yj(a,b);b=Rd(a.m,c,g,b);c=a.h;a=a.H;var h=c.document,k=f.cb||!1;g=(new Bc(h)).createElement("DIV");var l=g.style;l.width="100%";l.height="auto";l.clear=k?"both":"none";k=g.style;k.textAlign="center";f.lb&&Gi(k,f.lb);h=(new Bc(h)).createElement("INS");k=h.style;k.display= "block";k.margin="auto";k.backgroundColor="transparent";f.Wa&&(k.marginTop=f.Wa);f.Ha&&(k.marginBottom=f.Ha);f.ab&&Gi(k,f.ab);g.appendChild(h);f={ra:g,ha:h};f.ha.setAttribute("data-ad-format","auto");g=[];if(h=b&&b.Ja)f.ra.className=h.join(" ");h=f.ha;h.className="adsbygoogle";h.setAttribute("data-ad-client",a);g.length&&h.setAttribute("data-ad-channel",g.join("+"));a:{try{var m=f.ra;var q=void 0===q?0:q;if(P(Qe)){q=void 0===q?0:q;var t=Af(d,e,q);if(t.init){var y=t.init;for(d=y;d=t.ja(d);)y=d;var F= {anchor:y,position:t.na}}else F={anchor:d,position:e};m["google-ama-order-assurance"]=q;ue(m,F.anchor,F.position)}else ue(m,d,e);b:{var z=f.ha;z.dataset.adsbygoogleStatus="reserved";z.className+=" adsbygoogle-noablate";m={element:z};var E=b&&b.Qa;if(z.hasAttribute("data-pub-vars")){try{E=JSON.parse(z.getAttribute("data-pub-vars"))}catch(S){break b}z.removeAttribute("data-pub-vars")}E&&(m.params=E);(c.adsbygoogle=c.adsbygoogle||[]).push(m)}}catch(S){(z=f.ra)&&z.parentNode&&(E=z.parentNode,E.removeChild(z), te(E)&&(E.style.display=E.getAttribute("data-init-display")||"none"));z=!1;break a}z=!0}return z?f:null}function yj(a,b){return Bd(Ed(Ti(b).map(Td),function(c){Ri(a.h).exception=c}))};function zj(a){if(P(Pe))var b=null;else try{b=a.getItem("google_ama_config")}catch(d){b=null}try{var c=b?Nb(je,b):null}catch(d){c=null}return c};function Aj(a){J.call(this,a)}v(Aj,J);function Bj(a){try{var b=a.localStorage.getItem("google_auto_fc_cmp_setting")||null}catch(d){b=null}var c=b;return c?Gd(function(){return Nb(Aj,c)}):Dd(null)};function Cj(){this.S={}}function Dj(){if(Ej)return Ej;var a=md()||window,b=a.google_persistent_state_async;return null!=b&&"object"==typeof b&&null!=b.S&&"object"==typeof b.S?Ej=b:a.google_persistent_state_async=Ej=new Cj}function Fj(a){return Gj[a]||"google_ps_"+a}function Hj(a,b,c){b=Fj(b);a=a.S;var d=a[b];return void 0===d?a[b]=c:d}var Ej=null,Ij={},Gj=(Ij[8]="google_prev_ad_formats_by_region",Ij[9]="google_prev_ad_slotnames_by_region",Ij);function Jj(a){this.h=a||{cookie:""}} Jj.prototype.set=function(a,b,c){var d=!1;if("object"===typeof c){var e=c.Sb;d=c.Tb||!1;var f=c.domain||void 0;var g=c.path||void 0;var h=c.jb}if(/[;=\s]/.test(a))throw Error('Invalid cookie name "'+a+'"');if(/[;\r\n]/.test(b))throw Error('Invalid cookie value "'+b+'"');void 0===h&&(h=-1);this.h.cookie=a+"="+b+(f?";domain="+f:"")+(g?";path="+g:"")+(0>h?"":0==h?";expires="+(new Date(1970,1,1)).toUTCString():";expires="+(new Date(Date.now()+1E3*h)).toUTCString())+(d?";secure":"")+(null!=e?";samesite="+ e:"")};Jj.prototype.get=function(a,b){for(var c=a+"=",d=(this.h.cookie||"").split(";"),e=0,f;e<d.length;e++){f=Ja(d[e]);if(0==f.lastIndexOf(c,0))return f.substr(c.length);if(f==a)return""}return b};Jj.prototype.isEmpty=function(){return!this.h.cookie}; Jj.prototype.clear=function(){for(var a=(this.h.cookie||"").split(";"),b=[],c=[],d,e,f=0;f<a.length;f++)e=Ja(a[f]),d=e.indexOf("="),-1==d?(b.push(""),c.push(e)):(b.push(e.substring(0,d)),c.push(e.substring(d+1)));for(a=b.length-1;0<=a;a--)c=b[a],this.get(c),this.set(c,"",{jb:0,path:void 0,domain:void 0})};function Kj(a){J.call(this,a)}v(Kj,J);function Lj(a){var b=new Kj;return B(b,5,a)};function Mj(){this.A=this.A;this.G=this.G}Mj.prototype.A=!1;Mj.prototype.j=function(){if(this.G)for(;this.G.length;)this.G.shift()()};function Nj(a){void 0!==a.addtlConsent&&"string"!==typeof a.addtlConsent&&(a.addtlConsent=void 0);void 0!==a.gdprApplies&&"boolean"!==typeof a.gdprApplies&&(a.gdprApplies=void 0);return void 0!==a.tcString&&"string"!==typeof a.tcString||void 0!==a.listenerId&&"number"!==typeof a.listenerId?2:a.cmpStatus&&"error"!==a.cmpStatus?0:3}function Oj(a,b){b=void 0===b?500:b;Mj.call(this);this.h=a;this.i=null;this.m={};this.H=0;this.C=b;this.l=null}v(Oj,Mj); Oj.prototype.j=function(){this.m={};this.l&&(yc(this.h,this.l),delete this.l);delete this.m;delete this.h;delete this.i;Mj.prototype.j.call(this)};function Pj(a){return"function"===typeof a.h.__tcfapi||null!=Qj(a)} Oj.prototype.addEventListener=function(a){function b(f,g){clearTimeout(e);f?(c=f,c.internalErrorState=Nj(c),g&&0===c.internalErrorState||(c.tcString="tcunavailable",g||(c.internalErrorState=3))):(c.tcString="tcunavailable",c.internalErrorState=3);a(c)}var c={},d=wc(function(){return a(c)}),e=0;-1!==this.C&&(e=setTimeout(function(){c.tcString="tcunavailable";c.internalErrorState=1;d()},this.C));try{Rj(this,"addEventListener",b)}catch(f){c.tcString="tcunavailable",c.internalErrorState=3,e&&(clearTimeout(e), e=0),d()}};Oj.prototype.removeEventListener=function(a){a&&a.listenerId&&Rj(this,"removeEventListener",null,a.listenerId)};function Rj(a,b,c,d){c||(c=function(){});if("function"===typeof a.h.__tcfapi)a=a.h.__tcfapi,a(b,2,c,d);else if(Qj(a)){Sj(a);var e=++a.H;a.m[e]=c;a.i&&(c={},a.i.postMessage((c.__tcfapiCall={command:b,version:2,callId:e,parameter:d},c),"*"))}else c({},!1)}function Qj(a){if(a.i)return a.i;a.i=$c(a.h,"__tcfapiLocator");return a.i} function Sj(a){a.l||(a.l=function(b){try{var c=("string"===typeof b.data?JSON.parse(b.data):b.data).__tcfapiReturn;a.m[c.callId](c.returnValue,c.success)}catch(d){}},xc(a.h,"message",a.l))};function Tj(a){var b=a.u,c=a.ta,d=a.Ia;a=Uj({u:b,Z:a.Z,ka:void 0===a.ka?!1:a.ka,la:void 0===a.la?!1:a.la});null!=a.h||"tcunav"!=a.i.message?d(a):Vj(b,c).then(function(e){return e.map(Wj)}).then(function(e){return e.map(function(f){return Xj(b,f)})}).then(d)} function Uj(a){var b=a.u,c=a.Z,d=void 0===a.ka?!1:a.ka;if(!(a=!(void 0===a.la?0:a.la)&&Pj(new Oj(b)))){if(d=!d){if(c){c=Bj(b);if(null==c.h)Ui.I(806,c.i,void 0,void 0),c=!1;else if((c=c.h.value)&&null!=A(c,1))b:switch(c=A(c,1),c){case 1:c=!0;break b;default:throw Error("Unhandled AutoGdprFeatureStatus: "+c);}else c=!1;c=!c}d=c}a=d}if(!a)return Xj(b,Lj(!0));c=Dj();return(c=Hj(c,24))?Xj(b,Wj(c)):Fd(Error("tcunav"))}function Vj(a,b){return p.Promise.race([Yj(),Zj(a,b)])} function Yj(){return(new p.Promise(function(a){var b=Dj();a={resolve:a};var c=Hj(b,25,[]);c.push(a);b.S[Fj(25)]=c})).then(ak)}function Zj(a,b){return new p.Promise(function(c){a.setTimeout(c,b,Fd(Error("tcto")))})}function ak(a){return a?Dd(a):Fd(Error("tcnull"))} function Wj(a){var b=void 0===b?!1:b;if(!1===a.gdprApplies)var c=!0;else void 0===a.internalErrorState&&(a.internalErrorState=Nj(a)),c="error"===a.cmpStatus||0!==a.internalErrorState||"loaded"===a.cmpStatus&&("tcloaded"===a.eventStatus||"useractioncomplete"===a.eventStatus)?!0:!1;if(c)if(!1===a.gdprApplies||"tcunavailable"===a.tcString||void 0===a.gdprApplies&&!b||"string"!==typeof a.tcString||!a.tcString.length)a=!0;else{var d=void 0===d?"755":d;b:{if(a.publisher&&a.publisher.restrictions&&(b=a.publisher.restrictions["1"], void 0!==b)){b=b[void 0===d?"755":d];break b}b=void 0}0===b?a=!1:a.purpose&&a.vendor?(b=a.vendor.consents,(d=!(!b||!b[void 0===d?"755":d]))&&a.purposeOneTreatment&&"CH"===a.publisherCC?a=!0:(d&&(a=a.purpose.consents,d=!(!a||!a["1"])),a=d)):a=!0}else a=!1;return Lj(a)}function Xj(a,b){a:{a=void 0===a?window:a;if(xb(b,5))try{var c=a.localStorage;break a}catch(d){}c=null}return(b=c)?Dd(b):Fd(Error("unav"))};function bk(a){J.call(this,a)}v(bk,J);function ck(a){J.call(this,a,-1,dk)}v(ck,J);var dk=[1,2];function ek(a){this.exception=a}function fk(a,b,c){this.j=a;this.h=b;this.i=c}fk.prototype.start=function(){this.l()};fk.prototype.l=function(){try{switch(this.j.document.readyState){case "complete":case "interactive":wj(this.h,!0);gk(this);break;default:wj(this.h,!1)?gk(this):this.j.setTimeout(Ea(this.l,this),100)}}catch(a){gk(this,a)}};function gk(a,b){try{var c=a.i,d=c.resolve,e=a.h;Ri(e.h);H(e.j,ce,1);d.call(c,new ek(b))}catch(f){a.i.reject(f)}};function hk(a){J.call(this,a,-1,ik)}v(hk,J);function jk(a){J.call(this,a)}v(jk,J);function kk(a){J.call(this,a)}v(kk,J);var ik=[7];function lk(a){a=(a=(new Jj(a)).get("FCCDCF",""))?a:null;try{return a?Nb(hk,a):null}catch(b){return null}};Zb({Gb:0,Fb:1,Cb:2,xb:3,Db:4,yb:5,Eb:6,Ab:7,Bb:8,wb:9,zb:10}).map(function(a){return Number(a)});Zb({Ib:0,Jb:1,Hb:2}).map(function(a){return Number(a)});function mk(a){function b(){if(!a.frames.__uspapiLocator)if(c.body){var d=Mc("IFRAME",c);d.style.display="none";d.style.width="0px";d.style.height="0px";d.style.border="none";d.style.zIndex="-1000";d.style.left="-1000px";d.style.top="-1000px";d.name="__uspapiLocator";c.body.appendChild(d)}else a.setTimeout(b,5)}var c=a.document;b()};function nk(a){this.h=a;this.i=a.document;this.j=(a=(a=lk(this.i))?G(a,kk,5)||null:null)?A(a,2):null;(a=lk(this.i))&&G(a,jk,4);(a=lk(this.i))&&G(a,jk,4)}function ok(){var a=window;a.__uspapi||a.frames.__uspapiLocator||(a=new nk(a),pk(a))}function pk(a){!a.j||a.h.__uspapi||a.h.frames.__uspapiLocator||(a.h.__uspapiManager="fc",mk(a.h),Ga(function(){return a.l.apply(a,ka(ta.apply(0,arguments)))}))} nk.prototype.l=function(a,b,c){"function"===typeof c&&"getUSPData"===a&&c({version:1,uspString:this.j},!0)};function qk(a){J.call(this,a)}v(qk,J);qk.prototype.getWidth=function(){return C(this,1,0)};qk.prototype.getHeight=function(){return C(this,2,0)};function rk(a){J.call(this,a)}v(rk,J);function sk(a){J.call(this,a)}v(sk,J);var tk=[4,5];function uk(a){var b=/[a-zA-Z0-9._~-]/,c=/%[89a-zA-Z]./;return a.replace(/(%[a-zA-Z0-9]{2})/g,function(d){if(!d.match(c)){var e=decodeURIComponent(d);if(e.match(b))return e}return d.toUpperCase()})}function vk(a){for(var b="",c=/[/%?&=]/,d=0;d<a.length;++d){var e=a[d];b=e.match(c)?b+e:b+encodeURIComponent(e)}return b};function wk(a,b){a=vk(uk(a.location.pathname)).replace(/(^\/)|(\/$)/g,"");var c=Tc(a),d=xk(a);return r(b,"find").call(b,function(e){var f=null!=A(e,7)?A(G(e,oe,7),1):A(e,1);e=null!=A(e,7)?A(G(e,oe,7),2):2;if("number"!==typeof f)return!1;switch(e){case 1:return f==c;case 2:return d[f]||!1}return!1})||null}function xk(a){for(var b={};;){b[Tc(a)]=!0;if(!a)return b;a=a.substring(0,a.lastIndexOf("/"))}};var yk={},zk=(yk.google_ad_channel=!0,yk.google_ad_host=!0,yk);function Ak(a,b){a.location.href&&a.location.href.substring&&(b.url=a.location.href.substring(0,200));Yi("ama",b,.01)}function Bk(a){var b={};Sc(zk,function(c,d){d in a&&(b[d]=a[d])});return b};function Ck(a){a=G(a,le,3);return!a||A(a,1)<=Date.now()?!1:!0}function Dk(a){return(a=zj(a))?Ck(a)?a:null:null}function Ek(a,b){try{b.removeItem("google_ama_config")}catch(c){Ak(a,{lserr:1})}};function Fk(a){J.call(this,a)}v(Fk,J);function Gk(a){J.call(this,a,-1,Hk)}v(Gk,J);var Hk=[1];function Ik(a){J.call(this,a,-1,Jk)}v(Ik,J);Ik.prototype.getId=function(){return C(this,1,0)};Ik.prototype.V=function(){return C(this,7,0)};var Jk=[2];function Kk(a){J.call(this,a,-1,Lk)}v(Kk,J);Kk.prototype.V=function(){return C(this,5,0)};var Lk=[2];function Mk(a){J.call(this,a,-1,Nk)}v(Mk,J);function Ok(a){J.call(this,a,-1,Pk)}v(Ok,J);Ok.prototype.V=function(){return C(this,1,0)};function Qk(a){J.call(this,a)}v(Qk,J);var Nk=[1,4,2,3],Pk=[2];function Rk(a){J.call(this,a,-1,Sk)}v(Rk,J);function Tk(a){return Ib(a,Gk,14,Uk)}var Sk=[19],Uk=[13,14];var Vk=void 0;function Wk(){Yf(Vk,Xf);return Vk}function Xk(a){Yf(Vk,$f);Vk=a};function Yk(a,b,c,d){c=void 0===c?"":c;return 1===b&&Zk(c,void 0===d?null:d)?!0:$k(a,c,function(e){return Ua(H(e,Tb,2),function(f){return A(f,1)===b})})}function Zk(a,b){return b?13===Cb(b,Uk)?D(Ib(b,Fk,13,Uk),1):14===Cb(b,Uk)&&""!==a&&1===wb(Tk(b),1).length&&wb(Tk(b),1)[0]===a?D(G(Tk(b),Fk,2),1):!1:!1}function al(a,b){b=C(b,18,0);-1!==b&&(a.tmod=b)}function bl(a){var b=void 0===b?"":b;var c=Ic(L)||L;return cl(c,a)?!0:$k(L,b,function(d){return Ua(wb(d,3),function(e){return e===a})})} function dl(a){return $k(w,void 0===a?"":a,function(){return!0})}function cl(a,b){a=(a=(a=a.location&&a.location.hash)&&a.match(/forced_clientside_labs=([\d,]+)/))&&a[1];return!!a&&Xa(a.split(","),b.toString())}function $k(a,b,c){a=Ic(a)||a;var d=el(a);b&&(b=rd(String(b)));return Yb(d,function(e,f){return Object.prototype.hasOwnProperty.call(d,f)&&(!b||b===f)&&c(e)})}function el(a){a=fl(a);var b={};Sc(a,function(c,d){try{var e=new Rb(c);b[d]=e}catch(f){}});return b} function fl(a){return P(xe)?(a=Uj({u:a,Z:Wk()}),null!=a.h?(gl("ok"),a=hl(a.h.value)):(gl(a.i.message),a={}),a):hl(a.localStorage)}function hl(a){try{var b=a.getItem("google_adsense_settings");if(!b)return{};var c=JSON.parse(b);return c!==Object(c)?{}:Xb(c,function(d,e){return Object.prototype.hasOwnProperty.call(c,e)&&"string"===typeof e&&Array.isArray(d)})}catch(d){return{}}}function gl(a){P(we)&&Yi("abg_adsensesettings_lserr",{s:a,g:P(xe),c:Wk(),r:.01},.01)};function il(a,b,c,d){jl(new kl(a,b,c,d))}function kl(a,b,c,d){this.u=a;this.i=b;this.j=c;this.h=d}function jl(a){Ed(Cd(Uj({u:a.u,Z:D(a.i,6)}),function(b){ll(a,b,!0)}),function(){ml(a)})}function ll(a,b,c){Ed(Cd(nl(b),function(d){ol("ok");a.h(d)}),function(){Ek(a.u,b);c?ml(a):a.h(null)})}function ml(a){Ed(Cd(pl(a),a.h),function(){ql(a)})}function ql(a){Tj({u:a.u,Z:D(a.i,6),ta:50,Ia:function(b){rl(a,b)}})}function nl(a){return(a=Dk(a))?Dd(a):Fd(Error("invlocst"))} function pl(a){a:{var b=a.u;var c=a.j;a=a.i;if(13===Cb(a,Uk))b=(b=G(G(Ib(a,Fk,13,Uk),bk,2),ck,2))&&0<H(b,ce,1).length?b:null;else{if(14===Cb(a,Uk)){var d=wb(Tk(a),1),e=G(G(G(Tk(a),Fk,2),bk,2),ck,2);if(1===d.length&&d[0]===c&&e&&0<H(e,ce,1).length&&I(a,17)===b.location.host){b=e;break a}}b=null}}b?(c=new je,a=H(b,ce,1),c=Gb(c,1,a),b=H(b,me,2),b=Gb(c,7,b),b=Dd(b)):b=Fd(Error("invtag"));return b}function rl(a,b){Ed(Cd(b,function(c){ll(a,c,!1)}),function(c){ol(c.message);a.h(null)})} function ol(a){Yi("abg::amalserr",{status:a,guarding:"true",timeout:50,rate:.01},.01)};function sl(a){Ak(a,{atf:1})}function tl(a,b){(a.google_ama_state=a.google_ama_state||{}).exception=b;Ak(a,{atf:0})};function U(a){a.google_ad_modifications||(a.google_ad_modifications={});return a.google_ad_modifications}function ul(a){a=U(a);var b=a.space_collapsing||"none";return a.remove_ads_by_default?{Fa:!0,tb:b,qa:a.ablation_viewport_offset}:null}function vl(a,b){a=U(a);a.had_ads_ablation=!0;a.remove_ads_by_default=!0;a.space_collapsing="slot";a.ablation_viewport_offset=b}function wl(a){U(L).allow_second_reactive_tag=a} function xl(){var a=U(window);a.afg_slotcar_vars||(a.afg_slotcar_vars={});return a.afg_slotcar_vars};function yl(a,b){if(!a)return!1;a=a.hash;if(!a||!a.indexOf)return!1;if(-1!=a.indexOf(b))return!0;b=zl(b);return"go"!=b&&-1!=a.indexOf(b)?!0:!1}function zl(a){var b="";Sc(a.split("_"),function(c){b+=c.substr(0,2)});return b};$a||!x("Safari")||Oa();function Al(){var a=this;this.promise=new p.Promise(function(b,c){a.resolve=b;a.reject=c})};function Bl(){var a=new Al;return{promise:a.promise,resolve:a.resolve}};function Cl(a){a=void 0===a?function(){}:a;w.google_llp||(w.google_llp={});var b=w.google_llp,c=b[7];if(c)return c;c=Bl();b[7]=c;a();return c}function Dl(a){return Cl(function(){Lc(w.document,a)}).promise};function El(a){var b={};return{enable_page_level_ads:(b.pltais=!0,b),google_ad_client:a}};function Fl(a){if(w.google_apltlad||w!==w.top||!a.google_ad_client)return null;w.google_apltlad=!0;var b=El(a.google_ad_client),c=b.enable_page_level_ads;Sc(a,function(d,e){Ei[e]&&"google_ad_client"!==e&&(c[e]=d)});c.google_pgb_reactive=7;if("google_ad_section"in a||"google_ad_region"in a)c.google_ad_section=a.google_ad_section||a.google_ad_region;return b}function Gl(a){return ya(a.enable_page_level_ads)&&7===a.enable_page_level_ads.google_pgb_reactive};function Hl(a,b){this.h=w;this.i=a;this.j=b}function Il(a){P(lf)?il(a.h,a.j,a.i.google_ad_client||"",function(b){var c=a.h,d=a.i;U(L).ama_ran_on_page||b&&Jl(c,d,b)}):Tj({u:a.h,Z:D(a.j,6),ta:50,Ia:function(b){return Kl(a,b)}})}function Kl(a,b){Ed(Cd(b,function(c){Ll("ok");var d=a.h,e=a.i;if(!U(L).ama_ran_on_page){var f=Dk(c);f?Jl(d,e,f):Ek(d,c)}}),function(c){return Ll(c.message)})}function Ll(a){Yi("abg::amalserr",{status:a,guarding:!0,timeout:50,rate:.01},.01)} function Jl(a,b,c){if(null!=A(c,24)){var d=Si(a);d.availableAbg=!0;var e,f;d.ablationFromStorage=!!(null==(e=G(c,ee,24))?0:null==(f=G(e,ge,3))?0:Ib(f,he,2,ie))}if(Gl(b)&&(d=wk(a,H(c,me,7)),!d||!xb(d,8)))return;U(L).ama_ran_on_page=!0;var g;if(null==(g=G(c,re,15))?0:xb(g,23))U(a).enable_overlap_observer=!0;if((g=G(c,pe,13))&&1===A(g,1)){var h=0,k=G(g,qe,6);k&&A(k,3)&&(h=A(k,3)||0);vl(a,h)}else if(null==(h=G(c,ee,24))?0:null==(k=G(h,ge,3))?0:Ib(k,he,2,ie))Si(a).ablatingThisPageview=!0,vl(a,1);kd(3, [c.toJSON()]);var l=b.google_ad_client||"";b=Bk(ya(b.enable_page_level_ads)?b.enable_page_level_ads:{});var m=Rd(Vd,new Qd(null,b));Wi(782,function(){var q=m;try{var t=wk(a,H(c,me,7)),y;if(y=t)a:{var F=wb(t,2);if(F)for(var z=0;z<F.length;z++)if(1==F[z]){y=!0;break a}y=!1}if(y){if(A(t,4)){y={};var E=new Qd(null,(y.google_package=A(t,4),y));q=Rd(q,E)}var S=new vj(a,l,c,t,q),rb=new sd;(new fk(a,S,rb)).start();rb.i.then(Fa(sl,a),Fa(tl,a))}}catch(Kc){Ak(a,{atf:-1})}})};/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ var Ml=ja(["https://fonts.googleapis.com/css2?family=Google+Material+Icons:wght@400;500;700"]);function Nl(a,b){return a instanceof HTMLScriptElement&&b.test(a.src)?0:1}function Ol(a){var b=L.document;if(b.currentScript)return Nl(b.currentScript,a);b=u(b.scripts);for(var c=b.next();!c.done;c=b.next())if(0===Nl(c.value,a))return 0;return 1};function Pl(a,b){var c={},d={},e={},f={};return f[fg]=(c[55]=function(){return 0===a},c[23]=function(g){return Yk(L,Number(g))},c[24]=function(g){return bl(Number(g))},c[61]=function(){return D(b,6)},c[63]=function(){return D(b,6)||".google.ch"===I(b,8)},c),f[gg]=(d[7]=function(g){try{var h=window.localStorage}catch(l){h=null}g=Number(g);g=void 0===g?0:g;g=0!==g?"google_experiment_mod"+g:"google_experiment_mod";var k=Vc(h,g);h=null===k?Wc(h,g):k;return null!=h?h:void 0},d),f[hg]=(e[6]=function(){return I(b, 15)},e),f};function Ql(a){a=void 0===a?w:a;return a.ggeac||(a.ggeac={})};function Rl(a,b){try{var c=a.split(".");a=w;for(var d=0,e;null!=a&&d<c.length;d++)e=a,a=a[c[d]],"function"===typeof a&&(a=e[c[d]]());var f=a;if(typeof f===b)return f}catch(g){}} function Sl(){var a={};this[fg]=(a[8]=function(b){try{return null!=va(b)}catch(c){}},a[9]=function(b){try{var c=va(b)}catch(d){return}if(b="function"===typeof c)c=c&&c.toString&&c.toString(),b="string"===typeof c&&-1!=c.indexOf("[native code]");return b},a[10]=function(){return window==window.top},a[6]=function(b){return Xa(O(Oh).h(),parseInt(b,10))},a[27]=function(b){b=Rl(b,"boolean");return void 0!==b?b:void 0},a[60]=function(b){try{return!!w.document.querySelector(b)}catch(c){}},a);a={};this[gg]= (a[3]=function(){return ad()},a[6]=function(b){b=Rl(b,"number");return void 0!==b?b:void 0},a[11]=function(b){b=void 0===b?"":b;var c=w;b=void 0===b?"":b;c=void 0===c?window:c;b=(c=(c=c.location.href.match(Ec)[3]||null)?decodeURI(c):c)?Tc(c+b):null;return null==b?void 0:b%1E3},a);a={};this[hg]=(a[2]=function(){return window.location.href},a[3]=function(){try{return window.top.location.hash}catch(b){return""}},a[4]=function(b){b=Rl(b,"string");return void 0!==b?b:void 0},a[10]=function(){try{var b= w.document;return b.visibilityState||b.webkitVisibilityState||b.mozVisibilityState||""}catch(c){return""}},a[11]=function(){try{var b,c,d,e,f;return null!=(f=null==(d=null==(b=va("google_tag_data"))?void 0:null==(c=b.uach)?void 0:c.fullVersionList)?void 0:null==(e=r(d,"find").call(d,function(g){return"Google Chrome"===g.brand}))?void 0:e.version)?f:""}catch(g){return""}},a)};var Tl=[12,13,20];function Ul(){}Ul.prototype.init=function(a,b,c,d){var e=this;d=void 0===d?{}:d;var f=void 0===d.Ka?!1:d.Ka,g=void 0===d.kb?{}:d.kb;d=void 0===d.mb?[]:d.mb;this.l=a;this.A={};this.G=f;this.m=g;a={};this.i=(a[b]=[],a[4]=[],a);this.j={};(b=Wh())&&Ra(b.split(",")||[],function(h){(h=parseInt(h,10))&&(e.j[h]=!0)});Ra(d,function(h){e.j[h]=!0});this.h=c;return this}; function Vl(a,b,c){var d=[],e=Wl(a.l,b),f;if(f=9!==b)a.A[b]?f=!0:(a.A[b]=!0,f=!1);if(f){var g;null==(g=a.h)||Yg(g,b,c,d,[],4);return d}if(!e.length){var h;null==(h=a.h)||Yg(h,b,c,d,[],3);return d}var k=Xa(Tl,b),l=[];Ra(e,function(q){var t=new Jg;if(q=Xl(a,q,c,t))0!==Cb(t,Kg)&&l.push(t),t=q.getId(),d.push(t),Yl(a,t,k?4:c),(q=H(q,qg,2))&&(k?oh(q,qh(),a.h,t):oh(q,[c],a.h,t))});var m;null==(m=a.h)||Yg(m,b,c,d,l,1);return d}function Yl(a,b,c){a.i[c]||(a.i[c]=[]);a=a.i[c];Xa(a,b)||a.push(b)} function Zl(a,b){a.l.push.apply(a.l,ka(Sa(Ta(b,function(c){return new Ok(c)}),function(c){return!Xa(Tl,c.V())})))} function Xl(a,b,c,d){var e=O(ah).h;if(!mg(G(b,ag,3),e))return null;var f=H(b,Ik,2),g=C(b,6,0);if(g){Bb(d,1,Kg,g);f=e[gg];switch(c){case 2:var h=f[8];break;case 1:h=f[7]}c=void 0;if(h)try{c=h(g),Ab(d,3,c)}catch(k){}return(b=$l(b,c))?am(a,[b],1):null}if(g=C(b,10,0)){Bb(d,2,Kg,g);h=null;switch(c){case 1:h=e[gg][9];break;case 2:h=e[gg][10];break;default:return null}c=h?h(String(g)):void 0;if(void 0===c&&1===C(b,11,0))return null;void 0!==c&&Ab(d,3,c);return(b=$l(b,c))?am(a,[b],1):null}d=e?Sa(f,function(k){return mg(G(k, ag,3),e)}):f;if(!d.length)return null;c=d.length*C(b,1,0);return(b=C(b,4,0))?bm(a,b,c,d):am(a,d,c/1E3)}function bm(a,b,c,d){var e=null!=a.m[b]?a.m[b]:1E3;if(0>=e)return null;d=am(a,d,c/e);a.m[b]=d?0:e-c;return d}function am(a,b,c){var d=a.j,e=Va(b,function(f){return!!d[f.getId()]});return e?e:a.G?null:Oc(b,c)} function cm(a,b){Jh(th,function(c){a.j[c]=!0},b);Jh(wh,function(c,d){return Vl(a,c,d)},b);Jh(xh,function(c){return(a.i[c]||[]).concat(a.i[4])},b);Jh(Gh,function(c){return Zl(a,c)},b);Jh(uh,function(c,d){return Yl(a,c,d)},b)}function Wl(a,b){return(a=Va(a,function(c){return c.V()==b}))&&H(a,Kk,2)||[]}function $l(a,b){var c=H(a,Ik,2),d=c.length,e=C(a,8,0);a=d*C(a,1,0)-1;b=void 0!==b?b:Math.floor(1E3*Rc());d=(b-e)%d;if(b<e||b-e-d>=a)return null;c=c[d];e=O(ah).h;return!c||e&&!mg(G(c,ag,3),e)?null:c};function dm(){this.h=function(){}}function em(a){O(dm).h(a)};var fm,gm,hm,im,jm,km; function lm(a,b,c,d){var e=1;d=void 0===d?Ql():d;e=void 0===e?0:e;var f=void 0===f?new Tg(null!=(im=null==(fm=G(a,Qk,5))?void 0:C(fm,2,0))?im:0,null!=(jm=null==(gm=G(a,Qk,5))?void 0:C(gm,4,0))?jm:0,null!=(km=null==(hm=G(a,Qk,5))?void 0:D(hm,3))?km:!1):f;d.hasOwnProperty("init-done")?(Kh(Gh,d)(Ta(H(a,Ok,2),function(g){return g.toJSON()})),Kh(Hh,d)(Ta(H(a,qg,1),function(g){return g.toJSON()}),e),b&&Kh(Ih,d)(b),mm(d,e)):(cm(O(Ul).init(H(a,Ok,2),e,f,c),d),Lh(d),Mh(d),Nh(d),mm(d,e),oh(H(a,qg,1),[e],f, void 0,!0),bh=bh||!(!c||!c.hb),em(O(Sl)),b&&em(b))}function mm(a,b){a=void 0===a?Ql():a;b=void 0===b?0:b;var c=a,d=b;d=void 0===d?0:d;Ph(O(Oh),c,d);nm(a,b);O(dm).h=Kh(Ih,a);O(yf).m()}function nm(a,b){var c=O(yf);c.i=function(d,e){return Kh(zh,a,function(){return!1})(d,e,b)};c.j=function(d,e){return Kh(Ah,a,function(){return 0})(d,e,b)};c.l=function(d,e){return Kh(Bh,a,function(){return""})(d,e,b)};c.h=function(d,e){return Kh(Ch,a,function(){return[]})(d,e,b)};c.m=function(){Kh(vh,a)(b)}};function om(a,b,c){var d=U(a);if(d.plle)mm(Ql(a),1);else{d.plle=!0;try{var e=a.localStorage}catch(f){e=null}d=e;null==Vc(d,"goog_pem_mod")&&Wc(d,"goog_pem_mod");d=G(b,Mk,12);e=D(b,9);lm(d,Pl(c,b),{Ka:e&&!!a.google_disable_experiments,hb:e},Ql(a));if(c=I(b,15))c=Number(c),O(Oh).l(c);if(c=I(b,10))c=Number(c),O(Oh).i(c);b=u(wb(b,19));for(c=b.next();!c.done;c=b.next())c=c.value,O(Oh).i(c);O(Oh).j(12);O(Oh).j(10);a=Ic(a)||a;yl(a.location,"google_mc_lab")&&O(Oh).i(44738307)}};function pm(a,b,c){a=a.style;a.border="none";a.height=c+"px";a.width=b+"px";a.margin=0;a.padding=0;a.position="relative";a.visibility="visible";a.backgroundColor="transparent"};var qm={"120x90":!0,"160x90":!0,"180x90":!0,"200x90":!0,"468x15":!0,"728x15":!0};function rm(a,b){if(15==b){if(728<=a)return 728;if(468<=a)return 468}else if(90==b){if(200<=a)return 200;if(180<=a)return 180;if(160<=a)return 160;if(120<=a)return 120}return null};function V(a,b,c,d){d=void 0===d?!1:d;wi.call(this,a,b);this.da=c;this.ib=d}v(V,wi);V.prototype.pa=function(){return this.da};V.prototype.i=function(a,b,c){b.google_ad_resize||(c.style.height=this.height()+"px",b.rpe=!0)};function sm(a){return function(b){return!!(b.da&a)}};var tm={},um=(tm.image_stacked=1/1.91,tm.image_sidebyside=1/3.82,tm.mobile_banner_image_sidebyside=1/3.82,tm.pub_control_image_stacked=1/1.91,tm.pub_control_image_sidebyside=1/3.82,tm.pub_control_image_card_stacked=1/1.91,tm.pub_control_image_card_sidebyside=1/3.74,tm.pub_control_text=0,tm.pub_control_text_card=0,tm),vm={},wm=(vm.image_stacked=80,vm.image_sidebyside=0,vm.mobile_banner_image_sidebyside=0,vm.pub_control_image_stacked=80,vm.pub_control_image_sidebyside=0,vm.pub_control_image_card_stacked= 85,vm.pub_control_image_card_sidebyside=0,vm.pub_control_text=80,vm.pub_control_text_card=80,vm),xm={},ym=(xm.pub_control_image_stacked=100,xm.pub_control_image_sidebyside=200,xm.pub_control_image_card_stacked=150,xm.pub_control_image_card_sidebyside=250,xm.pub_control_text=100,xm.pub_control_text_card=150,xm); function zm(a){var b=0;a.T&&b++;a.J&&b++;a.K&&b++;if(3>b)return{M:"Tags data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num should be set together."};b=a.T.split(",");var c=a.K.split(",");a=a.J.split(",");if(b.length!==c.length||b.length!==a.length)return{M:'Lengths of parameters data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num must match. Example: \n data-matched-content-rows-num="4,2"\ndata-matched-content-columns-num="1,6"\ndata-matched-content-ui-type="image_stacked,image_card_sidebyside"'}; if(2<b.length)return{M:"The parameter length of attribute data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num is too long. At most 2 parameters for each attribute are needed: one for mobile and one for desktop, while you are providing "+(b.length+' parameters. Example: \n data-matched-content-rows-num="4,2"\ndata-matched-content-columns-num="1,6"\ndata-matched-content-ui-type="image_stacked,image_card_sidebyside".')};for(var d=[],e=[],f=0;f<b.length;f++){var g= Number(c[f]);if(r(Number,"isNaN").call(Number,g)||0===g)return{M:"Wrong value '"+c[f]+"' for data-matched-content-rows-num."};d.push(g);g=Number(a[f]);if(r(Number,"isNaN").call(Number,g)||0===g)return{M:"Wrong value '"+a[f]+"' for data-matched-content-columns-num."};e.push(g)}return{K:d,J:e,Na:b}} function Am(a){return 1200<=a?{width:1200,height:600}:850<=a?{width:a,height:Math.floor(.5*a)}:550<=a?{width:a,height:Math.floor(.6*a)}:468<=a?{width:a,height:Math.floor(.7*a)}:{width:a,height:Math.floor(3.44*a)}};var Bm=Za("script");function Cm(a,b,c,d,e,f,g,h,k,l,m,q){this.A=a;this.U=b;this.da=void 0===c?null:c;this.h=void 0===d?null:d;this.P=void 0===e?null:e;this.i=void 0===f?null:f;this.j=void 0===g?null:g;this.H=void 0===h?null:h;this.N=void 0===k?null:k;this.l=void 0===l?null:l;this.m=void 0===m?null:m;this.O=void 0===q?null:q;this.R=this.C=this.G=null}Cm.prototype.size=function(){return this.U}; function Dm(a,b,c){null!=a.da&&(c.google_responsive_formats=a.da);null!=a.P&&(c.google_safe_for_responsive_override=a.P);null!=a.i&&(!0===a.i?c.google_full_width_responsive_allowed=!0:(c.google_full_width_responsive_allowed=!1,c.gfwrnwer=a.i));null!=a.j&&!0!==a.j&&(c.gfwrnher=a.j);var d=a.m||c.google_ad_width;null!=d&&(c.google_resizing_width=d);d=a.l||c.google_ad_height;null!=d&&(c.google_resizing_height=d);d=a.size().h(b);var e=a.size().height();if(!c.google_ad_resize){c.google_ad_width=d;c.google_ad_height= e;var f=a.size();b=f.h(b)+"x"+f.height();c.google_ad_format=b;c.google_responsive_auto_format=a.A;null!=a.h&&(c.armr=a.h);c.google_ad_resizable=!0;c.google_override_format=1;c.google_loader_features_used=128;!0===a.i&&(c.gfwrnh=a.size().height()+"px")}null!=a.H&&(c.gfwroml=a.H);null!=a.N&&(c.gfwromr=a.N);null!=a.l&&(c.gfwroh=a.l);null!=a.m&&(c.gfwrow=a.m);null!=a.O&&(c.gfwroz=a.O);null!=a.G&&(c.gml=a.G);null!=a.C&&(c.gmr=a.C);null!=a.R&&(c.gzi=a.R);b=Ic(window)||window;yl(b.location,"google_responsive_dummy_ad")&& (Xa([1,2,3,4,5,6,7,8],a.A)||1===a.h)&&2!==a.h&&(a=JSON.stringify({googMsgType:"adpnt",key_value:[{key:"qid",value:"DUMMY_AD"}]}),c.dash="<"+Bm+">window.top.postMessage('"+a+"', '*');\n </"+Bm+'>\n <div id="dummyAd" style="width:'+d+"px;height:"+e+'px;\n background:#ddd;border:3px solid #f00;box-sizing:border-box;\n color:#000;">\n <p>Requested size:'+d+"x"+e+"</p>\n <p>Rendered size:"+d+"x"+e+"</p>\n </div>")};var Em=["google_content_recommendation_ui_type","google_content_recommendation_columns_num","google_content_recommendation_rows_num"];function Fm(a,b){wi.call(this,a,b)}v(Fm,wi);Fm.prototype.h=function(a){return Math.min(1200,Math.max(this.minWidth(),Math.round(a)))}; function Gm(a,b){Hm(a,b);if("pedestal"==b.google_content_recommendation_ui_type)return new Cm(9,new Fm(a,Math.floor(a*b.google_phwr)));var c=Cc();468>a?c?(c=a-8-8,c=Math.floor(c/1.91+70)+Math.floor(11*(c*um.mobile_banner_image_sidebyside+wm.mobile_banner_image_sidebyside)+96),a={aa:a,$:c,J:1,K:12,T:"mobile_banner_image_sidebyside"}):(a=Am(a),a={aa:a.width,$:a.height,J:1,K:13,T:"image_sidebyside"}):(a=Am(a),a={aa:a.width,$:a.height,J:4,K:2,T:"image_stacked"});Im(b,a);return new Cm(9,new Fm(a.aa,a.$))} function Jm(a,b){Hm(a,b);var c=zm({K:b.google_content_recommendation_rows_num,J:b.google_content_recommendation_columns_num,T:b.google_content_recommendation_ui_type});if(c.M)a={aa:0,$:0,J:0,K:0,T:"image_stacked",M:c.M};else{var d=2===c.Na.length&&468<=a?1:0;var e=c.Na[d];e=0===e.indexOf("pub_control_")?e:"pub_control_"+e;var f=ym[e];for(var g=c.J[d];a/g<f&&1<g;)g--;f=g;c=c.K[d];d=Math.floor(((a-8*f-8)/f*um[e]+wm[e])*c+8*c+8);a=1500<a?{width:0,height:0,rb:"Calculated slot width is too large: "+a}: 1500<d?{width:0,height:0,rb:"Calculated slot height is too large: "+d}:{width:a,height:d};a={aa:a.width,$:a.height,J:f,K:c,T:e}}if(a.M)throw new T(a.M);Im(b,a);return new Cm(9,new Fm(a.aa,a.$))}function Hm(a,b){if(0>=a)throw new T("Invalid responsive width from Matched Content slot "+b.google_ad_slot+": "+a+". Please ensure to put this Matched Content slot into a non-zero width div container.");} function Im(a,b){a.google_content_recommendation_ui_type=b.T;a.google_content_recommendation_columns_num=b.J;a.google_content_recommendation_rows_num=b.K};function Km(a,b){wi.call(this,a,b)}v(Km,wi);Km.prototype.h=function(){return this.minWidth()};Km.prototype.i=function(a,b,c){vi(a,c);b.google_ad_resize||(c.style.height=this.height()+"px",b.rpe=!0)};var Lm={"image-top":function(a){return 600>=a?284+.414*(a-250):429},"image-middle":function(a){return 500>=a?196-.13*(a-250):164+.2*(a-500)},"image-side":function(a){return 500>=a?205-.28*(a-250):134+.21*(a-500)},"text-only":function(a){return 500>=a?187-.228*(a-250):130},"in-article":function(a){return 420>=a?a/1.2:460>=a?a/1.91+130:800>=a?a/4:200}};function Mm(a,b){wi.call(this,a,b)}v(Mm,wi);Mm.prototype.h=function(){return Math.min(1200,this.minWidth())}; function Nm(a,b,c,d,e){var f=e.google_ad_layout||"image-top";if("in-article"==f){var g=a;if("false"==e.google_full_width_responsive)a=g;else if(a=qi(b,c,g,.2,e),!0!==a)e.gfwrnwer=a,a=g;else if(a=Wf(b))if(e.google_full_width_responsive_allowed=!0,c.parentElement){b:{g=c;for(var h=0;100>h&&g.parentElement;++h){for(var k=g.parentElement.childNodes,l=0;l<k.length;++l){var m=k[l];if(m!=g&&ti(b,m))break b}g=g.parentElement;g.style.width="100%";g.style.height="auto"}}vi(b,c)}else a=g;else a=g}if(250>a)throw new T("Fluid responsive ads must be at least 250px wide: availableWidth="+ a);a=Math.min(1200,Math.floor(a));if(d&&"in-article"!=f){f=Math.ceil(d);if(50>f)throw new T("Fluid responsive ads must be at least 50px tall: height="+f);return new Cm(11,new wi(a,f))}if("in-article"!=f&&(d=e.google_ad_layout_key)){f=""+d;b=Math.pow(10,3);if(d=(c=f.match(/([+-][0-9a-z]+)/g))&&c.length){e=[];for(g=0;g<d;g++)e.push(parseInt(c[g],36)/b);b=e}else b=null;if(!b)throw new T("Invalid data-ad-layout-key value: "+f);f=(a+-725)/1E3;c=0;d=1;e=b.length;for(g=0;g<e;g++)c+=b[g]*d,d*=f;f=Math.ceil(1E3* c- -725+10);if(isNaN(f))throw new T("Invalid height: height="+f);if(50>f)throw new T("Fluid responsive ads must be at least 50px tall: height="+f);if(1200<f)throw new T("Fluid responsive ads must be at most 1200px tall: height="+f);return new Cm(11,new wi(a,f))}d=Lm[f];if(!d)throw new T("Invalid data-ad-layout value: "+f);c=Ai(c,b);b=Wf(b);b="in-article"!==f||c||a!==b?Math.ceil(d(a)):Math.ceil(1.25*d(a));return new Cm(11,"in-article"==f?new Mm(a,b):new wi(a,b))};function Om(a){return function(b){for(var c=a.length-1;0<=c;--c)if(!a[c](b))return!1;return!0}}function Pm(a,b){for(var c=Qm.slice(0),d=c.length,e=null,f=0;f<d;++f){var g=c[f];if(a(g)){if(!b||b(g))return g;null===e&&(e=g)}}return e};var W=[new V(970,90,2),new V(728,90,2),new V(468,60,2),new V(336,280,1),new V(320,100,2),new V(320,50,2),new V(300,600,4),new V(300,250,1),new V(250,250,1),new V(234,60,2),new V(200,200,1),new V(180,150,1),new V(160,600,4),new V(125,125,1),new V(120,600,4),new V(120,240,4),new V(120,120,1,!0)],Qm=[W[6],W[12],W[3],W[0],W[7],W[14],W[1],W[8],W[10],W[4],W[15],W[2],W[11],W[5],W[13],W[9],W[16]];function Rm(a,b,c,d,e){"false"==e.google_full_width_responsive?c={D:a,F:1}:"autorelaxed"==b&&e.google_full_width_responsive||Sm(b)||e.google_ad_resize?(b=ri(a,c,d,e),c=!0!==b?{D:a,F:b}:{D:Wf(c)||a,F:!0}):c={D:a,F:2};b=c.F;return!0!==b?{D:a,F:b}:d.parentElement?{D:c.D,F:b}:{D:a,F:b}} function Tm(a,b,c,d,e){var f=Wi(247,function(){return Rm(a,b,c,d,e)}),g=f.D;f=f.F;var h=!0===f,k=K(d.style.width),l=K(d.style.height),m=Um(g,b,c,d,e,h);g=m.Y;h=m.W;var q=m.pa;m=m.Ma;var t=Vm(b,q),y,F=(y=xi(d,c,"marginLeft",K))?y+"px":"",z=(y=xi(d,c,"marginRight",K))?y+"px":"";y=xi(d,c,"zIndex")||"";return new Cm(t,g,q,null,m,f,h,F,z,l,k,y)}function Sm(a){return"auto"==a||/^((^|,) *(horizontal|vertical|rectangle) *)+$/.test(a)} function Um(a,b,c,d,e,f){b="auto"==b?.25>=a/Math.min(1200,Wf(c))?4:3:pi(b);var g=!1,h=!1;if(488>Wf(c)){var k=ki(d,c);var l=Ai(d,c);g=!l&&k;h=l&&k}l=[yi(a),sm(b)];l.push(zi(488>Wf(c),c,d,h));null!=e.google_max_responsive_height&&l.push(Ci(e.google_max_responsive_height));var m=[function(t){return!t.ib}];if(g||h)g=Di(c,d),m.push(Ci(g));var q=Pm(Om(l),Om(m));if(!q)throw new T("No slot size for availableWidth="+a);l=Wi(248,function(){var t;a:if(f){if(e.gfwrnh&&(t=K(e.gfwrnh))){t={Y:new Km(a,t),W:!0}; break a}t=a/1.2;var y=Math;var F=y.min;if(e.google_resizing_allowed||"true"==e.google_full_width_responsive)var z=Infinity;else{z=d;var E=Infinity;do{var S=xi(z,c,"height",K);S&&(E=Math.min(E,S));(S=xi(z,c,"maxHeight",K))&&(E=Math.min(E,S))}while((z=z.parentElement)&&"HTML"!=z.tagName);z=E}y=F.call(y,t,z);if(y<.5*t||100>y)y=t;P(hf)&&!Ai(d,c)&&(y=Math.max(y,.5*Vf(c).clientHeight));t={Y:new Km(a,Math.floor(y)),W:y<t?102:!0}}else t={Y:q,W:100};return t});g=l.Y;l=l.W;return"in-article"===e.google_ad_layout&& Wm(c)?{Y:Xm(a,c,d,g,e),W:!1,pa:b,Ma:k}:{Y:g,W:l,pa:b,Ma:k}}function Vm(a,b){if("auto"==a)return 1;switch(b){case 2:return 2;case 1:return 3;case 4:return 4;case 3:return 5;case 6:return 6;case 5:return 7;case 7:return 8}throw Error("bad mask");}function Xm(a,b,c,d,e){var f=e.google_ad_height||xi(c,b,"height",K);b=Nm(a,b,c,f,e).size();return b.minWidth()*b.height()>a*d.height()?new V(b.minWidth(),b.height(),1):d}function Wm(a){return P(ff)||a.location&&"#hffwroe2etoq"==a.location.hash};function Ym(a,b,c,d,e){var f;(f=Wf(b))?488>Wf(b)?b.innerHeight>=b.innerWidth?(e.google_full_width_responsive_allowed=!0,vi(b,c),f={D:f,F:!0}):f={D:a,F:5}:f={D:a,F:4}:f={D:a,F:10};var g=f;f=g.D;g=g.F;if(!0!==g||a==f)return new Cm(12,new wi(a,d),null,null,!0,g,100);a=Um(f,"auto",b,c,e,!0);return new Cm(1,a.Y,a.pa,2,!0,g,a.W)};function Zm(a,b){var c=b.google_ad_format;if("autorelaxed"==c){a:{if("pedestal"!=b.google_content_recommendation_ui_type)for(a=u(Em),c=a.next();!c.done;c=a.next())if(null!=b[c.value]){b=!0;break a}b=!1}return b?9:5}if(Sm(c))return 1;if("link"===c)return 4;if("fluid"==c){if(c="in-article"===b.google_ad_layout)c=P(gf)||P(ff)||a.location&&("#hffwroe2etop"==a.location.hash||"#hffwroe2etoq"==a.location.hash);return c?($m(b),1):8}if(27===b.google_reactive_ad_format)return $m(b),1} function an(a,b,c,d,e){e=b.offsetWidth||(c.google_ad_resize||(void 0===e?!1:e))&&xi(b,d,"width",K)||c.google_ad_width||0;4===a&&(c.google_ad_format="auto",a=1);var f=(f=bn(a,e,b,c,d))?f:Tm(e,c.google_ad_format,d,b,c);f.size().i(d,c,b);Dm(f,e,c);1!=a&&(a=f.size().height(),b.style.height=a+"px")} function bn(a,b,c,d,e){var f=d.google_ad_height||xi(c,e,"height",K);switch(a){case 5:return f=Wi(247,function(){return Rm(b,d.google_ad_format,e,c,d)}),a=f.D,f=f.F,!0===f&&b!=a&&vi(e,c),!0===f?d.google_full_width_responsive_allowed=!0:(d.google_full_width_responsive_allowed=!1,d.gfwrnwer=f),Gm(a,d);case 9:return Jm(b,d);case 8:return Nm(b,e,c,f,d);case 10:return Ym(b,e,c,f,d)}}function $m(a){a.google_ad_format="auto";a.armr=3};function cn(a,b){var c=Ic(b);if(c){c=Wf(c);var d=Nc(a,b)||{},e=d.direction;if("0px"===d.width&&"none"!==d.cssFloat)return-1;if("ltr"===e&&c)return Math.floor(Math.min(1200,c-a.getBoundingClientRect().left));if("rtl"===e&&c)return a=b.document.body.getBoundingClientRect().right-a.getBoundingClientRect().right,Math.floor(Math.min(1200,c-a-Math.floor((c-b.document.body.clientWidth)/2)))}return-1};var dn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/slotcar_library",".js"]),en=ja(["https://googleads.g.doubleclick.net/pagead/html/","/","/zrt_lookup.html"]),fn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl",".js"]),gn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl_with_ama",".js"]),hn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl_instrumented",".js"]);function jn(a){Ui.Ta(function(b){b.shv=String(a);b.mjsv="m202204040101";var c=O(Oh).h(),d=U(w);d.eids||(d.eids=[]);b.eid=c.concat(d.eids).join(",")})};function kn(a){var b=a.nb;return a.eb||("dev"===b?"dev":"")};var ln={},mn=(ln.google_ad_modifications=!0,ln.google_analytics_domain_name=!0,ln.google_analytics_uacct=!0,ln.google_pause_ad_requests=!0,ln.google_user_agent_client_hint=!0,ln);function nn(a){return(a=a.innerText||a.innerHTML)&&(a=a.replace(/^\s+/,"").split(/\r?\n/,1)[0].match(/^\x3c!--+(.*?)(?:--+>)?\s*$/))&&RegExp("google_ad_client").test(a[1])?a[1]:null} function on(a){if(a=a.innerText||a.innerHTML)if(a=a.replace(/^\s+|\s+$/g,"").replace(/\s*(\r?\n)+\s*/g,";"),(a=a.match(/^\x3c!--+(.*?)(?:--+>)?$/)||a.match(/^\/*\s*<!\[CDATA\[(.*?)(?:\/*\s*\]\]>)?$/i))&&RegExp("google_ad_client").test(a[1]))return a[1];return null} function pn(a){switch(a){case "true":return!0;case "false":return!1;case "null":return null;case "undefined":break;default:try{var b=a.match(/^(?:'(.*)'|"(.*)")$/);if(b)return b[1]||b[2]||"";if(/^[-+]?\d*(\.\d+)?$/.test(a)){var c=parseFloat(a);return c===c?c:void 0}}catch(d){}}};function qn(a){if(a.google_ad_client)return String(a.google_ad_client);var b,c,d,e,f;if(null!=(e=null!=(d=null==(b=U(a).head_tag_slot_vars)?void 0:b.google_ad_client)?d:null==(c=a.document.querySelector(".adsbygoogle[data-ad-client]"))?void 0:c.getAttribute("data-ad-client")))b=e;else{b:{b=a.document.getElementsByTagName("script");a=a.navigator&&a.navigator.userAgent||"";a=RegExp("appbankapppuzdradb|daumapps|fban|fbios|fbav|fb_iab|gsa/|messengerforios|naver|niftyappmobile|nonavigation|pinterest|twitter|ucbrowser|yjnewsapp|youtube", "i").test(a)||/i(phone|pad|pod)/i.test(a)&&/applewebkit/i.test(a)&&!/version|safari/i.test(a)&&!qd()?nn:on;for(c=b.length-1;0<=c;c--)if(d=b[c],!d.google_parsed_script_for_pub_code&&(d.google_parsed_script_for_pub_code=!0,d=a(d))){b=d;break b}b=null}if(b){a=/(google_\w+) *= *(['"]?[\w.-]+['"]?) *(?:;|$)/gm;for(c={};d=a.exec(b);)c[d[1]]=pn(d[2]);b=c.google_ad_client?c.google_ad_client:""}else b=""}return null!=(f=b)?f:""};var rn="undefined"===typeof sttc?void 0:sttc;function sn(a){var b=Ui;try{return Yf(a,Zf),new Rk(JSON.parse(a))}catch(c){b.I(838,c instanceof Error?c:Error(String(c)),void 0,function(d){d.jspb=String(a)})}return new Rk};var tn=O(yf).h(mf.h,mf.defaultValue);function un(){var a=L.document;a=void 0===a?window.document:a;ed(tn,a)};var vn=O(yf).h(nf.h,nf.defaultValue);function wn(){var a=L.document;a=void 0===a?window.document:a;ed(vn,a)};var xn=ja(["https://pagead2.googlesyndication.com/pagead/js/err_rep.js"]);function yn(){this.h=null;this.j=!1;this.l=Math.random();this.i=this.I;this.m=null}n=yn.prototype;n.Ta=function(a){this.h=a};n.Va=function(a){this.j=a};n.Ua=function(a){this.i=a}; n.I=function(a,b,c,d,e){if((this.j?this.l:Math.random())>(void 0===c?.01:c))return!1;Rh(b)||(b=new Qh(b,{context:a,id:void 0===e?"jserror":e}));if(d||this.h)b.meta={},this.h&&this.h(b.meta),d&&d(b.meta);w.google_js_errors=w.google_js_errors||[];w.google_js_errors.push(b);if(!w.error_rep_loaded){a=nd(xn);var f;Lc(w.document,null!=(f=this.m)?f:hc(qc(a).toString()));w.error_rep_loaded=!0}return!1};n.oa=function(a,b,c){try{return b()}catch(d){if(!this.i(a,d,.01,c,"jserror"))throw d;}}; n.Oa=function(a,b){var c=this;return function(){var d=ta.apply(0,arguments);return c.oa(a,function(){return b.apply(void 0,d)})}};n.Pa=function(a,b){var c=this;b.catch(function(d){d=d?d:"unknown rejection";c.I(a,d instanceof Error?d:Error(d))})};function zn(a,b,c){var d=window;return function(){var e=Yh(),f=3;try{var g=b.apply(this,arguments)}catch(h){f=13;if(c)return c(a,h),g;throw h;}finally{d.google_measure_js_timing&&e&&(e={label:a.toString(),value:e,duration:(Yh()||0)-e,type:f},f=d.google_js_reporting_queue=d.google_js_reporting_queue||[],2048>f.length&&f.push(e))}return g}}function An(a,b){return zn(a,b,function(c,d){(new yn).I(c,d)})};function Bn(a,b){return null==b?"&"+a+"=null":"&"+a+"="+Math.floor(b)}function Cn(a,b){return"&"+a+"="+b.toFixed(3)}function Dn(){var a=new p.Set,b=aj();try{if(!b)return a;for(var c=b.pubads(),d=u(c.getSlots()),e=d.next();!e.done;e=d.next())a.add(e.value.getSlotId().getDomId())}catch(f){}return a}function En(a){a=a.id;return null!=a&&(Dn().has(a)||r(a,"startsWith").call(a,"google_ads_iframe_")||r(a,"startsWith").call(a,"aswift"))} function Fn(a,b,c){if(!a.sources)return!1;switch(Gn(a)){case 2:var d=Hn(a);if(d)return c.some(function(f){return In(d,f)});case 1:var e=Jn(a);if(e)return b.some(function(f){return In(e,f)})}return!1}function Gn(a){if(!a.sources)return 0;a=a.sources.filter(function(b){return b.previousRect&&b.currentRect});if(1<=a.length){a=a[0];if(a.previousRect.top<a.currentRect.top)return 2;if(a.previousRect.top>a.currentRect.top)return 1}return 0}function Jn(a){return Kn(a,function(b){return b.currentRect})} function Hn(a){return Kn(a,function(b){return b.previousRect})}function Kn(a,b){return a.sources.reduce(function(c,d){d=b(d);return c?d&&0!==d.width*d.height?d.top<c.top?d:c:c:d},null)} function Ln(){Mj.call(this);this.i=this.h=this.P=this.O=this.H=0;this.Ba=this.ya=Number.NEGATIVE_INFINITY;this.ua=this.wa=this.xa=this.za=this.Ea=this.m=this.Da=this.U=0;this.va=!1;this.R=this.N=this.C=0;var a=document.querySelector("[data-google-query-id]");this.Ca=a?a.getAttribute("data-google-query-id"):null;this.l=null;this.Aa=!1;this.ga=function(){}}v(Ln,Mj); function Mn(){var a=new Ln;if(P(of)){var b=window;if(!b.google_plmetrics&&window.PerformanceObserver){b.google_plmetrics=!0;b=u(["layout-shift","largest-contentful-paint","first-input","longtask"]);for(var c=b.next();!c.done;c=b.next())c=c.value,Nn(a).observe({type:c,buffered:!0});On(a)}}} function Nn(a){a.l||(a.l=new PerformanceObserver(An(640,function(b){var c=Pn!==window.scrollX||Qn!==window.scrollY?[]:Rn,d=Sn();b=u(b.getEntries());for(var e=b.next();!e.done;e=b.next())switch(e=e.value,e.entryType){case "layout-shift":var f=a;if(!e.hadRecentInput){f.H+=Number(e.value);Number(e.value)>f.O&&(f.O=Number(e.value));f.P+=1;var g=Fn(e,c,d);g&&(f.m+=e.value,f.za++);if(5E3<e.startTime-f.ya||1E3<e.startTime-f.Ba)f.ya=e.startTime,f.h=0,f.i=0;f.Ba=e.startTime;f.h+=e.value;g&&(f.i+=e.value); f.h>f.U&&(f.U=f.h,f.Ea=f.i,f.Da=e.startTime+e.duration)}break;case "largest-contentful-paint":a.xa=Math.floor(e.renderTime||e.loadTime);a.wa=e.size;break;case "first-input":a.ua=Number((e.processingStart-e.startTime).toFixed(3));a.va=!0;break;case "longtask":e=Math.max(0,e.duration-50),a.C+=e,a.N=Math.max(a.N,e),a.R+=1}})));return a.l} function On(a){var b=An(641,function(){var d=document;2==(d.prerendering?3:{visible:1,hidden:2,prerender:3,preview:4,unloaded:5}[d.visibilityState||d.webkitVisibilityState||d.mozVisibilityState||""]||0)&&Tn(a)}),c=An(641,function(){return void Tn(a)});document.addEventListener("visibilitychange",b);document.addEventListener("unload",c);a.ga=function(){document.removeEventListener("visibilitychange",b);document.removeEventListener("unload",c);Nn(a).disconnect()}} Ln.prototype.j=function(){Mj.prototype.j.call(this);this.ga()}; function Tn(a){if(!a.Aa){a.Aa=!0;Nn(a).takeRecords();var b="https://pagead2.googlesyndication.com/pagead/gen_204?id=plmetrics";window.LayoutShift&&(b+=Cn("cls",a.H),b+=Cn("mls",a.O),b+=Bn("nls",a.P),window.LayoutShiftAttribution&&(b+=Cn("cas",a.m),b+=Bn("nas",a.za)),b+=Cn("wls",a.U),b+=Cn("tls",a.Da),window.LayoutShiftAttribution&&(b+=Cn("was",a.Ea)));window.LargestContentfulPaint&&(b+=Bn("lcp",a.xa),b+=Bn("lcps",a.wa));window.PerformanceEventTiming&&a.va&&(b+=Bn("fid",a.ua));window.PerformanceLongTaskTiming&& (b+=Bn("cbt",a.C),b+=Bn("mbt",a.N),b+=Bn("nlt",a.R));for(var c=0,d=u(document.getElementsByTagName("iframe")),e=d.next();!e.done;e=d.next())En(e.value)&&c++;b+=Bn("nif",c);b+=Bn("ifi",pd(window));c=O(Oh).h();b+="&eid="+encodeURIComponent(c.join());b+="&top="+(w===w.top?1:0);b+=a.Ca?"&qqid="+encodeURIComponent(a.Ca):Bn("pvsid",fd(w));window.googletag&&(b+="&gpt=1");window.fetch(b,{keepalive:!0,credentials:"include",redirect:"follow",method:"get",mode:"no-cors"});a.A||(a.A=!0,a.j())}} function In(a,b){var c=Math.min(a.right,b.right)-Math.max(a.left,b.left);a=Math.min(a.bottom,b.bottom)-Math.max(a.top,b.top);return 0>=c||0>=a?!1:50<=100*c*a/((b.right-b.left)*(b.bottom-b.top))} function Sn(){var a=[].concat(ka(document.getElementsByTagName("iframe"))).filter(En),b=[].concat(ka(Dn())).map(function(c){return document.getElementById(c)}).filter(function(c){return null!==c});Pn=window.scrollX;Qn=window.scrollY;return Rn=[].concat(ka(a),ka(b)).map(function(c){return c.getBoundingClientRect()})}var Pn=void 0,Qn=void 0,Rn=[];var X={issuerOrigin:"https://attestation.android.com",issuancePath:"/att/i",redemptionPath:"/att/r"},Y={issuerOrigin:"https://pagead2.googlesyndication.com",issuancePath:"/dtt/i",redemptionPath:"/dtt/r",getStatePath:"/dtt/s"};var Un=O(yf).h(wf.h,wf.defaultValue); function Vn(a,b,c){Mj.call(this);var d=this;this.i=a;this.h=[];b&&Wn()&&this.h.push(X);c&&this.h.push(Y);if(document.hasTrustToken&&!P(tf)){var e=new p.Map;this.h.forEach(function(f){e.set(f.issuerOrigin,{issuerOrigin:f.issuerOrigin,state:d.i?1:12,hasRedemptionRecord:!1})});window.goog_tt_state_map=window.goog_tt_state_map&&window.goog_tt_state_map instanceof p.Map?new p.Map([].concat(ka(e),ka(window.goog_tt_state_map))):e;window.goog_tt_promise_map&&window.goog_tt_promise_map instanceof p.Map||(window.goog_tt_promise_map= new p.Map)}}v(Vn,Mj);function Wn(){var a=void 0===a?window:a;a=a.navigator.userAgent;var b=/Chrome/.test(a);return/Android/.test(a)&&b}function Xn(){var a=void 0===a?window.document:a;ed(Un,a)}function Yn(a,b){return a||".google.ch"===b||"function"===typeof L.__tcfapi}function Z(a,b,c){var d,e=null==(d=window.goog_tt_state_map)?void 0:d.get(a);e&&(e.state=b,void 0!=c&&(e.hasRedemptionRecord=c))} function Zn(){var a=X.issuerOrigin+X.redemptionPath,b={keepalive:!0,trustToken:{type:"token-redemption",issuer:X.issuerOrigin,refreshPolicy:"none"}};Z(X.issuerOrigin,2);return window.fetch(a,b).then(function(c){if(!c.ok)throw Error(c.status+": Network response was not ok!");Z(X.issuerOrigin,6,!0)}).catch(function(c){c&&"NoModificationAllowedError"===c.name?Z(X.issuerOrigin,6,!0):Z(X.issuerOrigin,5)})} function $n(){var a=X.issuerOrigin+X.issuancePath;Z(X.issuerOrigin,8);return window.fetch(a,{keepalive:!0,trustToken:{type:"token-request"}}).then(function(b){if(!b.ok)throw Error(b.status+": Network response was not ok!");Z(X.issuerOrigin,10);return Zn()}).catch(function(b){if(b&&"NoModificationAllowedError"===b.name)return Z(X.issuerOrigin,10),Zn();Z(X.issuerOrigin,9)})}function ao(){Z(X.issuerOrigin,13);return document.hasTrustToken(X.issuerOrigin).then(function(a){return a?Zn():$n()})} function bo(){Z(Y.issuerOrigin,13);if(p.Promise){var a=document.hasTrustToken(Y.issuerOrigin).then(function(e){return e}).catch(function(e){return p.Promise.reject({state:19,error:e})}),b=Y.issuerOrigin+Y.redemptionPath,c={keepalive:!0,trustToken:{type:"token-redemption",refreshPolicy:"none"}};Z(Y.issuerOrigin,16);a=a.then(function(e){return window.fetch(b,c).then(function(f){if(!f.ok)throw Error(f.status+": Network response was not ok!");Z(Y.issuerOrigin,18,!0)}).catch(function(f){if(f&&"NoModificationAllowedError"=== f.name)Z(Y.issuerOrigin,18,!0);else{if(e)return p.Promise.reject({state:17,error:f});Z(Y.issuerOrigin,17)}})}).then(function(){return document.hasTrustToken(Y.issuerOrigin).then(function(e){return e}).catch(function(e){return p.Promise.reject({state:19,error:e})})}).then(function(e){var f=Y.issuerOrigin+Y.getStatePath;Z(Y.issuerOrigin,20);return window.fetch(f+"?ht="+e,{trustToken:{type:"send-redemption-record",issuers:[Y.issuerOrigin]}}).then(function(g){if(!g.ok)throw Error(g.status+": Network response was not ok!"); Z(Y.issuerOrigin,22);return g.text().then(function(h){return JSON.parse(h)})}).catch(function(g){return p.Promise.reject({state:21,error:g})})});var d=fd(window);return a.then(function(e){var f=Y.issuerOrigin+Y.issuancePath;return e&&e.srqt&&e.cs?(Z(Y.issuerOrigin,23),window.fetch(f+"?cs="+e.cs+"&correlator="+d,{keepalive:!0,trustToken:{type:"token-request"}}).then(function(g){if(!g.ok)throw Error(g.status+": Network response was not ok!");Z(Y.issuerOrigin,25);return e}).catch(function(g){return p.Promise.reject({state:24, error:g})})):e}).then(function(e){if(e&&e.srdt&&e.cs)return Z(Y.issuerOrigin,26),window.fetch(b+"?cs="+e.cs+"&correlator="+d,{keepalive:!0,trustToken:{type:"token-redemption",refreshPolicy:"refresh"}}).then(function(f){if(!f.ok)throw Error(f.status+": Network response was not ok!");Z(Y.issuerOrigin,28,!0)}).catch(function(f){return p.Promise.reject({state:27,error:f})})}).then(function(){Z(Y.issuerOrigin,29)}).catch(function(e){if(e instanceof Object&&e.hasOwnProperty("state")&&e.hasOwnProperty("error"))if("number"=== typeof e.state&&e.error instanceof Error){Z(Y.issuerOrigin,e.state);var f=Q(vf);Math.random()<=f&&Ff({state:e.state,err:e.error.toString()})}else throw Error(e);else throw e;})}} function co(a){if(document.hasTrustToken&&!P(tf)&&a.i){var b=window.goog_tt_promise_map;if(b&&b instanceof p.Map){var c=[];if(a.h.some(function(e){return e.issuerOrigin===X.issuerOrigin})){var d=b.get(X.issuerOrigin);d||(d=ao(),b.set(X.issuerOrigin,d));c.push(d)}a.h.some(function(e){return e.issuerOrigin===Y.issuerOrigin})&&(a=b.get(Y.issuerOrigin),a||(a=bo(),b.set(Y.issuerOrigin,a)),c.push(a));if(0<c.length&&p.Promise&&p.Promise.all)return p.Promise.all(c)}}};function eo(a){J.call(this,a,-1,fo)}v(eo,J);function go(a,b){return B(a,2,b)}function ho(a,b){return B(a,3,b)}function io(a,b){return B(a,4,b)}function jo(a,b){return B(a,5,b)}function ko(a,b){return B(a,9,b)}function lo(a,b){return Gb(a,10,b)}function mo(a,b){return B(a,11,b)}function no(a,b){return B(a,1,b)}function oo(a){J.call(this,a)}v(oo,J);oo.prototype.getVersion=function(){return I(this,2)};var fo=[10,6];var po="platform platformVersion architecture model uaFullVersion bitness fullVersionList wow64".split(" ");function qo(){var a;return null!=(a=L.google_tag_data)?a:L.google_tag_data={}} function ro(){var a,b;if("function"!==typeof(null==(a=L.navigator)?void 0:null==(b=a.userAgentData)?void 0:b.getHighEntropyValues))return null;var c=qo();if(c.uach_promise)return c.uach_promise;a=L.navigator.userAgentData.getHighEntropyValues(po).then(function(d){null!=c.uach||(c.uach=d);return d});return c.uach_promise=a} function so(a){var b;return mo(lo(ko(jo(io(ho(go(no(new eo,a.platform||""),a.platformVersion||""),a.architecture||""),a.model||""),a.uaFullVersion||""),a.bitness||""),(null==(b=a.fullVersionList)?void 0:b.map(function(c){var d=new oo;d=B(d,1,c.brand);return B(d,2,c.version)}))||[]),a.wow64||!1)} function to(){if(P(pf)){var a,b;return null!=(b=null==(a=ro())?void 0:a.then(function(f){return so(f)}))?b:null}var c,d;if("function"!==typeof(null==(c=L.navigator)?void 0:null==(d=c.userAgentData)?void 0:d.getHighEntropyValues))return null;var e;return null!=(e=L.navigator.userAgentData.getHighEntropyValues(po).then(function(f){return so(f)}))?e:null};function uo(a,b){b.google_ad_host||(a=vo(a))&&(b.google_ad_host=a)}function wo(a,b,c){c=void 0===c?"":c;L.google_sa_impl&&!L.document.getElementById("google_shimpl")&&(delete L.google_sa_queue,delete L.google_sa_impl);L.google_sa_queue||(L.google_sa_queue=[],L.google_process_slots=Xi(215,function(){return xo(L.google_sa_queue)}),a=yo(c,a,b),Lc(L.document,a).id="google_shimpl")} function xo(a){var b=a.shift();"function"===typeof b&&Wi(216,b);a.length&&w.setTimeout(Xi(215,function(){return xo(a)}),0)}function zo(a,b,c){a.google_sa_queue=a.google_sa_queue||[];a.google_sa_impl?c(b):a.google_sa_queue.push(b)} function yo(a,b,c){var d=Math.random()<Q(bf)?hc(qc(b.pb).toString()):null;b=D(c,4)?b.ob:b.qb;d=d?d:hc(qc(b).toString());b={};a:{if(D(c,4)){if(c=a||qn(L)){var e={};c=(e.client=c,e.plah=L.location.host,e);break a}throw Error("PublisherCodeNotFoundForAma");}c={}}Ao(c,b);a:{if(P($e)||P(Oe)){a=a||qn(L);var f;var g=(c=null==(g=U(L))?void 0:null==(f=g.head_tag_slot_vars)?void 0:f.google_ad_host)?c:vo(L);if(a){f={};g=(f.client=a,f.plah=L.location.host,f.ama_t="adsense",f.asntp=Q(Ge),f.asntpv=Q(Ke),f.asntpl= Q(Ie),f.asntpm=Q(Je),f.asntpc=Q(He),f.asna=Q(Ce),f.asnd=Q(De),f.asnp=Q(Ee),f.asns=Q(Fe),f.asmat=Q(Be),f.asptt=Q(Le),f.easpi=P($e),f.asro=P(Me),f.host=g,f.easai=P(Ze),f);break a}}g={}}Ao(g,b);Ao(zf()?{bust:zf()}:{},b);return ec(d,b)}function Ao(a,b){Sc(a,function(c,d){void 0===b[d]&&(b[d]=c)})}function vo(a){if(a=a.document.querySelector('meta[name="google-adsense-platform-account"]'))return a.getAttribute("content")} function Bo(a){a:{var b=void 0===b?!1:b;var c=void 0===c?1024:c;for(var d=[w.top],e=[],f=0,g;g=d[f++];){b&&!Hc(g)||e.push(g);try{if(g.frames)for(var h=0;h<g.frames.length&&d.length<c;++h)d.push(g.frames[h])}catch(l){}}for(b=0;b<e.length;b++)try{var k=e[b].frames.google_esf;if(k){id=k;break a}}catch(l){}id=null}if(id)return null;e=Mc("IFRAME");e.id="google_esf";e.name="google_esf";e.src=sc(a.vb);e.style.display="none";return e} function Co(a,b,c,d){Do(a,b,c,d,function(e,f){e=e.document;for(var g=void 0,h=0;!g||e.getElementById(g+"_anchor");)g="aswift_"+h++;e=g;g=Number(f.google_ad_width||0);f=Number(f.google_ad_height||0);h=Mc("INS");h.id=e+"_anchor";pm(h,g,f);h.style.display="block";var k=Mc("INS");k.id=e+"_expand";pm(k,g,f);k.style.display="inline-table";k.appendChild(h);c.appendChild(k);return e})} function Do(a,b,c,d,e){e=e(a,b);Eo(a,c,b);c=Ia;var f=(new Date).getTime();b.google_lrv=I(d,2);b.google_async_iframe_id=e;b.google_start_time=c;b.google_bpp=f>c?f-c:1;a.google_sv_map=a.google_sv_map||{};a.google_sv_map[e]=b;d=a.document.getElementById(e+"_anchor")?function(h){return h()}:function(h){return window.setTimeout(h,0)};var g={pubWin:a,vars:b};zo(a,function(){var h=a.google_sa_impl(g);h&&h.catch&&Zi(911,h)},d)} function Eo(a,b,c){var d=c.google_ad_output,e=c.google_ad_format,f=c.google_ad_width||0,g=c.google_ad_height||0;e||"html"!=d&&null!=d||(e=f+"x"+g);d=!c.google_ad_slot||c.google_override_format||!qm[c.google_ad_width+"x"+c.google_ad_height]&&"aa"==c.google_loader_used;e&&d?e=e.toLowerCase():e="";c.google_ad_format=e;if("number"!==typeof c.google_reactive_sra_index||!c.google_ad_unit_key){e=[c.google_ad_slot,c.google_orig_ad_format||c.google_ad_format,c.google_ad_type,c.google_orig_ad_width||c.google_ad_width, c.google_orig_ad_height||c.google_ad_height];d=[];f=0;for(g=b;g&&25>f;g=g.parentNode,++f)9===g.nodeType?d.push(""):d.push(g.id);(d=d.join())&&e.push(d);c.google_ad_unit_key=Tc(e.join(":")).toString();var h=void 0===h?!1:h;e=[];for(d=0;b&&25>d;++d){f="";void 0!==h&&h||(f=(f=9!==b.nodeType&&b.id)?"/"+f:"");a:{if(b&&b.nodeName&&b.parentElement){g=b.nodeName.toString().toLowerCase();for(var k=b.parentElement.childNodes,l=0,m=0;m<k.length;++m){var q=k[m];if(q.nodeName&&q.nodeName.toString().toLowerCase()=== g){if(b===q){g="."+l;break a}++l}}}g=""}e.push((b.nodeName&&b.nodeName.toString().toLowerCase())+f+g);b=b.parentElement}h=e.join()+":";b=[];if(a)try{var t=a.parent;for(e=0;t&&t!==a&&25>e;++e){var y=t.frames;for(d=0;d<y.length;++d)if(a===y[d]){b.push(d);break}a=t;t=a.parent}}catch(F){}c.google_ad_dom_fingerprint=Tc(h+b.join()).toString()}}function Fo(){var a=Ic(w);a&&(a=Uf(a),a.tagSpecificState[1]||(a.tagSpecificState[1]={debugCard:null,debugCardRequested:!1}))} function Go(a){Xn();Yn(Wk(),I(a,8))||Xi(779,function(){var b=window;b=void 0===b?window:b;b=P(b.PeriodicSyncManager?rf:sf);var c=P(uf);b=new Vn(!0,b,c);0<Q(xf)?L.google_trust_token_operation_promise=co(b):co(b)})();a=to();null!=a&&a.then(function(b){L.google_user_agent_client_hint=Lb(b)});wn();un()};function Ho(a,b){switch(a){case "google_reactive_ad_format":return a=parseInt(b,10),isNaN(a)?0:a;case "google_allow_expandable_ads":return/^true$/.test(b);default:return b}} function Io(a,b){if(a.getAttribute("src")){var c=a.getAttribute("src")||"";(c=Gc(c))&&(b.google_ad_client=Ho("google_ad_client",c))}a=a.attributes;c=a.length;for(var d=0;d<c;d++){var e=a[d];if(/data-/.test(e.name)){var f=Ja(e.name.replace("data-matched-content","google_content_recommendation").replace("data","google").replace(/-/g,"_"));b.hasOwnProperty(f)||(e=Ho(f,e.value),null!==e&&(b[f]=e))}}} function Jo(a){if(a=ld(a))switch(a.data&&a.data.autoFormat){case "rspv":return 13;case "mcrspv":return 15;default:return 14}else return 12} function Ko(a,b,c,d){Io(a,b);if(c.document&&c.document.body&&!Zm(c,b)&&!b.google_reactive_ad_format){var e=parseInt(a.style.width,10),f=cn(a,c);if(0<f&&e>f){var g=parseInt(a.style.height,10);e=!!qm[e+"x"+g];var h=f;if(e){var k=rm(f,g);if(k)h=k,b.google_ad_format=k+"x"+g+"_0ads_al";else throw new T("No slot size for availableWidth="+f);}b.google_ad_resize=!0;b.google_ad_width=h;e||(b.google_ad_format=null,b.google_override_format=!0);f=h;a.style.width=f+"px";g=Tm(f,"auto",c,a,b);h=f;g.size().i(c,b, a);Dm(g,h,b);g=g.size();b.google_responsive_formats=null;g.minWidth()>f&&!e&&(b.google_ad_width=g.minWidth(),a.style.width=g.minWidth()+"px")}}e=a.offsetWidth||xi(a,c,"width",K)||b.google_ad_width||0;f=Fa(Tm,e,"auto",c,a,b,!1,!0);if(!P(Xe)&&488>Wf(c)){g=Ic(c)||c;h=b.google_ad_client;d=g.location&&"#ftptohbh"===g.location.hash?2:yl(g.location,"google_responsive_slot_preview")||P(ef)?1:P(df)?2:Yk(g,1,h,d)?1:0;if(g=0!==d)b:if(b.google_reactive_ad_format||Zm(c,b)||mi(a,b))g=!1;else{for(g=a;g;g=g.parentElement){h= Nc(g,c);if(!h){b.gfwrnwer=18;g=!1;break b}if(!Xa(["static","relative"],h.position)){b.gfwrnwer=17;g=!1;break b}}g=qi(c,a,e,.3,b);!0!==g?(b.gfwrnwer=g,g=!1):g=c===c.top?!0:!1}g?(b.google_resizing_allowed=!0,b.ovlp=!0,2===d?(d={},Dm(f(),e,d),b.google_resizing_width=d.google_ad_width,b.google_resizing_height=d.google_ad_height,b.iaaso=!1):(b.google_ad_format="auto",b.iaaso=!0,b.armr=1),d=!0):d=!1}else d=!1;if(e=Zm(c,b))an(e,a,b,c,d);else{if(mi(a,b)){if(d=Nc(a,c))a.style.width=d.width,a.style.height= d.height,li(d,b);b.google_ad_width||(b.google_ad_width=a.offsetWidth);b.google_ad_height||(b.google_ad_height=a.offsetHeight);b.google_loader_features_used=256;b.google_responsive_auto_format=Jo(c)}else li(a.style,b);c.location&&"#gfwmrp"==c.location.hash||12==b.google_responsive_auto_format&&"true"==b.google_full_width_responsive?an(10,a,b,c,!1):.01>Math.random()&&12===b.google_responsive_auto_format&&(a=ri(a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,c,a,b),!0!==a?(b.efwr=!1,b.gfwrnwer= a):b.efwr=!0)}};function Lo(a){this.j=new p.Set;this.u=md()||window;this.h=Q(ze);var b=0<this.h&&Rc()<1/this.h;this.A=(this.i=!!Hj(Dj(),30,b))?fd(this.u):0;this.m=this.i?qn(this.u):"";this.l=null!=a?a:new yg(100)}function Mo(){var a=O(Lo);var b=new qk;b=B(b,1,Vf(a.u).scrollWidth);b=B(b,2,Vf(a.u).scrollHeight);var c=new qk;c=B(c,1,Wf(a.u));c=B(c,2,Vf(a.u).clientHeight);var d=new sk;d=B(d,1,a.A);d=B(d,2,a.m);d=B(d,3,a.h);var e=new rk;b=Eb(e,2,b);b=Eb(b,1,c);b=Fb(d,4,tk,b);a.i&&!a.j.has(1)&&(a.j.add(1),ug(a.l,b))};function No(a){var b=window;var c=void 0===c?null:c;xc(b,"message",function(d){try{var e=JSON.parse(d.data)}catch(f){return}!e||"sc-cnf"!==e.googMsgType||c&&/[:|%3A]javascript\(/i.test(d.data)&&!c(e,d)||a(e,d)})};function Oo(a,b){b=void 0===b?500:b;Mj.call(this);this.i=a;this.ta=b;this.h=null;this.m={};this.l=null}v(Oo,Mj);Oo.prototype.j=function(){this.m={};this.l&&(yc(this.i,this.l),delete this.l);delete this.m;delete this.i;delete this.h;Mj.prototype.j.call(this)};function Po(a){Mj.call(this);this.h=a;this.i=null;this.l=!1}v(Po,Mj);var Qo=null,Ro=[],So=new p.Map,To=-1;function Uo(a){return Fi.test(a.className)&&"done"!=a.dataset.adsbygoogleStatus}function Vo(a,b,c){a.dataset.adsbygoogleStatus="done";Wo(a,b,c)} function Wo(a,b,c){var d=window;d.google_spfd||(d.google_spfd=Ko);var e=b.google_reactive_ads_config;e||Ko(a,b,d,c);uo(d,b);if(!Xo(a,b,d)){e||(d.google_lpabyc=ni(a,d)+xi(a,d,"height",K));if(e){e=e.page_level_pubvars||{};if(U(L).page_contains_reactive_tag&&!U(L).allow_second_reactive_tag){if(e.pltais){wl(!1);return}throw new T("Only one 'enable_page_level_ads' allowed per page.");}U(L).page_contains_reactive_tag=!0;wl(7===e.google_pgb_reactive)}b.google_unique_id=od(d);Sc(mn,function(f,g){b[g]=b[g]|| d[g]});b.google_loader_used="aa";b.google_reactive_tag_first=1===(U(L).first_tag_on_page||0);Wi(164,function(){Co(d,b,a,c)})}} function Xo(a,b,c){var d=b.google_reactive_ads_config,e="string"===typeof a.className&&RegExp("(\\W|^)adsbygoogle-noablate(\\W|$)").test(a.className),f=ul(c);if(f&&f.Fa&&"on"!=b.google_adtest&&!e){e=ni(a,c);var g=Vf(c).clientHeight;if(!f.qa||f.qa&&((0==g?null:e/g)||0)>=f.qa)return a.className+=" adsbygoogle-ablated-ad-slot",c=c.google_sv_map=c.google_sv_map||{},d=za(a),b.google_element_uid=d,c[b.google_element_uid]=b,a.setAttribute("google_element_uid",d),"slot"==f.tb&&(null!==Zc(a.getAttribute("width"))&& a.setAttribute("width",0),null!==Zc(a.getAttribute("height"))&&a.setAttribute("height",0),a.style.width="0px",a.style.height="0px"),!0}if((f=Nc(a,c))&&"none"==f.display&&!("on"==b.google_adtest||0<b.google_reactive_ad_format||d))return c.document.createComment&&a.appendChild(c.document.createComment("No ad requested because of display:none on the adsbygoogle tag")),!0;a=null==b.google_pgb_reactive||3===b.google_pgb_reactive;return 1!==b.google_reactive_ad_format&&8!==b.google_reactive_ad_format|| !a?!1:(w.console&&w.console.warn("Adsbygoogle tag with data-reactive-ad-format="+b.google_reactive_ad_format+" is deprecated. Check out page-level ads at https://www.google.com/adsense"),!0)}function Yo(a){var b=document.getElementsByTagName("INS");for(var c=0,d=b[c];c<b.length;d=b[++c]){var e=d;if(Uo(e)&&"reserved"!=e.dataset.adsbygoogleStatus&&(!a||d.id==a))return d}return null} function Zo(a,b,c){if(a&&a.shift)for(var d=20;0<a.length&&0<d;){try{$o(a.shift(),b,c)}catch(e){setTimeout(function(){throw e;})}--d}}function ap(){var a=Mc("INS");a.className="adsbygoogle";a.className+=" adsbygoogle-noablate";bd(a);return a} function bp(a,b){var c={};Sc(Rf,function(f,g){!1===a.enable_page_level_ads?c[g]=!1:a.hasOwnProperty(g)&&(c[g]=a[g])});ya(a.enable_page_level_ads)&&(c.page_level_pubvars=a.enable_page_level_ads);var d=ap();hd.body.appendChild(d);var e={};e=(e.google_reactive_ads_config=c,e.google_ad_client=a.google_ad_client,e);e.google_pause_ad_requests=!!U(L).pause_ad_requests;Vo(d,e,b)} function cp(a,b){function c(){return bp(a,b)}Uf(w).wasPlaTagProcessed=!0;var d=w.document;if(d.body||"complete"==d.readyState||"interactive"==d.readyState)c();else{var e=wc(Xi(191,c));xc(d,"DOMContentLoaded",e);(new w.MutationObserver(function(f,g){d.body&&(e(),g.disconnect())})).observe(d,{childList:!0,subtree:!0})}} function $o(a,b,c){var d={};Wi(165,function(){dp(a,d,b,c)},function(e){e.client=e.client||d.google_ad_client||a.google_ad_client;e.slotname=e.slotname||d.google_ad_slot;e.tag_origin=e.tag_origin||d.google_tag_origin})}function ep(a){delete a.google_checked_head;Sc(a,function(b,c){Ei[c]||(delete a[c],w.console.warn("AdSense head tag doesn't support "+c.replace("google","data").replace(/_/g,"-")+" attribute."))})} function fp(a,b){var c=L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js?client="]:not([data-checked-head])')||L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js"][data-ad-client]:not([data-checked-head])');if(c){c.setAttribute("data-checked-head","true");var d=U(window);if(d.head_tag_slot_vars)gp(c);else{var e={};Io(c,e);ep(e);var f=$b(e);d.head_tag_slot_vars=f;c={google_ad_client:e.google_ad_client,enable_page_level_ads:e};L.adsbygoogle||(L.adsbygoogle=[]);d=L.adsbygoogle; d.loaded?d.push(c):d.splice(0,0,c);var g;e.google_adbreak_test||(null==(g=Ib(b,Fk,13,Uk))?0:D(g,3))&&P(jf)?hp(f,a):No(function(){hp(f,a)})}}}function gp(a){var b=U(window).head_tag_slot_vars,c=a.getAttribute("src")||"";if((a=Gc(c)||a.getAttribute("data-ad-client")||"")&&a!==b.google_ad_client)throw new T("Warning: Do not add multiple property codes with AdSense tag to avoid seeing unexpected behavior. These codes were found on the page "+a+", "+b.google_ad_client);} function ip(a){if("object"===typeof a&&null!=a){if("string"===typeof a.type)return 2;if("string"===typeof a.sound||"string"===typeof a.preloadAdBreaks)return 3}return 0} function dp(a,b,c,d){if(null==a)throw new T("push() called with no parameters.");14===Cb(d,Uk)&&jp(a,wb(Tk(d),1),I(d,2));var e=ip(a);if(0!==e)P(af)&&(d=xl(),d.first_slotcar_request_processing_time||(d.first_slotcar_request_processing_time=Date.now(),d.adsbygoogle_execution_start_time=Ia)),null==Qo?(kp(a),Ro.push(a)):3===e?Wi(787,function(){Qo.handleAdConfig(a)}):Zi(730,Qo.handleAdBreak(a));else{Ia=(new Date).getTime();wo(c,d,lp(a));mp();a:{if(void 0!=a.enable_page_level_ads){if("string"===typeof a.google_ad_client){e= !0;break a}throw new T("'google_ad_client' is missing from the tag config.");}e=!1}if(e)np(a,d);else if((e=a.params)&&Sc(e,function(g,h){b[h]=g}),"js"===b.google_ad_output)console.warn("Ads with google_ad_output='js' have been deprecated and no longer work. Contact your AdSense account manager or switch to standard AdSense ads.");else{e=op(a.element);Io(e,b);c=U(w).head_tag_slot_vars||{};Sc(c,function(g,h){b.hasOwnProperty(h)||(b[h]=g)});if(e.hasAttribute("data-require-head")&&!U(w).head_tag_slot_vars)throw new T("AdSense head tag is missing. AdSense body tags don't work without the head tag. You can copy the head tag from your account on https://adsense.com."); if(!b.google_ad_client)throw new T("Ad client is missing from the slot.");b.google_apsail=dl(b.google_ad_client);var f=(c=0===(U(L).first_tag_on_page||0)&&Fl(b))&&Gl(c);c&&!f&&(np(c,d),U(L).skip_next_reactive_tag=!0);0===(U(L).first_tag_on_page||0)&&(U(L).first_tag_on_page=2);b.google_pause_ad_requests=!!U(L).pause_ad_requests;Vo(e,b,d);c&&f&&pp(c)}}}var qp=!1;function jp(a,b,c){P(Ye)&&!qp&&(qp=!0,a=lp(a)||qn(L),Yi("predictive_abg",{a_c:a,p_c:b,b_v:c},.01))} function lp(a){return a.google_ad_client?a.google_ad_client:(a=a.params)&&a.google_ad_client?a.google_ad_client:""}function mp(){if(P(Re)){var a=ul(L);if(!(a=a&&a.Fa)){try{var b=L.localStorage}catch(c){b=null}b=b?zj(b):null;a=!(b&&Ck(b)&&b)}a||vl(L,1)}}function pp(a){gd(function(){Uf(w).wasPlaTagProcessed||w.adsbygoogle&&w.adsbygoogle.push(a)})} function np(a,b){if(U(L).skip_next_reactive_tag)U(L).skip_next_reactive_tag=!1;else{0===(U(L).first_tag_on_page||0)&&(U(L).first_tag_on_page=1);if(a.tag_partner){var c=a.tag_partner,d=U(w);d.tag_partners=d.tag_partners||[];d.tag_partners.push(c)}U(L).ama_ran_on_page||Il(new Hl(a,b));cp(a,b)}} function op(a){if(a){if(!Uo(a)&&(a.id?a=Yo(a.id):a=null,!a))throw new T("'element' has already been filled.");if(!("innerHTML"in a))throw new T("'element' is not a good DOM element.");}else if(a=Yo(),!a)throw new T("All ins elements in the DOM with class=adsbygoogle already have ads in them.");return a} function rp(){var a=new Oj(L),b=new Oo(L),c=new Po(L),d=L.__cmp?1:0;a=Pj(a)?1:0;var e,f;(f="function"===typeof(null==(e=b.i)?void 0:e.__uspapi))||(b.h?b=b.h:(b.h=$c(b.i,"__uspapiLocator"),b=b.h),f=null!=b);c.l||(c.i||(c.i=c.h.googlefc?c.h:$c(c.h,"googlefcPresent")),c.l=!0);Yi("cmpMet",{tcfv1:d,tcfv2:a,usp:f?1:0,fc:c.i?1:0,ptt:9},Q(ye))}function sp(a){a={value:D(a,16)};var b=.01;Q(Te)&&(a.eid=Q(Te),b=1);a.frequency=b;Yi("new_abg_tag",a,b)}function tp(a){Dj().S[Fj(26)]=!!Number(a)} function up(a){Number(a)?U(L).pause_ad_requests=!0:(U(L).pause_ad_requests=!1,a=function(){if(!U(L).pause_ad_requests){var b=void 0===b?{}:b;if("function"===typeof window.CustomEvent)var c=new CustomEvent("adsbygoogle-pub-unpause-ad-requests-event",b);else c=document.createEvent("CustomEvent"),c.initCustomEvent("adsbygoogle-pub-unpause-ad-requests-event",!!b.bubbles,!!b.cancelable,b.detail);L.dispatchEvent(c)}},w.setTimeout(a,0),w.setTimeout(a,1E3))} function vp(a){Yi("adsenseGfpKnob",{value:a,ptt:9},.1);switch(a){case 0:case 2:a=!0;break;case 1:a=!1;break;default:throw Error("Illegal value of cookieOptions: "+a);}L._gfp_a_=a}function wp(a){a&&a.call&&"function"===typeof a&&window.setTimeout(a,0)} function hp(a,b){b=Dl(ec(hc(qc(b.sb).toString()),zf()?{bust:zf()}:{})).then(function(c){null==Qo&&(c.init(a),Qo=c,xp())});Zi(723,b);r(b,"finally").call(b,function(){Ro.length=0;Yi("slotcar",{event:"api_ld",time:Date.now()-Ia,time_pr:Date.now()-To})})} function xp(){for(var a=u(r(So,"keys").call(So)),b=a.next();!b.done;b=a.next()){b=b.value;var c=So.get(b);-1!==c&&(w.clearTimeout(c),So.delete(b))}a={};for(b=0;b<Ro.length;a={fa:a.fa,ba:a.ba},b++)So.has(b)||(a.ba=Ro[b],a.fa=ip(a.ba),Wi(723,function(d){return function(){3===d.fa?Qo.handleAdConfig(d.ba):2===d.fa&&Zi(730,Qo.handleAdBreakBeforeReady(d.ba))}}(a)))} function kp(a){var b=Ro.length;if(2===ip(a)&&"preroll"===a.type&&null!=a.adBreakDone){-1===To&&(To=Date.now());var c=w.setTimeout(function(){try{(0,a.adBreakDone)({breakType:"preroll",breakName:a.name,breakFormat:"preroll",breakStatus:"timeout"}),So.set(b,-1),Yi("slotcar",{event:"pr_to",source:"adsbygoogle"})}catch(d){console.error("[Ad Placement API] adBreakDone callback threw an error:",d instanceof Error?d:Error(String(d)))}},1E3*Q(kf));So.set(b,c)}} function yp(){if(P(Ne)&&!P(Me)){var a=L.document,b=a.createElement("LINK"),c=nd(Ml);if(c instanceof cc||c instanceof mc)b.href=sc(c);else{if(-1===tc.indexOf("stylesheet"))throw Error('TrustedResourceUrl href attribute required with rel="stylesheet"');b.href=rc(c)}b.rel="stylesheet";a.head.appendChild(b)}};(function(a,b,c,d){d=void 0===d?function(){}:d;Ui.Ua($i);Wi(166,function(){var e=sn(b);jn(I(e,2));Xk(D(e,6));d();kd(16,[1,e.toJSON()]);var f=md(ld(L))||L,g=c(kn({eb:a,nb:I(e,2)}),e);P(cf)&&al(f,e);om(f,e,null===L.document.currentScript?1:Ol(g.ub));Mo();if((!Na()||0<=Ka(Qa(),11))&&(null==(L.Prototype||{}).Version||!P(We))){Vi(P(qf));Go(e);ok();try{Mn()}catch(q){}Fo();fp(g,e);f=window;var h=f.adsbygoogle;if(!h||!h.loaded){if(P(Se)&&!D(e,16))try{if(L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js?client="]'))return}catch(q){}yp(); sp(e);Q(ye)&&rp();var k={push:function(q){$o(q,g,e)},loaded:!0};try{Object.defineProperty(k,"requestNonPersonalizedAds",{set:tp}),Object.defineProperty(k,"pauseAdRequests",{set:up}),Object.defineProperty(k,"cookieOptions",{set:vp}),Object.defineProperty(k,"onload",{set:wp})}catch(q){}if(h)for(var l=u(["requestNonPersonalizedAds","pauseAdRequests","cookieOptions"]),m=l.next();!m.done;m=l.next())m=m.value,void 0!==h[m]&&(k[m]=h[m]);"_gfp_a_"in window||(window._gfp_a_=!0);Zo(h,g,e);f.adsbygoogle=k;h&& (k.onload=h.onload);(f=Bo(g))&&document.documentElement.appendChild(f)}}})})("m202204040101",rn,function(a,b){var c=2012<C(b,1,0)?"_fy"+C(b,1,0):"",d=I(b,3),e=I(b,2);b=nd(dn,a,c);d=nd(en,e,d);return{sb:b,qb:nd(fn,a,c),ob:nd(gn,a,c),pb:nd(hn,a,c),vb:d,ub:/^(?:https?:)?\/\/(?:pagead2\.googlesyndication\.com|securepubads\.g\.doubleclick\.net)\/pagead\/(?:js\/)?(?:show_ads|adsbygoogle)\.js(?:[?#].*)?$/}}); }).call(this,"[2019,\"r20220406\",\"r20190131\",null,null,null,null,\".google.co.uz\",null,null,null,[[[1082,null,null,[1]],[null,62,null,[null,0.001]],[383,null,null,[1]],[null,1130,null,[null,100]],[null,1126,null,[null,5000]],[1132,null,null,[1]],[1131,null,null,[1]],[null,1142,null,[null,2]],[null,1165,null,[null,1000]],[null,1114,null,[null,1]],[null,1116,null,[null,300]],[null,1117,null,[null,100]],[null,1115,null,[null,1]],[null,1159,null,[null,500]],[1145,null,null,[1]],[1021,null,null,[1]],[null,66,null,[null,-1]],[null,65,null,[null,-1]],[1087,null,null,[1]],[1053,null,null,[1]],[1100,null,null,[1]],[1102,null,null,[1]],[1149,null,null,[1]],[null,1072,null,[null,0.75]],[1101,null,null,[1]],[1036,null,null,[1]],[null,1085,null,[null,5]],[null,63,null,[null,30]],[null,1080,null,[null,5]],[1054,null,null,[1]],[null,1027,null,[null,10]],[null,57,null,[null,120]],[null,1079,null,[null,5]],[null,1050,null,[null,30]],[null,58,null,[null,120]],[381914117,null,null,[1]],[null,null,null,[null,null,null,[\"A8FHS1NmdCwGqD9DwOicnHHY+y27kdWfxKa0YHSGDfv0CSpDKRHTQdQmZVPDUdaFWUsxdgVxlwAd6o+dhJykPA0AAACWeyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\",\"A8zdXi6dr1hwXEUjQrYiyYQGlU3557y5QWDnN0Lwgj9ePt66XMEvNkVWOEOWPd7TP9sBQ25X0Q15Lr1Nn4oGFQkAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\",\"A4\/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme\/J33Q\/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\"]],null,1934],[1953,null,null,[1]],[1947,null,null,[1]],[434462125,null,null,[1]],[1938,null,null,[1]],[1948,null,null,[1]],[392736476,null,null,[1]],[null,null,null,[null,null,null,[\"AxujKG9INjsZ8\/gUq8+dTruNvk7RjZQ1oFhhgQbcTJKDnZfbzSTE81wvC2Hzaf3TW4avA76LTZEMdiedF1vIbA4AAABueyJvcmlnaW4iOiJodHRwczovL2ltYXNkay5nb29nbGVhcGlzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzVGhpcmRQYXJ0eSI6dHJ1ZX0=\",\"Azuce85ORtSnWe1MZDTv68qpaW3iHyfL9YbLRy0cwcCZwVnePnOmkUJlG8HGikmOwhZU22dElCcfrfX2HhrBPAkAAAB7eyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"A16nvcdeoOAqrJcmjLRpl1I6f3McDD8EfofAYTt\/P\/H4\/AWwB99nxiPp6kA0fXoiZav908Z8etuL16laFPUdfQsAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"AxBHdr0J44vFBQtZUqX9sjiqf5yWZ\/OcHRcRMN3H9TH+t90V\/j3ENW6C8+igBZFXMJ7G3Pr8Dd13632aLng42wgAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"A88BWHFjcawUfKU3lIejLoryXoyjooBXLgWmGh+hNcqMK44cugvsI5YZbNarYvi3roc1fYbHA1AVbhAtuHZflgEAAAB2eyJvcmlnaW4iOiJodHRwczovL2dvb2dsZS5jb206NDQzIiwiZmVhdHVyZSI6IlRydXN0VG9rZW5zIiwiZXhwaXJ5IjoxNjUyNzc0NDAwLCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ==\"]],null,1932],[null,397907552,null,[null,500]],[432938498,null,null,[1]]],[[10,[[1,[[21066108],[21066109,[[316,null,null,[1]]]]],null,null,null,34,18,1],[1,[[21066110],[21066111]],null,null,null,34,18,1],[1,[[42530528],[42530529,[[368,null,null,[1]]]],[42530530,[[369,null,null,[1]],[368,null,null,[1]]]]]],[1,[[42531496],[42531497,[[1161,null,null,[1]]]]]],[1,[[42531513],[42531514,[[316,null,null,[1]]]]]],[1,[[44719338],[44719339,[[334,null,null,[1]],[null,54,null,[null,100]],[null,66,null,[null,10]],[null,65,null,[null,1000]]]]]],[200,[[44760474],[44760475,[[1129,null,null,[1]]]]]],[10,[[44760911],[44760912,[[1160,null,null,[1]]]]]],[100,[[44761043],[44761044]]],[1,[[44752536,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44753656]]],[null,[[44755592],[44755593,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44755594,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44755653,[[1122,null,null,[1]],[1033,null,null,[1]]]]]],[10,[[44762453],[44762454,[[1122,null,null,[1]],[1033,null,null,[1]]]]]],[20,[[182982000,[[218,null,null,[1]]],[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]],[182982100,[[217,null,null,[1]]],[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]]],null,null,null,36,8,1],[20,[[182982200,null,[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]],[182982300,null,[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]]],null,null,null,36,8,1],[10,[[182984000,null,[4,null,23,null,null,null,null,[\"1\"]]],[182984100,[[218,null,null,[1]]],[4,null,23,null,null,null,null,[\"1\"]]]],null,null,null,36,10,101],[10,[[182984200,null,[4,null,23,null,null,null,null,[\"1\"]]],[182984300,null,[4,null,23,null,null,null,null,[\"1\"]]]],null,null,null,36,10,101],[10,[[21066428],[21066429]]],[10,[[21066430],[21066431],[21066432],[21066433]],null,null,null,44,22],[10,[[21066434],[21066435]],null,null,null,44,null,500],[10,[[31065342],[31065343,[[1147,null,null,[1]]]]]],[50,[[31065544],[31065545,[[1154,null,null,[1]]]]]],[50,[[31065741],[31065742,[[1134,null,null,[1]]]]]],[1,[[31065944,[[null,1103,null,[null,31065944]],[1121,null,null,[1]],[null,1119,null,[null,300]]]],[31065945,[[null,1103,null,[null,31065945]],[1121,null,null,[1]],[1143,null,null,[1]],[null,1119,null,[null,300]]]],[31065946,[[null,1103,null,[null,31065946]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065950,[[null,1103,null,[null,31065950]],[null,1114,null,[null,0.9]],[null,1112,null,[null,5]],[null,1113,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065951,[[null,1103,null,[null,31065951]],[null,1114,null,[null,0.9]],[null,1110,null,[null,1]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065952,[[null,1103,null,[null,31065952]],[null,1114,null,[null,0.9]],[null,1110,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065953,[[null,1103,null,[null,31065953]],[null,1114,null,[null,0.9]],[null,1110,null,[null,5]],[null,1111,null,[null,5]],[null,1112,null,[null,5]],[null,1113,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44762492,[[null,1103,null,[null,44762492]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1106,null,[null,10]],[null,1107,null,[null,10]],[null,1105,null,[null,10]],[null,1115,null,[null,-1]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[6,null,null,3,null,2],49],[1,[[31066496,[[null,1103,null,[null,31066496]],[1121,null,null,[1]],[null,1119,null,[null,300]]]],[31066497,[[null,1158,null,[null,45]],[null,1157,null,[null,400]],[null,1103,null,[null,31066497]],[null,1114,null,[null,-1]],[null,1104,null,[null,100]],[null,1106,null,[null,10]],[null,1107,null,[null,10]],[null,1105,null,[null,10]],[null,1115,null,[null,-1]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1162,null,null,[1]],[1155,null,null,[1]],[1120,null,null,[1]]]]],null,49],[1000,[[31067051,[[null,null,14,[null,null,\"31067051\"]]],[6,null,null,null,6,null,\"31067051\"]],[31067052,[[null,null,14,[null,null,\"31067052\"]]],[6,null,null,null,6,null,\"31067052\"]]],[4,null,55]],[1000,[[31067063,[[null,null,14,[null,null,\"31067063\"]]],[6,null,null,null,6,null,\"31067063\"]],[31067064,[[null,null,14,[null,null,\"31067064\"]]],[6,null,null,null,6,null,\"31067064\"]]],[4,null,55]],[10,[[31067067],[31067068,[[1148,null,null,[1]]]]]],[1000,[[31067083,[[null,null,14,[null,null,\"31067083\"]]],[6,null,null,null,6,null,\"31067083\"]],[31067084,[[null,null,14,[null,null,\"31067084\"]]],[6,null,null,null,6,null,\"31067084\"]]],[4,null,55]],[1,[[44736076],[44736077,[[null,1046,null,[null,0.1]]]]]],[1,[[44761631,[[null,1103,null,[null,44761631]]]],[44761632,[[null,1103,null,[null,44761632]],[1143,null,null,[1]]]],[44761633,[[null,1142,null,[null,2]],[null,1103,null,[null,44761633]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761634,[[null,1142,null,[null,2]],[null,1103,null,[null,44761634]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761635,[[null,1142,null,[null,2]],[null,1103,null,[null,44761635]],[null,1114,null,[null,0.9]],[null,1106,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761636,[[null,1142,null,[null,2]],[null,1103,null,[null,44761636]],[null,1114,null,[null,0.9]],[null,1107,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761637,[[null,1142,null,[null,2]],[null,1103,null,[null,44761637]],[null,1114,null,[null,0.9]],[null,1105,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44762110,[[null,1142,null,[null,2]],[null,1103,null,[null,44762110]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,-1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[6,null,null,3,null,2],49],[500,[[44761838,[[null,1142,null,[null,2]],[null,1103,null,[null,44761838]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,-1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[2,[[6,null,null,3,null,2],[12,null,null,null,2,null,\"smitmehta\\\\.com\/\"]]],49],[null,[[44762338],[44762339,[[380254521,null,null,[1]]]]],[1,[[4,null,63]]],null,null,56],[150,[[31061760],[31063913,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31065341,[[1150,null,null,[1]],[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[50,[[31061761,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31062202,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31063912],[44756455,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[null,[[31063202,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[null,[[44753753,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15]]],[20,[[50,[[31062930],[31062931,[[380025941,null,null,[1]]]]],null,null,null,null,null,101,null,102]]],[13,[[10,[[44759847],[44759848,[[1947,null,null,[]]]]]],[10,[[44759849],[44759850]]],[1,[[31065824],[31065825,[[424117738,null,null,[1]]]]]],[10,[[31066184],[31066185,[[436251930,null,null,[1]]]]]],[1000,[[21067496]],[4,null,9,null,null,null,null,[\"document.hasTrustToken\"]]],[1000,[[31060475,null,[2,[[1,[[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]],[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]]]]]]],[500,[[31061692],[31061693,[[77,null,null,[1]],[78,null,null,[1]],[85,null,null,[1]],[80,null,null,[1]],[76,null,null,[1]]]]],[4,null,6,null,null,null,null,[\"31061691\"]]],[1,[[31062890],[31062891,[[397841828,null,null,[1]]]]]],[1,[[31062946]],[4,null,27,null,null,null,null,[\"document.prerendering\"]]],[1,[[31062947]],[1,[[4,null,27,null,null,null,null,[\"document.prerendering\"]]]]],[50,[[31064018],[31064019,[[1961,null,null,[1]]]]]],[1,[[31065981,null,[2,[[6,null,null,3,null,0],[12,null,null,null,4,null,\"Chrome\/(9[23456789]|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,27,null,null,null,null,[\"crossOriginIsolated\"]]]]]]]]],[11,[[10,[[44760494],[44760495,[[1957,null,null,[1]]]]],null,48],[1,[[44760496],[44760497,[[1957,null,null,[1]]]],[44760498,[[1957,null,null,[1]]]]],null,48],[2,[[44761535],[44761536,[[1957,null,null,[1]],[1963,null,null,[1]]]],[44761537,[[1957,null,null,[1]],[1964,null,null,[1]]]],[44761538,[[1957,null,null,[1]],[1965,null,null,[1]]]],[44761539,[[1957,null,null,[1]]]]],null,48]]],[17,[[10,[[31060047]],null,null,null,44,null,900],[10,[[31060048],[31060049]],null,null,null,null,null,null,null,101],[10,[[31060566]]]]],[12,[[50,[[31061828],[31061829,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]],[360245597,null,null,[1]],[null,494,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]]]],[31065659,[[1150,null,null,[1]],[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,10000]],[427841102,null,null,[1]],[360245597,null,null,[1]],[null,494,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]]]],[31065787]],null,15],[20,[[21065724],[21065725,[[203,null,null,[1]]]]],[4,null,9,null,null,null,null,[\"LayoutShift\"]]],[50,[[31060006,null,[2,[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[12,null,null,null,4,null,\"Chrome\/(89|9\\\\d|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]]],[31060007,[[1928,null,null,[1]]],[2,[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[12,null,null,null,4,null,\"Chrome\/(89|9\\\\d|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]]]],null,21],[10,[[31060032],[31060033,[[1928,null,null,[1]]]]],null,21],[10,[[31061690],[31061691,[[83,null,null,[1]],[84,null,null,[1]]]]]],[1,[[31065721],[31065722,[[432946749,null,null,[1]]]]]]]]],null,null,[0.001,\"1000\",1,\"1000\"]],[null,[]],null,null,1,\"github.com\",309779023,[44759876,44759927,44759842]]");
aiaudit-org / Raw2logitIn order to control processing-induced dataset drift we require two ingredients: raw sensor data and an image processing model. This code repository contains the materials for the second ingredient, the image processing models, as well as scripts to load data and run experiments. https://arxiv.org/abs/2211.02578
z8rdq / Z8rdq# Shadowrocket: 2021-04-10 03:41:08 [General] bypass-system = true skip-proxy = 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12, localhost, *.local, captive.apple.com tun-excluded-routes = 10.0.0.0/8, 100.64.0.0/10, 127.0.0.0/8, 169.254.0.0/16, 172.16.0.0/12, 192.0.0.0/24, 192.0.2.0/24, 192.88.99.0/24, 192.168.0.0/16, 198.18.0.0/15, 198.51.100.0/24, 203.0.113.0/24, 224.0.0.0/4, 255.255.255.255/32 dns-server = system ipv6 = false update-url = https://raw.githubusercontent.com/iSteal-it/script/main/shadowrocket.configuration [Rule] DOMAIN-SUFFIX,baidu.com,DIRECT DOMAIN-SUFFIX,baidubcr.com,DIRECT DOMAIN-SUFFIX,bdstatic.com,DIRECT DOMAIN-SUFFIX,yunjiasu-cdn.net,DIRECT DOMAIN-SUFFIX,taobao.com,DIRECT DOMAIN-SUFFIX,alicdn.com,DIRECT DOMAIN,blzddist1-a.akamaihd.net,DIRECT DOMAIN,cdn.angruo.com,DIRECT DOMAIN,download.jetbrains.com,DIRECT DOMAIN,file-igamecj.akamaized.net,DIRECT DOMAIN,images-cn.ssl-images-amazon.com,DIRECT DOMAIN,officecdn-microsoft-com.akamaized.net,DIRECT DOMAIN,speedtest.macpaw.com,DIRECT DOMAIN-SUFFIX,126.net,DIRECT DOMAIN-SUFFIX,127.net,DIRECT DOMAIN-SUFFIX,163.com,DIRECT DOMAIN-SUFFIX,163yun.com,DIRECT DOMAIN-SUFFIX,21cn.com,DIRECT DOMAIN-SUFFIX,343480.com,DIRECT DOMAIN-SUFFIX,360buyimg.com,DIRECT DOMAIN-SUFFIX,360in.com,DIRECT DOMAIN-SUFFIX,51ym.me,DIRECT DOMAIN-SUFFIX,71.am.com,DIRECT DOMAIN-SUFFIX,8686c.com,DIRECT DOMAIN-SUFFIX,abchina.com,DIRECT DOMAIN-SUFFIX,accuweather.com,DIRECT DOMAIN-SUFFIX,acgvideo.com,DIRECT DOMAIN-SUFFIX,acm.org,DIRECT DOMAIN-SUFFIX,acs.org,DIRECT DOMAIN-SUFFIX,aicoinstorge.com,DIRECT DOMAIN-SUFFIX,aip.org,DIRECT DOMAIN-SUFFIX,air-matters.com,DIRECT DOMAIN-SUFFIX,air-matters.io,DIRECT DOMAIN-SUFFIX,aixifan.com,DIRECT DOMAIN-SUFFIX,akadns.net,DIRECT DOMAIN-SUFFIX,alibaba.com,DIRECT DOMAIN-SUFFIX,alikunlun.com,DIRECT DOMAIN-SUFFIX,alipay.com,DIRECT DOMAIN-SUFFIX,amap.com,DIRECT DOMAIN-SUFFIX,amd.com,DIRECT DOMAIN-SUFFIX,ams.org,DIRECT DOMAIN-SUFFIX,animebytes.tv,DIRECT DOMAIN-SUFFIX,annualreviews.org,DIRECT DOMAIN-SUFFIX,aps.org,DIRECT DOMAIN-SUFFIX,ascelibrary.org,DIRECT DOMAIN-SUFFIX,asm.org,DIRECT DOMAIN-SUFFIX,asme.org,DIRECT DOMAIN-SUFFIX,astm.org,DIRECT DOMAIN-SUFFIX,autonavi.com,DIRECT DOMAIN-SUFFIX,awesome-hd.me,DIRECT DOMAIN-SUFFIX,b612.net,DIRECT DOMAIN-SUFFIX,baduziyuan.com,DIRECT DOMAIN-SUFFIX,battle.net,DIRECT DOMAIN-SUFFIX,bdatu.com,DIRECT DOMAIN-SUFFIX,beitaichufang.com,DIRECT DOMAIN-SUFFIX,biliapi.com,DIRECT DOMAIN-SUFFIX,biliapi.net,DIRECT DOMAIN-SUFFIX,bilibili.com,DIRECT DOMAIN-SUFFIX,bilibili.tv,DIRECT DOMAIN-SUFFIX,bjango.com,DIRECT DOMAIN-SUFFIX,blizzard.com,DIRECT DOMAIN-SUFFIX,bmj.com,DIRECT DOMAIN-SUFFIX,booking.com,DIRECT DOMAIN-SUFFIX,broadcasthe.net,DIRECT DOMAIN-SUFFIX,bstatic.com,DIRECT DOMAIN-SUFFIX,cailianpress.com,DIRECT DOMAIN-SUFFIX,cambridge.org,DIRECT DOMAIN-SUFFIX,camera360.com,DIRECT DOMAIN-SUFFIX,cas.org,DIRECT DOMAIN-SUFFIX,ccgslb.com,DIRECT DOMAIN-SUFFIX,ccgslb.net,DIRECT DOMAIN-SUFFIX,cctv.com,DIRECT DOMAIN-SUFFIX,cctvpic.com,DIRECT DOMAIN-SUFFIX,chdbits.co,DIRECT DOMAIN-SUFFIX,chinanetcenter.com,DIRECT DOMAIN-SUFFIX,chinaso.com,DIRECT DOMAIN-SUFFIX,chua.pro,DIRECT DOMAIN-SUFFIX,chuimg.com,DIRECT DOMAIN-SUFFIX,chunyu.mobi,DIRECT DOMAIN-SUFFIX,chushou.tv,DIRECT DOMAIN-SUFFIX,clarivate.com,DIRECT DOMAIN-SUFFIX,classix-unlimited.co.uk,DIRECT DOMAIN-SUFFIX,cmbchina.com,DIRECT DOMAIN-SUFFIX,cmbimg.com,DIRECT DOMAIN-SUFFIX,cn,DIRECT DOMAIN-SUFFIX,com-hs-hkdy.com,DIRECT DOMAIN-SUFFIX,ctrip.com,DIRECT DOMAIN-SUFFIX,czybjz.com,DIRECT DOMAIN-SUFFIX,dandanzan.com,DIRECT DOMAIN-SUFFIX,dfcfw.com,DIRECT DOMAIN-SUFFIX,didialift.com,DIRECT DOMAIN-SUFFIX,didiglobal.com,DIRECT DOMAIN-SUFFIX,dingtalk.com,DIRECT DOMAIN-SUFFIX,docschina.org,DIRECT DOMAIN-SUFFIX,douban.com,DIRECT DOMAIN-SUFFIX,doubanio.com,DIRECT DOMAIN-SUFFIX,douyu.com,DIRECT DOMAIN-SUFFIX,duokan.com,DIRECT DOMAIN-SUFFIX,dxycdn.com,DIRECT DOMAIN-SUFFIX,dytt8.net,DIRECT DOMAIN-SUFFIX,eastmoney.com,DIRECT DOMAIN-SUFFIX,ebscohost.com,DIRECT DOMAIN-SUFFIX,emerald.com,DIRECT DOMAIN-SUFFIX,empornium.me,DIRECT DOMAIN-SUFFIX,engineeringvillage.com,DIRECT DOMAIN-SUFFIX,eudic.net,DIRECT DOMAIN-SUFFIX,feiliao.com,DIRECT DOMAIN-SUFFIX,feng.com,DIRECT DOMAIN-SUFFIX,fengkongcloud.com,DIRECT DOMAIN-SUFFIX,fjhps.com,DIRECT DOMAIN-SUFFIX,frdic.com,DIRECT DOMAIN-SUFFIX,futu5.com,DIRECT DOMAIN-SUFFIX,futunn.com,DIRECT DOMAIN-SUFFIX,gandi.net,DIRECT DOMAIN-SUFFIX,gazellegames.net,DIRECT DOMAIN-SUFFIX,geilicdn.com,DIRECT DOMAIN-SUFFIX,getpricetag.com,DIRECT DOMAIN-SUFFIX,gifshow.com,DIRECT DOMAIN-SUFFIX,godic.net,DIRECT DOMAIN-SUFFIX,gtimg.com,DIRECT DOMAIN-SUFFIX,hdbits.org,DIRECT DOMAIN-SUFFIX,hdchina.org,DIRECT DOMAIN-SUFFIX,hdhome.org,DIRECT DOMAIN-SUFFIX,hdsky.me,DIRECT DOMAIN-SUFFIX,hdslb.com,DIRECT DOMAIN-SUFFIX,hicloud.com,DIRECT DOMAIN-SUFFIX,hitv.com,DIRECT DOMAIN-SUFFIX,hongxiu.com,DIRECT DOMAIN-SUFFIX,hostbuf.com,DIRECT DOMAIN-SUFFIX,huxiucdn.com,DIRECT DOMAIN-SUFFIX,huya.com,DIRECT DOMAIN-SUFFIX,icetorrent.org,DIRECT DOMAIN-SUFFIX,icevirtuallibrary.com,DIRECT DOMAIN-SUFFIX,iciba.com,DIRECT DOMAIN-SUFFIX,idqqimg.com,DIRECT DOMAIN-SUFFIX,ieee.org,DIRECT DOMAIN-SUFFIX,iesdouyin.com,DIRECT DOMAIN-SUFFIX,igamecj.com,DIRECT DOMAIN-SUFFIX,imf.org,DIRECT DOMAIN-SUFFIX,infinitynewtab.com,DIRECT DOMAIN-SUFFIX,iop.org,DIRECT DOMAIN-SUFFIX,ip-cdn.com,DIRECT DOMAIN-SUFFIX,ip.la,DIRECT DOMAIN-SUFFIX,ipip.net,DIRECT DOMAIN-SUFFIX,ipv6-test.com,DIRECT DOMAIN-SUFFIX,iqiyi.com,DIRECT DOMAIN-SUFFIX,iqiyipic.com,DIRECT DOMAIN-SUFFIX,ithome.com,DIRECT DOMAIN-SUFFIX,jamanetwork.com,DIRECT DOMAIN-SUFFIX,java.com,DIRECT DOMAIN-SUFFIX,jd.com,DIRECT DOMAIN-SUFFIX,jd.hk,DIRECT DOMAIN-SUFFIX,jdpay.com,DIRECT DOMAIN-SUFFIX,jhu.edu,DIRECT DOMAIN-SUFFIX,jidian.im,DIRECT DOMAIN-SUFFIX,jpopsuki.eu,DIRECT DOMAIN-SUFFIX,jstor.org,DIRECT DOMAIN-SUFFIX,jstucdn.com,DIRECT DOMAIN-SUFFIX,kaiyanapp.com,DIRECT DOMAIN-SUFFIX,karger.com,DIRECT DOMAIN-SUFFIX,kaspersky-labs.com,DIRECT DOMAIN-SUFFIX,keepcdn.com,DIRECT DOMAIN-SUFFIX,keepfrds.com,DIRECT DOMAIN-SUFFIX,kkmh.com,DIRECT DOMAIN-SUFFIX,ksosoft.com,DIRECT DOMAIN-SUFFIX,kuyunbo.club,DIRECT DOMAIN-SUFFIX,libguides.com,DIRECT DOMAIN-SUFFIX,licdn.com,DIRECT DOMAIN-SUFFIX,linkedin.com,DIRECT DOMAIN-SUFFIX,livechina.com,DIRECT DOMAIN-SUFFIX,lofter.com,DIRECT DOMAIN-SUFFIX,loli.net,DIRECT DOMAIN-SUFFIX,luojilab.com,DIRECT DOMAIN-SUFFIX,m-team.cc,DIRECT DOMAIN-SUFFIX,madsrevolution.net,DIRECT DOMAIN-SUFFIX,maoyan.com,DIRECT DOMAIN-SUFFIX,maoyun.tv,DIRECT DOMAIN-SUFFIX,meipai.com,DIRECT DOMAIN-SUFFIX,meitu.com,DIRECT DOMAIN-SUFFIX,meituan.com,DIRECT DOMAIN-SUFFIX,meituan.net,DIRECT DOMAIN-SUFFIX,meitudata.com,DIRECT DOMAIN-SUFFIX,meitustat.com,DIRECT DOMAIN-SUFFIX,meixincdn.com,DIRECT DOMAIN-SUFFIX,mgtv.com,DIRECT DOMAIN-SUFFIX,mi-img.com,DIRECT DOMAIN-SUFFIX,microsoft.com,DIRECT DOMAIN-SUFFIX,miui.com,DIRECT DOMAIN-SUFFIX,miwifi.com,DIRECT DOMAIN-SUFFIX,mobike.com,DIRECT DOMAIN-SUFFIX,moke.com,DIRECT DOMAIN-SUFFIX,morethan.tv,DIRECT DOMAIN-SUFFIX,mpg.de,DIRECT DOMAIN-SUFFIX,msecnd.net,DIRECT DOMAIN-SUFFIX,mubu.com,DIRECT DOMAIN-SUFFIX,mxhichina.com,DIRECT DOMAIN-SUFFIX,myanonamouse.net,DIRECT DOMAIN-SUFFIX,myapp.com,DIRECT DOMAIN-SUFFIX,myilibrary.com,DIRECT DOMAIN-SUFFIX,myqcloud.com,DIRECT DOMAIN-SUFFIX,myzaker.com,DIRECT DOMAIN-SUFFIX,nanyangpt.com,DIRECT DOMAIN-SUFFIX,nature.com,DIRECT DOMAIN-SUFFIX,ncore.cc,DIRECT DOMAIN-SUFFIX,netease.com,DIRECT DOMAIN-SUFFIX,netspeedtestmaster.com,DIRECT DOMAIN-SUFFIX,nim-lang-cn.org,DIRECT DOMAIN-SUFFIX,nvidia.com,DIRECT DOMAIN-SUFFIX,oecd-ilibrary.org,DIRECT DOMAIN-SUFFIX,office365.com,DIRECT DOMAIN-SUFFIX,open.cd,DIRECT DOMAIN-SUFFIX,oracle.com,DIRECT DOMAIN-SUFFIX,osapublishing.org,DIRECT DOMAIN-SUFFIX,oup.com,DIRECT DOMAIN-SUFFIX,ourbits.club,DIRECT DOMAIN-SUFFIX,ourdvs.com,DIRECT DOMAIN-SUFFIX,outlook.com,DIRECT DOMAIN-SUFFIX,ovid.com,DIRECT DOMAIN-SUFFIX,oxfordartonline.com,DIRECT DOMAIN-SUFFIX,oxfordbibliographies.com,DIRECT DOMAIN-SUFFIX,oxfordmusiconline.com,DIRECT DOMAIN-SUFFIX,passthepopcorn.me,DIRECT DOMAIN-SUFFIX,paypal.com,DIRECT DOMAIN-SUFFIX,paypalobjects.com,DIRECT DOMAIN-SUFFIX,pnas.org,DIRECT DOMAIN-SUFFIX,privatehd.to,DIRECT DOMAIN-SUFFIX,proquest.com,DIRECT DOMAIN-SUFFIX,pstatp.com,DIRECT DOMAIN-SUFFIX,pterclub.com,DIRECT DOMAIN-SUFFIX,qdaily.com,DIRECT DOMAIN-SUFFIX,qhimg.com,DIRECT DOMAIN-SUFFIX,qhres.com,DIRECT DOMAIN-SUFFIX,qidian.com,DIRECT DOMAIN-SUFFIX,qq.com,DIRECT DOMAIN-SUFFIX,qyer.com,DIRECT DOMAIN-SUFFIX,qyerstatic.com,DIRECT DOMAIN-SUFFIX,raychase.net,DIRECT DOMAIN-SUFFIX,redacted.ch,DIRECT DOMAIN-SUFFIX,ronghub.com,DIRECT DOMAIN-SUFFIX,rsc.org,DIRECT DOMAIN-SUFFIX,ruguoapp.com,DIRECT DOMAIN-SUFFIX,s-microsoft.com,DIRECT DOMAIN-SUFFIX,s-reader.com,DIRECT DOMAIN-SUFFIX,sagepub.com,DIRECT DOMAIN-SUFFIX,sankuai.com,DIRECT DOMAIN-SUFFIX,sciencedirect.com,DIRECT DOMAIN-SUFFIX,sciencemag.org,DIRECT DOMAIN-SUFFIX,scomper.me,DIRECT DOMAIN-SUFFIX,scopus.com,DIRECT DOMAIN-SUFFIX,seafile.com,DIRECT DOMAIN-SUFFIX,servicewechat.com,DIRECT DOMAIN-SUFFIX,siam.org,DIRECT DOMAIN-SUFFIX,sina.com,DIRECT DOMAIN-SUFFIX,sm.ms,DIRECT DOMAIN-SUFFIX,smzdm.com,DIRECT DOMAIN-SUFFIX,snapdrop.net,DIRECT DOMAIN-SUFFIX,snssdk.com,DIRECT DOMAIN-SUFFIX,snwx.com,DIRECT DOMAIN-SUFFIX,sogo.com,DIRECT DOMAIN-SUFFIX,sogou.com,DIRECT DOMAIN-SUFFIX,sogoucdn.com,DIRECT DOMAIN-SUFFIX,sohu-inc.com,DIRECT DOMAIN-SUFFIX,sohu.com,DIRECT DOMAIN-SUFFIX,sohucs.com,DIRECT DOMAIN-SUFFIX,soku.com,DIRECT DOMAIN-SUFFIX,spiedigitallibrary.org,DIRECT DOMAIN-SUFFIX,springer.com,DIRECT DOMAIN-SUFFIX,springerlink.com,DIRECT DOMAIN-SUFFIX,springsunday.net,DIRECT DOMAIN-SUFFIX,sspai.com,DIRECT DOMAIN-SUFFIX,staticdn.net,DIRECT DOMAIN-SUFFIX,steam-chat.com,DIRECT DOMAIN-SUFFIX,steamcdn-a.akamaihd.net,DIRECT DOMAIN-SUFFIX,steamcontent.com,DIRECT DOMAIN-SUFFIX,steamgames.com,DIRECT DOMAIN-SUFFIX,steampowered.com,DIRECT DOMAIN-SUFFIX,steamstat.us,DIRECT DOMAIN-SUFFIX,steamstatic.com,DIRECT DOMAIN-SUFFIX,steamusercontent.com,DIRECT DOMAIN-SUFFIX,takungpao.com,DIRECT DOMAIN-SUFFIX,tandfonline.com,DIRECT DOMAIN-SUFFIX,teamviewer.com,DIRECT DOMAIN-SUFFIX,tencent-cloud.net,DIRECT DOMAIN-SUFFIX,tencent.com,DIRECT DOMAIN-SUFFIX,tenpay.com,DIRECT DOMAIN-SUFFIX,test-ipv6.com,DIRECT DOMAIN-SUFFIX,tianyancha.com,DIRECT DOMAIN-SUFFIX,tjupt.org,DIRECT DOMAIN-SUFFIX,tmall.com,DIRECT DOMAIN-SUFFIX,tmall.hk,DIRECT DOMAIN-SUFFIX,totheglory.im,DIRECT DOMAIN-SUFFIX,toutiao.com,DIRECT DOMAIN-SUFFIX,udache.com,DIRECT DOMAIN-SUFFIX,udacity.com,DIRECT DOMAIN-SUFFIX,un.org,DIRECT DOMAIN-SUFFIX,uni-bielefeld.de,DIRECT DOMAIN-SUFFIX,uning.com,DIRECT DOMAIN-SUFFIX,v-56.com,DIRECT DOMAIN-SUFFIX,visualstudio.com,DIRECT DOMAIN-SUFFIX,vmware.com,DIRECT DOMAIN-SUFFIX,wangsu.com,DIRECT DOMAIN-SUFFIX,weather.com,DIRECT DOMAIN-SUFFIX,webofknowledge.com,DIRECT DOMAIN-SUFFIX,weibo.com,DIRECT DOMAIN-SUFFIX,weibocdn.com,DIRECT DOMAIN-SUFFIX,weico.cc,DIRECT DOMAIN-SUFFIX,weidian.com,DIRECT DOMAIN-SUFFIX,westlaw.com,DIRECT DOMAIN-SUFFIX,whatismyip.com,DIRECT DOMAIN-SUFFIX,wiley.com,DIRECT DOMAIN-SUFFIX,windows.com,DIRECT DOMAIN-SUFFIX,windowsupdate.com,DIRECT DOMAIN-SUFFIX,worldbank.org,DIRECT DOMAIN-SUFFIX,worldscientific.com,DIRECT DOMAIN-SUFFIX,xiachufang.com,DIRECT DOMAIN-SUFFIX,xiami.com,DIRECT DOMAIN-SUFFIX,xiami.net,DIRECT DOMAIN-SUFFIX,xiaomi.com,DIRECT DOMAIN-SUFFIX,ximalaya.com,DIRECT DOMAIN-SUFFIX,xinhuanet.com,DIRECT DOMAIN-SUFFIX,xmcdn.com,DIRECT DOMAIN-SUFFIX,yangkeduo.com,DIRECT DOMAIN-SUFFIX,ydstatic.com,DIRECT DOMAIN-SUFFIX,youku.com,DIRECT DOMAIN-SUFFIX,zhangzishi.cc,DIRECT DOMAIN-SUFFIX,zhihu.com,DIRECT DOMAIN-SUFFIX,zhimg.com,DIRECT DOMAIN-SUFFIX,zhuihd.com,DIRECT DOMAIN-SUFFIX,zimuzu.io,DIRECT DOMAIN-SUFFIX,zimuzu.tv,DIRECT DOMAIN-SUFFIX,zmz2019.com,DIRECT DOMAIN-SUFFIX,zmzapi.com,DIRECT DOMAIN-SUFFIX,zmzapi.net,DIRECT DOMAIN-SUFFIX,zmzfile.com,DIRECT DOMAIN-SUFFIX,google.cn,DIRECT DOMAIN-SUFFIX,manmanbuy.com,DIRECT DOMAIN,www-cdn.icloud.com.akadns.net,DIRECT DOMAIN-SUFFIX,aaplimg.com,DIRECT DOMAIN-SUFFIX,apple-cloudkit.com,DIRECT DOMAIN-SUFFIX,apple.co,DIRECT DOMAIN-SUFFIX,apple.com,DIRECT DOMAIN-SUFFIX,apple.com.cn,DIRECT DOMAIN-SUFFIX,appstore.com,DIRECT DOMAIN-SUFFIX,cdn-apple.com,DIRECT DOMAIN-SUFFIX,crashlytics.com,DIRECT DOMAIN-SUFFIX,icloud-content.com,DIRECT DOMAIN-SUFFIX,icloud.com,DIRECT DOMAIN-SUFFIX,icloud.com.cn,DIRECT DOMAIN-SUFFIX,me.com,DIRECT DOMAIN-SUFFIX,mzstatic.com,DIRECT DOMAIN-SUFFIX,scdn.co,PROXY DOMAIN-SUFFIX,line.naver.jp,PROXY DOMAIN-SUFFIX,line.me,PROXY DOMAIN-SUFFIX,line-apps.com,PROXY DOMAIN-SUFFIX,line-cdn.net,PROXY DOMAIN-SUFFIX,line-scdn.net,PROXY USER-AGENT,Line*,PROXY DOMAIN-KEYWORD,blogspot,PROXY DOMAIN-KEYWORD,google,PROXY DOMAIN-SUFFIX,abc.xyz,PROXY DOMAIN-SUFFIX,admin.recaptcha.net,PROXY DOMAIN-SUFFIX,ampproject.org,PROXY DOMAIN-SUFFIX,android.com,PROXY DOMAIN-SUFFIX,androidify.com,PROXY DOMAIN-SUFFIX,appspot.com,PROXY DOMAIN-SUFFIX,autodraw.com,PROXY DOMAIN-SUFFIX,blogger.com,PROXY DOMAIN-SUFFIX,capitalg.com,PROXY DOMAIN-SUFFIX,certificate-transparency.org,PROXY DOMAIN-SUFFIX,chrome.com,PROXY DOMAIN-SUFFIX,chromeexperiments.com,PROXY DOMAIN-SUFFIX,chromestatus.com,PROXY DOMAIN-SUFFIX,chromium.org,PROXY DOMAIN-SUFFIX,creativelab5.com,PROXY DOMAIN-SUFFIX,debug.com,PROXY DOMAIN-SUFFIX,deepmind.com,PROXY DOMAIN-SUFFIX,dialogflow.com,PROXY DOMAIN-SUFFIX,firebaseio.com,PROXY DOMAIN-SUFFIX,getmdl.io,PROXY DOMAIN-SUFFIX,getoutline.org,PROXY DOMAIN-SUFFIX,ggpht.com,PROXY DOMAIN-SUFFIX,gmail.com,PROXY DOMAIN-SUFFIX,gmodules.com,PROXY DOMAIN-SUFFIX,godoc.org,PROXY DOMAIN-SUFFIX,golang.org,PROXY DOMAIN-SUFFIX,gstatic.com,PROXY DOMAIN-SUFFIX,gv.com,PROXY DOMAIN-SUFFIX,gvt0.com,PROXY DOMAIN-SUFFIX,gvt1.com,PROXY DOMAIN-SUFFIX,gvt3.com,PROXY DOMAIN-SUFFIX,gwtproject.org,PROXY DOMAIN-SUFFIX,itasoftware.com,PROXY DOMAIN-SUFFIX,madewithcode.com,PROXY DOMAIN-SUFFIX,material.io,PROXY DOMAIN-SUFFIX,polymer-project.org,PROXY DOMAIN-SUFFIX,recaptcha.net,PROXY DOMAIN-SUFFIX,shattered.io,PROXY DOMAIN-SUFFIX,synergyse.com,PROXY DOMAIN-SUFFIX,telephony.goog,PROXY DOMAIN-SUFFIX,tensorflow.org,PROXY DOMAIN-SUFFIX,tfhub.dev,PROXY DOMAIN-SUFFIX,tiltbrush.com,PROXY DOMAIN-SUFFIX,waveprotocol.org,PROXY DOMAIN-SUFFIX,waymo.com,PROXY DOMAIN-SUFFIX,webmproject.org,PROXY DOMAIN-SUFFIX,webrtc.org,PROXY DOMAIN-SUFFIX,whatbrowser.org,PROXY DOMAIN-SUFFIX,widevine.com,PROXY DOMAIN-SUFFIX,x.company,PROXY DOMAIN-SUFFIX,xn--ngstr-lra8j.com,PROXY DOMAIN-SUFFIX,youtu.be,PROXY DOMAIN-SUFFIX,yt.be,PROXY DOMAIN-SUFFIX,ytimg.com,PROXY DOMAIN-KEYWORD,aka,PROXY DOMAIN-KEYWORD,facebook,PROXY DOMAIN-KEYWORD,youtube,PROXY DOMAIN-KEYWORD,twitter,PROXY DOMAIN-KEYWORD,instagram,PROXY DOMAIN-KEYWORD,gmail,PROXY DOMAIN-KEYWORD,pixiv,PROXY DOMAIN-SUFFIX,fb.com,PROXY DOMAIN-SUFFIX,twimg.com,PROXY DOMAIN-SUFFIX,t.co,PROXY DOMAIN-SUFFIX,kenengba.com,PROXY DOMAIN-SUFFIX,akamai.net,PROXY DOMAIN-SUFFIX,whatsapp.net,PROXY DOMAIN-SUFFIX,whatsapp.com,PROXY DOMAIN-SUFFIX,snapchat.com,PROXY DOMAIN-SUFFIX,amazonaws.com,PROXY DOMAIN-SUFFIX,angularjs.org,PROXY DOMAIN-SUFFIX,akamaihd.net,PROXY DOMAIN-SUFFIX,amazon.com,PROXY DOMAIN-SUFFIX,bit.ly,PROXY DOMAIN-SUFFIX,bitbucket.org,PROXY DOMAIN-SUFFIX,blog.com,PROXY DOMAIN-SUFFIX,blogcdn.com,PROXY DOMAIN-SUFFIX,blogsmithmedia.com,PROXY DOMAIN-SUFFIX,box.net,PROXY DOMAIN-SUFFIX,bloomberg.com,PROXY DOMAIN-SUFFIX,cl.ly,PROXY DOMAIN-SUFFIX,cloudfront.net,PROXY DOMAIN-SUFFIX,cloudflare.com,PROXY DOMAIN-SUFFIX,cocoapods.org,PROXY DOMAIN-SUFFIX,dribbble.com,PROXY DOMAIN-SUFFIX,dropbox.com,PROXY DOMAIN-SUFFIX,dropboxstatic.com,PROXY DOMAIN-SUFFIX,dropboxusercontent.com,PROXY DOMAIN-SUFFIX,docker.com,PROXY DOMAIN-SUFFIX,duckduckgo.com,PROXY DOMAIN-SUFFIX,digicert.com,PROXY DOMAIN-SUFFIX,dnsimple.com,PROXY DOMAIN-SUFFIX,edgecastcdn.net,PROXY DOMAIN-SUFFIX,engadget.com,PROXY DOMAIN-SUFFIX,eurekavpt.com,PROXY DOMAIN-SUFFIX,fb.me,PROXY DOMAIN-SUFFIX,fbcdn.net,PROXY DOMAIN-SUFFIX,fc2.com,PROXY DOMAIN-SUFFIX,feedburner.com,PROXY DOMAIN-SUFFIX,fabric.io,PROXY DOMAIN-SUFFIX,flickr.com,PROXY DOMAIN-SUFFIX,fastly.net,PROXY DOMAIN-SUFFIX,github.com,PROXY DOMAIN-SUFFIX,github.io,PROXY DOMAIN-SUFFIX,githubusercontent.com,PROXY DOMAIN-SUFFIX,goo.gl,PROXY DOMAIN-SUFFIX,godaddy.com,PROXY DOMAIN-SUFFIX,gravatar.com,PROXY DOMAIN-SUFFIX,imageshack.us,PROXY DOMAIN-SUFFIX,imgur.com,PROXY DOMAIN-SUFFIX,jshint.com,PROXY DOMAIN-SUFFIX,ift.tt,PROXY DOMAIN-SUFFIX,j.mp,PROXY DOMAIN-SUFFIX,kat.cr,PROXY DOMAIN-SUFFIX,linode.com,PROXY DOMAIN-SUFFIX,lithium.com,PROXY DOMAIN-SUFFIX,megaupload.com,PROXY DOMAIN-SUFFIX,mobile01.com,PROXY DOMAIN-SUFFIX,modmyi.com,PROXY DOMAIN-SUFFIX,nytimes.com,PROXY DOMAIN-SUFFIX,name.com,PROXY DOMAIN-SUFFIX,openvpn.net,PROXY DOMAIN-SUFFIX,openwrt.org,PROXY DOMAIN-SUFFIX,ow.ly,PROXY DOMAIN-SUFFIX,pinboard.in,PROXY DOMAIN-SUFFIX,ssl-images-amazon.com,PROXY DOMAIN-SUFFIX,sstatic.net,PROXY DOMAIN-SUFFIX,stackoverflow.com,PROXY DOMAIN-SUFFIX,staticflickr.com,PROXY DOMAIN-SUFFIX,squarespace.com,PROXY DOMAIN-SUFFIX,symcd.com,PROXY DOMAIN-SUFFIX,symcb.com,PROXY DOMAIN-SUFFIX,symauth.com,PROXY DOMAIN-SUFFIX,ubnt.com,PROXY DOMAIN-SUFFIX,thepiratebay.org,PROXY DOMAIN-SUFFIX,tumblr.com,PROXY DOMAIN-SUFFIX,twitch.tv,PROXY DOMAIN-SUFFIX,twitter.com,PROXY DOMAIN-SUFFIX,wikipedia.com,PROXY DOMAIN-SUFFIX,wikipedia.org,PROXY DOMAIN-SUFFIX,wikimedia.org,PROXY DOMAIN-SUFFIX,wordpress.com,PROXY DOMAIN-SUFFIX,wsj.com,PROXY DOMAIN-SUFFIX,wsj.net,PROXY DOMAIN-SUFFIX,wp.com,PROXY DOMAIN-SUFFIX,vimeo.com,PROXY DOMAIN-SUFFIX,tapbots.com,PROXY DOMAIN-SUFFIX,ykimg.com,DIRECT DOMAIN-SUFFIX,medium.com,PROXY DOMAIN-SUFFIX,fast.com,PROXY DOMAIN-SUFFIX,nflxvideo.net,PROXY DOMAIN-SUFFIX,soundcloud.com,PROXY DOMAIN-SUFFIX,sndcdn.com,PROXY DOMAIN-SUFFIX,t.me,PROXY DOMAIN-SUFFIX,tdesktop.com,PROXY DOMAIN-SUFFIX,telegra.ph,PROXY DOMAIN-SUFFIX,telegram.me,PROXY DOMAIN-SUFFIX,telegram.org,PROXY DOMAIN-SUFFIX,telesco.pe,PROXY IP-CIDR,91.108.4.0/22,PROXY,no-resolve IP-CIDR,91.108.8.0/22,PROXY,no-resolve IP-CIDR,91.108.12.0/22,PROXY,no-resolve IP-CIDR,91.108.16.0/22,PROXY,no-resolve IP-CIDR,91.108.56.0/22,PROXY,no-resolve IP-CIDR,109.239.140.0/24,PROXY,no-resolve IP-CIDR,149.154.160.0/20,PROXY,no-resolve IP-CIDR,2001:b28:f23d::/48,PROXY,no-resolve IP-CIDR,2001:b28:f23f::/48,PROXY,no-resolve IP-CIDR,2001:67c:4e8::/48,PROXY,no-resolve IP-CIDR,192.168.0.0/16,DIRECT IP-CIDR,10.0.0.0/8,DIRECT IP-CIDR,172.16.0.0/12,DIRECT IP-CIDR,127.0.0.0/8,DIRECT GEOIP,CN,DIRECT FINAL,PROXY [Host] localhost = 127.0.0.1 [URL Rewrite] ^http://(www.)?g.cn https://www.google.com 302 ^http://(www.)?google.cn https://www.google.com 302 [Script] VSCO = type=http-response, script-path=https://raw.githubusercontent.com/iSteal-it/script/main/vsco.json, pattern=^https:\/\/vsco\.co\/api\/subscriptions\/2.1\/user-subscriptions\/,requires-body=true,timeout=10,enable=true Kinemaster = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/Kinemaster.json,pattern=^https:\/\/api-kinemaster-assetstore\.(nexstreaming|kinemasters)\.com\/.+\/product\/verifyReceipt$,max-size=131072,requires-body=true,timeout=10,enable=true alight motion = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/alight-motion.json,pattern=^https?:\/\/us-central1-alight-creative\.cloudfunctions\.net\/getAccountStatusAndLicenses,max-size=131072,requires-body=true,timeout=10,enable=true picart = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/picart.json,pattern=^https:\/\/api\.picsart\.com\/shop\/subscription\/validate,max-size=131072,requires-body=true,timeout=10,enable=true funimate = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/Funimate.json,pattern=^https:\/\/api\.funimate\.com\/users\/me,max-size=131072,requires-body=true,timeout=10,enable=true Photomath = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/Photomath.json,pattern=^https:\/\/lapi\.photomath\.net\/v4\/me,max-size=131072,requires-body=true,timeout=10,enable=true Photoshop = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/Photoshop.json,pattern=^https:\/\/lcs-mobile-cops\.adobe\.io\/mobile_profile,max-size=131072,requires-body=true,timeout=10,enable=true Lightroom = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/Lightroom.json,pattern=^https:\/\/photos\.adobe\.io\/v2\/accounts,max-size=131072,requires-body=true,timeout=10,enable=true Prequel = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/Prequel.json,pattern=^https:\/\/api\.apphud\.com\/v1\/customers,max-size=131072,requires-body=true,timeout=10,enable=true Replika = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/replika.json,pattern=^https:\/\/replika\.ai\/api\/mobile\/1\.4\/payment_subscriptions,requires-body=true,timeout=10,enable=true Benkyo = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/Benkyo.json,pattern=^https:\/\/api\.revenuecat\.com\/v1\/receipts,requires-body=true,timeout=10,enable=true Screen recorder = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/ScreenRecorder%2B.json,pattern=^https:\/\/irecgo\.softin-tech\.com\/order\/verify,requires-body=true,timeout=10,enable=true Power Director = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/PowerDirector.json,pattern=^https:\/\/app-service\.cyberlink\.com\/service\/ios\/verifyReceipt,requires-body=true,timeout=10,enable=true Djay = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/djay.json,pattern=^https:\/\/app\.algoriddim\.com\/api\/v1\/validate-receipt,max-size=131072,requires-body=true,timeout=10,enable=true Duet Display = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/duetDisplay.json,pattern=^https:\/\/rdp\.duetdisplay\.com\/v1\/users\/validateReceipt,max-size=131072,requires-body=true,timeout=10,enable=true Vllo = type=http-response,script-path=https://raw.githubusercontent.com/iSteal-it/script/main/vllo.json,pattern=^https:\/\/buy\.itunes\.apple\.com\/verifyReceipt,max-size=131072,requires-body=true,timeout=10,enable=true [MITM] hostname = vsco.co,api-kinemaster-assetstore.kinemasters.com,us-central1-alight-creative.cloudfunctions.net,api.picsart.com,api.funimate.com,lapi.photomath.net,lcs-mobile-cops.adobe.io,api.apphud.com,replika.ai,api.revenuecat.com,app-service.cyberlink.com,app.algoriddim.com,rdp.duetdisplay.com,buy.itunes.apple.com ca-passphrase = Shadowrocket ca-p12 = MIIP3gIBAzCCD6gGCSqGSIb3DQEHAaCCD5kEgg+VMIIPkTCCCh8GCSqGSIb3DQEHBqCCChAwggoMAgEAMIIKBQYJKoZIhvcNAQcBMBwGCiqGSIb3DQEMAQYwDgQIkInMOOdyNqgCAggAgIIJ2NgTh91pL0GZfzAYECLoiKIkWFP0icb8c35ZvGFxHCDRYM3gr9ZqG3vLtFqff4PuhlFN381hF3nAp/ZAJ1uGxCKDqqzO4x9Z311YQPFL383HmFNdmC5b2Ef3LFhDHqW4udL5RZOdKZK8u0h1aHqctKJCZt+aq3b4NRv0e7eIKmAhXETeC67xjWf1TEQKXwEM1Fdy9LaHLy6B3U2MWU3+FbBShYrTwsjn6STL9x3JEXmgsG2drXyDf0B/li8dbEkwiPWuTm52nqXqMiXi22wJIR3cOVfS62y3aY3prYHzwUG1+7Va4A/HFGgki3zigMGcpAvc8zDMxYj7hLgwsouTeVuzFMRg+QvRppqdcLsWrsWVjHVtWueSW9suQ1tc0GCH6x01NjJ3MgIfGZmjciS0RS0rqlNYxeBkjsdwnkC5dPNn39jjSQmaomJ5SkDLTukdXXek7GTg2Eqvpj2YniJT4fwxkFa+/bUw8pY8K5WPSqUT11a3gpze8VI3ir9768iafNbFy0W+vW0VvaTGm8FF356Gdmbn1DMOkUth6JCSM9UtLggt+/UWZ84RVLqr0rxZ49WSexrVVMRIWlvBM7VIAdktWOsiYMqf8uMjesoJD1JEgAcJC/UZZyrBzKQZwujlsQSYZaYVmRI6SZrjUqOZRMkERr32jvUk9lWHd8VUSmkQa/cevNHW36KcA8wtuOmY/8lycqkAGDCwjd7OoAatHYL7hDJM6p9D3OlA5ViryriXKUnw53fF69+yYY2EjJueyG5l/8rPJcinJ3LWBzRSP+Sq03HBqC7+zPg+nMuiRGD0De/GqdXKfzkQd/+WcZpHLZQC1K/x/b5cPkt95FglvAgO2KX21nxHPRwU7sq4yLDlPaYFjzKQPRMc8F1Cbss+LRbjn0gI7WnyGhuP83OZGj9jiilgqO+PqA0p8JTVu4wn1lvBy0LTl9LRg1YsavOfddy7NolzDBkmly5CCW7bGWGfeAllk3aUZAqE15Gu/OT65GPdNqEv/gpHtE3qFkJiVRj5YD8mpc8C2GIuyTLGTRs9ZT3+/F/BTA2jhmF4hI9QgUiZjfBFZSwbE3XBMqsvtl2WMGPD9DEZGQ5bYEc5OilshM4oTVEOhX7gZJaBxs+NxvTh8tWe3lkGaTWm0ilun+/sTf6aOKvwMe+5VeDMB3DJhoXAksHpT1bT6c5B1rWWNcGQWwMey2Dm/k3jKX8gFmdhIpb2zu/9rW/s9L+JCknyso1QrkMiMLgVPPZilFcQbhDhY4zxz3+tXNcYVSFeqeS2A5bNqEaqh5DHb3kypw0I6JD1jEGXBbJ169mT0jJRQkol4jUpAaSsW/WWRZXCPgdez4WjwDKf9wgqK3C0KDteTUDcSbpLcDoWtUSoZd3KPIOVkvX58BNB+YPa6Gge8W4KS6rucy1OzzkgVn+9X8oFfJrBHFMGkYmum8ErQVmNqWyIMgDa7qeGQQHD5k8S372jH9V0iAeG2KtWMG1h2YEIpQgD8k8Yx/u9Mf2zD0aygpDQsM+4c/0Vxj0ELK8fHOp2ZpeMkgbIVMgud45tZ6BJqXSdTVqVHtF3Tv/vjuWN+ayBtLemqrHlA9gGxnv8zt3MY9elty+zp0G34fPwStv4eIyS3QpYg/cVN7Pj/zr9mPVJ//QkW4nISlVZJSOJwQwzliXlziApNqhX0AwY75uRIWkdou/5v+Hc/0wDwjcT3cxS6dGZb39O8a8M8wAEpf3egCQw/hSGohztvHxg9EjKOFQXCkFgUhJ4LhCkY6ONk5vFd/NL+L/hQxyYYq+jDMvLtuPmI2gNUi/9N+Ezz0DcCz1Asr8ku22lDPS58RO4Bw3+VTgWrB+f/CDCB5gOzTTfyGQHMMDZA+8GWBPdScJownjQdhT02Ss8GHmyf1ENbE9ojmrIZquCoHrVJ6vy8l1eALpN5ytd2HFm4CjRxsLX6u4dw6KVdicVm7/4EkqBEQfMr0gIq5ggKFc7fyc981xtXBsGMGS8TUY/cOXF+NOXVSixS4IEwNBN+BDFh7EWjzPcbhQx58yxdYfnYw7Pm3cSYARRxzcXVMou/hBs1Czo4FVYC0PVNfKUnW5zLTflvIUK6yTwpzhucPhRQxcgglr0JLNdzXYhsXX68SzCnPtKa+jvJcUdaJqZ8RUREmX08qua5VYtMjsTZU2LeR2pILkfyNGci0NG/Q4hCjKPzWCSKNNwIYfRjrACdZH/LTv1MJqjTQpAsYbFJ0vzjd0lc6JFBP+GEwYFonkvnL82W2se/iGnFxyUZFAVfXIVdfhAWMrRdrRUtNYvxRO6ddsggYZedL9m20agdSk0S6Csjiv0YdD1c7l3rPZb4FUTYM7QRrRW5WgSr5/TIaOqIUMzKE4U9YRgyLQHCGo5sfPORbbcTeaWmHCTcWw/KkhJqahSsDpa74pXPm7Qwy4y1CVV7SG/Mas8S/gp9tWDr/8ZK6629aNVLYghhsoNo/bCeRcGm6PvVmFyiuWkeS0XrFhI+q69ku/gslfHkfsQsUyVjk0/wmXXqyKj9e9cIFdAEv2Su04/VnxgtAmF+6rvRa49kjIWN7PsnoPGd/YI/D5OfjDlXueftj0sqDuN+YeFT2igz5rbhB3yp/gkjA0a+1U8xwaqygZrR1NUUkcNRAVpe68wpNqimJmrROVQ+qiI4Azi9rNHFpX++QMficPZtrKaOAnEOC15p/WTQHOZwMyl/BRcmgmK7eQ+Y/VZT4ZB7wDJ5BBzITMdUbqGzzlELCmd1BnEvq1WkWjawlZzTT1VG7NXUFWojB6LfoCe+++epYCEz/VeAmMChIPlW+gktSuH6Othu/n7PGLantFbelZnGTt7DzrNNRs/jUmcM6DVpvNEtHUBFmm71ysmtUG4yQlgEK4qMPA84UQVNlcZ4C/pdxlYWRC984O03mVtzeLH9qcLZXl7HaqnP4Zu27+kvb6V102NJFMrvKMr5jrI+f1kmd2QXvN1/IIB4QtZKazWT/kY3mp5yrP73Ge5C7UYznvnKImsrhFRkaiXx7SyotQ3I3/6Z1pJ7ZWENaEC+xPXDig4Gypxy65sY3OQRRmXpHwikHhNTamnJPtqzFtVV4d4nj6OLd3okGsNeuOZhrFEu/Lc4JTgrto+l8CfG7uWjJT21k6E/bxsvp1gLymUTCfyYRj9Ked4Nrb12EAZBi32bt3RIqhER2pBVzAW3TVDl47s9v7V99wHAMHhZ5fddYBWdtn6iccXqOT8UgJp3jytZCe5zO04xYp3IEjfJ/6PBsCYa+JZRysJeY79UE/zFTAfI9eedT8rGdag10EhQk4nfz+L5pyuOoK6uMcV+eLkMtFNdndgsZqQLd5vORKhjaKmS8Ygg9DwaxfZ5zCCBWoGCSqGSIb3DQEHAaCCBVsEggVXMIIFUzCCBU8GCyqGSIb3DQEMCgECoIIE7jCCBOowHAYKKoZIhvcNAQwBAzAOBAi+/sbDD/I7iAICCAAEggTIh8AZgfdPIGN/UUgXiciL5wfELRZYNxGi+OBgrEfK6nxVR8gzlOlIXJDSlFTgxJXfmL4+zcpB+iI+H5q4DUUK4+HdLaCvQEQrkevH9xQ5hd8yGLyLqwFq3PPgs/LL5PzZLqClR51pTmDy0Sa7j6zFIViFiV54n+4sz523Ms4+VgiGg0QQevHzrFprWLADgYUkfe8XZfmdu0DZUkmCmdQ85d02gwEr3WBL6tULoH+brVmRq7E5mL3Qja6TmVWGy38aQM58pd8U8KVK3UwSdf7xP69WjqIyefewEba7LysonMIh8LW3xQYepwMmWk44VNkTkNtrgQyv8GrOas2QrEo81poN1YalKyKBh71EA67IAObf+cJNRGTqy2AlsB4PwwfjPaDEL7SWBzykCvMTx7teN75OP000DAk2ykjl+6nxBludEXUH68weaFv7H7ms6kwC5n4L2q+LS+3wnKYEBUknBUPscGnz5ZVo5ZmIJpoxq8PqL0RPThjCoqqFVmXhijlGPwn3tGfvxAo9vi5BGTXIHF65qvQ31SgTknFeLBwbNp+mTmD5751QXOHJ8xvaIzJQE8pQroXnxhd8aEcoHSI49aN8BNPUmabUOnTqjrHbKgid4vF235rfmmk8V1RCTnyCzK92VxspYuIMbmjB1RmbBMekbXkDktrQRIcs7rjmTH2UYye7PvtCvRDCQAcv3dEvTyWHEQV2cPATCpIV1Z+GcPqdPSUfBersE6cXx4W0s9uzuoqnikYkrqQaJ7ST8bsbJ2XZYFcq2mnITGHWmFmQmUYIBq+29Wf7eWBvmZefQEnEg5cWu9Pnsw4urOrWSXhoFW5ZVJIY85K0oFg/e84eTdLiIWi+O5MQcOPFoYNFasiV4Ul7G3yNoCT6iJ+SxCvm2+Pb8U4N85qGrQPt+vaRQKyKppPlnQnUxJ29uMIMKAIIAl8r9tStZ1BULicLPjpOno6vlK+xkzYypMNP2NDA8nNlyzbO04O0vB7Tfc5l400UzXiJfqWeUhjGWns4ocAmDP8JTeJ1P47Q5XSIEwxKiryOODSluk6uToZrK2pEix7RJYQNhec4OznPuilSEQTU3+KgD6nDHP5+sE+JyzWmuOsj1QjCDbe06cz+w47niWS/g+UmJzBj881eP3fnbCgLGv9VSR/5dcvw8C7XZ9ylVf+h8mBHADAIsKR8T0ZYiTIBHTfkoHzPAqHbCQQjg3dDEiJyBNTNfIxaQRlZ/VN4YZjXRsuV8122cDOfLCvi1TwwxyMy/XoF1vXHIRKOZPZq9r+kHsF+AOoOS38yQEIIjJSdtwpfr2ypKflPpGJEDfeY8Qlj1iUT67ghETPco2QU2ZTHd8XMB5e/BQS/ozBm1d5OhQExamVL9aCANx1w/kZqYSdrrejIYwWsqMJMrbksu3mBliBpKy1Ubw8huSd+qXf8e4tsrMxN0QbSMucWHBzdSfMDT7+IuXnsw6ItmrNnE1wuln8DGbF6Qnr52+Youhuf576imsnHC8tTG0h/b9UiV41kJXWlgZy1VF2s+glNyuJNQw/fXMaoYNe50aHr9tnOU200QPzw382J9VIsQWn4GoKYNr8lExPQ4DI3gI+Tg9UZfgMWfYbiebvpRiKahQ51j1zEyBU6MU4wIwYJKoZIhvcNAQkVMRYEFNet7HJOfIFj0VT51HLkk7D15RjZMCcGCSqGSIb3DQEJFDEaHhgAUwBoAGEAZABvAHcAcgBvAGMAawBlAHQwLTAhMAkGBSsOAwIaBQAEFM3zifmDG3WvVs4OuXQv14HEeS+SBAhuFFajcPQbCg== enable = true
SOYJUN / Application With Raw IP SocketsOverview For this assignment you will be developing an application that uses raw IP sockets to ‘walk’ around an ordered list of nodes (given as a command line argument at the ‘source’ node, which is the node at which the tour was initiated), in a manner similar to the IP SSRR (Strict Source and Record Route) option. At each node, the application pings the preceding node in the tour. However, unlike the ping code in Stevens, you will be sending the ping ICMP echo request messages through a SOCK_RAW-type PF_PACKET socket and implementing ARP functionality to find the Ethernet address of the target node. Finally, when the ‘walk’ is completed, the group of nodes visited on the tour will exchange multicast messages. Your code will consist of two process modules, a ‘Tour’ application module (which will implement all the functionality outlined above, except for ARP activity) and an ARP module. The following should prove to be useful reference material for the assignment: Sections 21.2, 21.3, 21.6 and 21.10, Chapter 21, on Multicasting. Sections 27.1 to 27.3, Chapter 27, on the IP SSRR option. Sections 28.1 to 28.5, Chapter 28, on raw sockets, the IP_HDRINCL socket option, and ping. Sections 15.5, Chapter 15, on Unix domain SOCK_STREAM sockets. Figure 29.14, p. 807, and the corresponding explanation on p. 806, on filling in an IP header when the IP_HDRINCL socket option is in effect. The Lecture Slides on ARP & RARP (especially Section 4.4, ARP Packet Format, and the Figure 4.3 it includes). The link http://www.pdbuchan.com/rawsock/rawsock.html contains useful code samples that use IP raw sockets and PF_PACKET sockets. Note, in partcular, the code “icmp4_ll.c” in Table 2 for building an echo request sent through a PF_PACKET SOCK_RAW socket. The VMware environment You will be using the same vm1 , . . . . . , vm10 nodes you used for Assignment 3. However, unlike Assignment 3, you should use only interfaces eth0 and their associated IP addresses and ignore the other Ethernet interfaces that nodes have (interfaces eth0 make vm1 , . . . . . , vm10 look as if they belong to the same Ethernet LAN segment IP network 130.245.156.0/24). Note that, apart from the primary IP addresses associated with interfaces eth0, some nodes might also have one or more alias IP addresses associated with their interface eth0. Tour application module specifications The application will create a total of four sockets: two IP raw sockets, a PF_PACKET socket and a UDP socket for multicasting. We shall call the two IP raw sockets the ‘rt ’ (‘route traversal’) and ‘pg ’ (‘ping’) sockets, respectively. The rt socket should have the IP_HDRINCL option set. You will only be receiving ICMP echo reply messages through the pg socket (and not sending echo requests), so it does not matter whether it has the IP_HDRINCL option set or not. The pg socket should have protocol value (i.e., protocol demultiplexing key in the IP header) IPPROTO_ICMP. The rt socket should have a protocol value that identifies the application - i.e., some value other than the IPPROTO_XXXX values in /usr/include/netinet/in.h. However, remember that you will all be running your code using the same root account on the vm1 , . . . . . , vm10 nodes. So if two of you happen to choose the same protocol value and happen to be running on the same vm node at the same time, your applications will receive each other’s IP packets. For that reason, try to choose a protocol value for your rt socket that is likely to be unique to yourself. The PF_PACKET socket should be of type SOCK_RAW (not SOCK_DGRAM). This socket should have a protocol value of ETH_P_IP = 0x0800 (IPv4). The UDP socket for multicasting will be discussed below. Note that, depending on how you choose to bind that socket, you might actually need to have two UDP sockets for multicast communication – see bottom of p. 576, Section 21.10. Your application will, of course, have to be running on every vm node that is included in the tour. When evoking the application on the source node, the user supplies a sequence of vm node names (not IP addresses) to be visited in order. This command line sequence starts with the next node to be visited from the source node (i.e., it does not start with the source node itself). The sequence can include any number of repeated visits to the same node. For example, suppose that the source node is vm3 and the executable is called badr_tour : [root@vm3/root]# badr_tour vm2 vm10 vm4 vm7 vm5 vm2 vm6 vm2 vm9 vm4 vm7 vm2 vm6 vm5 vm1 vm10 vm8 (but note that the tour does not necessarily have to visit every vm node; and the same node should not appear consequentively in the tour list – i.e., the next node on the tour cannot be the current node itself). The application turns the sequence into a list of IP addresses for source routing. It also adds the IP address of the source node itself to the beginning of the list. The list thus produced will be carried as the payload of an IP packet, not as a SSRR option in the packet header. It is our application which will ensure that every node in the sequence is visited in order, not the IP SSRR capability. The source node should also add to the list an IP multicast address and a port number of its choice. It should also join the multicast group at that address and port number on its UDP socket. The TTL for outgoing multicasts should be set to 1. The application then fills in the header of an IP packet, designating itself as the IP source, and the next node to be visited as the IP destination. The packet is sent out on the rt socket. Note that on Linux, all the fields of the packet header must be in network byte order (Stevens, Section 28.3, p. 737, the fourth bullet point). When filling in the packet header, you should explicitly fill in the identification field (recall that, with the IP_HDRINCL socket option, if the identification field is given value 0, then the kernel will set its value). Try to make sure that the value you choose is likely to be unique to yourself (for reasons similar to those explained with respect to the IPPROTO_XXXX in 1. above). When a node receives an IP packet on its rt socket, it should first check that the identification field carries the right value (this implies that you will hard code your choice of identification field value determined in item 2 above in your code). If the identification field value does not check out, the packet is ignored. For a valid packet : Print out a message along the lines of: <time> received source routing packet from <hostname> <time> is the current time in human-readable format (see lines 19 & 20 in Figure 1.9, p. 14, and the corresponding explanation on p. 14f.), and <hostname> is the host name corresponding to the source IP address in the header of the received packet. If this is the first time the node is visited, the application should use the multicast address and port number in the packet received to join the multicast group on its UDP socket. The TTL for outgoing multicasts should be set to 1. The application updates the list in the payload, so that the next node in the tour can easily identify what the next hop from itself will be when it receives the packet. How you do this I leave up to you. You could, for example, include as part of the payload a pointer field into the list of nodes to be visited. This pointer would then be updated to the next entry in the list as the packet progresses hop by hop (see Figure 27.1 and the associated explanation on pp. 711-712). Other solutions are, of course, possible. The application then fills in a new IP header, designating itself as the IP source, and the next node to be visited as the IP destination. The identification field should be set to the same value as in the received packet. The packet is sent out on the rt socket. The node should also initiate pinging to the preceding node in the tour (the IP address of which it should pick up from the header of the received packet). However, unlike the Stevens ping code, it will be using the SOCK_RAW-type PF_PACKET socket of item 1 above to send the ICMP echo request messages. Before it can send echo request messages, the application has to call on the ARP module you will implement to get the Ethernet address of this preceding / ‘target’ node; this call is made using the API function areq which you will also implement (see sections ARP module specifications & API specifications below). Note that ARP has to be evoked every time the application wants to send out an echo request message, and not just the first time. An echo request message has to be encapsulated in a properly-formulated IP packet, which is in turn encapsulated in a properly-formulated Ethernet frame transmitted out through the PF_PACKET socket ; otherwise, ICMP at the source node will not receive it. You will have to modify Stevens’ ping code accordingly, specifically, the send_v4 function. In particular, the Ethernet frame must have a value of ETH_P_IP = 0x0800 (IPv4 – see <linux/if_ether.h>) in the frame type / ‘length’ field ; and the encapsulated IP packet must have a value of IPPROTO_ICMP = 0x01 (ICMPv4 – see <netinet_in.h>) in its protocol field. You should also simplify the ping code in its entirety by stripping all the ‘indirection’ IPv4 / IPv6 dual-operability paraphernalia and making the code work just for IPv4. Also note that the functions host_serv and freeaddrinfo, together with the associated structure addrinfo (see Sections 11.6, 11.8 & 11.11), in Figures 27.3, 27.6 & 28.5 ( pp. 713, 716 & 744f., respectively) can be replaced by the function gethostbyname and associated structure hostent (see Section 11.3) where needed. Also, there is no ‘-v’ verbose option, so this too should be stripped from Stevens’ code. When a node is ready to start pinging, it first prints out a ‘PING’ message similar to lines 32-33 of Figure 28.5, p. 744. It then builds up ICMP echo request messages and sends them to the source node every 1 second through the PF_PACKET socket. It also reads incoming echo response messages off the pg socket, in response to which it prints out the same kind of output as the code of Figure 28.8, p. 748. If this node and its preceding node have been previously visited in that order during the tour, then pinging would have already been initiated from the one to the other in response to the first visit, and nothing further should nor need be done during second and subsequent visits. In light of the above, note that once a node initiates pinging, it needs to read from both its rt and pg sockets, necessitating the use of the select function. As will be clear from what follows below, the application will anyway be needing also to simultaneously monitor its UDP socket for incoming multicast datagrams. When the last node on the tour is reached, and if this is the first time it is visited, it joins the multicast group and starts pinging the preceding node (if it is not already doing so). After a few echo replies are received (five, say), it sends out the multicast message below on its UDP socket (i.e., the node should wait about five seconds before sending the multicast message) : <<<<< This is node vmi . Tour has ended . Group members please identify yourselves. >>>>> where vmi is the name (not IP address) of the node. The node should also print this message out on stdout preceded, on the same line, by the phrase: Node vmi . Sending: <then print out the message sent>. Each node vmj receiving this message should print out the message received preceded, on the same line, by the phrase: Node vmj . Received <then print out the message received>. Each such node in step a above should then immediately stop its pinging activity. The node should then send out the following multicast message: <<<<< Node vmj . I am a member of the group. >>>>> and print out this message preceded, on the same line, by the phrase: Node vmj . Sending: <then print out the message sent>. Each node receiving these second multicast messages (i.e., the messages that nodes – including itself – sent out in step c above) should print each such message out preceded, on the same line, by the phrase: Node vmk . Received: <then print out the message received>. Reading from the socket in step d above should be implemented with a 5-second timeout. When the timeout expires, the node should print out another message to the effect that it is terminating the Tour application, and gracefully exit its Tour process. Note that under Multicast specifications, the last node in the tour, which sends out the End of Tour message, should itself receive a copy of that message and, when it does, it should behave exactly as do the other nodes in steps a. – e. above. ARP module specifications Your executable is evoked with no command line arguments. Like the Tour module, it will be running on every vm node. It uses the get_hw_addrs function of Assignment 3 to explore its node’s interfaces and build a set of <IP address , HW address> matching pairs for all eth0 interface IP addresses (including alias IP addresses, if any). Write out to stdout in some appropriately clear format the address pairs found. The module creates two sockets: a PF_PACKET socket and a Unix domain socket. The PF_PACKET should be of type SOCK_RAW (not type SOCK_DGRAM) with a protocol value of your choice (but not one of the standard values defined in <linux/if_ether.h>) which is, hopefully, unique to yourself. This value effectively becomes the protocol value for your implementation of ARP. Because this protocol value will be carried in the frame type / ‘length’ field of the Ethernet frame header (see Figure 4.3 of the ARP & RARP handout), the value chosen should be not less than 1536 (0x600) so that it is not misinterpreted as the length of an Ethernet 802.3 frame. The Unix domain socket should be of type SOCK_STREAM (not SOCK_DGRAM). It is a listening socket bound to a ‘well-known’ sun_path file. This socket will be used to communicate with the function areq that is implemented in the Tour module (see the section API specifications below). In this context, areq will act as the client and the ARP module as the server. The ARP module then sits in an infinite loop, monitoring these two sockets. As ARP request messages arrive on the PF_PACKET socket, the module processes them, and responds with ARP reply messages as appropriate. The protocol builds a ‘cache’ of matching <IP address , HW address> pairs from the replies (and requests – see below) it receives. For simplicity, and unlike the real ARP, we shall not implement timing out mechanisms for these cache entries. A cache entry has five parts: (i) IP address ; (ii) HW address ; (iii) sll_ifindex (the interface to be used for reaching the matching pair <(i) , (ii)>) ; (iv) sll_hatype ; and (v) a Unix-domain connection-socket descriptor for a connected client (see the section API specifications below for the latter three). When an ARP reply is being entered in the cache, the ARP module uses the socket descriptor in (v) to send a reply to the client, closes the connection socket, and deletes the socket descriptor from the cache entry. Note that, like the real ARP, when an ARP request is received by a node, and if the request pertains to that receiving node, the sender’s (see Figure 4.3 of the ARP & RARP handout) <IP address, HW address> matching pair should be entered into the cache if it is not already there (together, of course, with (iii) sll_ifindex & (iv) sll_hatype), or updated if need be if such an entry already exists in the cache. If the ARP request received does not pertain to the node receiving it, but there is already an entry in that receiving node's cache for the sender’s <IP address, HW address> matching pair, that entry should be checked and updated if need be. If there is no such entry, no action is taken (in particular, and unlike the case above, no new entry should be made in the receiving node's cache of the sender’s <IP address, HW address> matching pair if such an entry does not already exist). ARP request and reply messages have the same format as Figure 4.3 of the ARP & RARP handout, but with an extra 2-byte identification field added at the beginning which you fill with a value chosen so that it has a high probability of being unique to yourself. This value is to be echoed in the reply message, and helps to act as a further filter in case some other student happens to have fortuitously chosen the same value as yourself for the protocol parameter of the ARP PF_PACKET. Values in the fields of our ARP messages must be in network byte order. You might find the system header file <linux/if_arp.h> useful for manipulating ARP request and reply messages, but remember that our version of these messages have an extra two-byte field as mentioned above. Your code should print out on stdout, in some appropriately clear format, the contents of the Ethernet frame header and ARP request message you send. As described in Section 4.4 of the ARP & RARP handout, the node that responds to the request should, in its reply message, swap the two sender addresses with the two target addresses, as well as, of course, echo back the extra identification field sent with the request. The protocol at this responding node should print out, in an appropriately clear format, both the request frame (header and ARP message) it receives and the reply frame it sends. Similarly, the node that sent the request should print out the reply frame it receives. Finally, recall that the node issuing the request sends out a broadcast Ethernet frame, but the responding node replies with a unicast frame. API specifications The API is for communication between the Tour process and the ARP process. It consists of a single function, areq, implemented in the Tour module. areq is called by send_v4 function of the application every time the latter want to send out an ICMP echo request message: int areq (struct sockaddr *IPaddr, socklen_t sockaddrlen, struct hwaddr *HWaddr); IPaddr contains the primary or alias IPaddress of a ‘target’ node on the LAN for which the corresponding hardware address is being requested. hwaddr is a new structure (and not a pre-existing type) modeled on the sockaddr_ll of PF_PACKET; you will have to declare it in your code. It is used to return the requested hardware address to the caller of areq : structure hwaddr { int sll_ifindex; /* Interface number */ unsigned short sll_hatype; /* Hardware type */ unsigned char sll_halen; /* Length of address */ unsigned char sll_addr[8]; /* Physical layer address */ }; areq creates a Unix domain socket of type SOCK_STREAM and connects to the ‘well-known’ sun_path file of the ARP listening socket. It sends the IP address from parameter IPaddr and the information in the three fields of parameter HWaddr to ARP. It then blocks on a read awaiting a reply from ARP. This read should be backed up by a timeout since it is possible that no reply is received for the request. If a timeout occurs, areq should close the socket and return to its caller indicating failure (through its int return value). Your application code should print out on stdout, in some appropriately clear format, a notification every time areq is called, giving the IP address for which a HW address is being sought. It should similarly print out the result when the call to areq returns (HW address returned, or failure). When the ARP module receives a request for a HW address from areq through its Unix domain listening socket, it first checks if the required HW address is already in the cache. If so, it can respond immediately to the areq and close the Unix domain connection socket. Else : it makes an ‘incomplete’ entry in the cache, consisting of parts (i), (iii), (iv) and (v) ; puts out an ARP request message on the network on its PF_PACKET socket; and starts monitoring the areq connection socket for readability – if the areq client closes the connection socket (this would occur in response to a timeout in areq), ARP deletes the corresponding incomplete entry from the cache (and ignores any subsequent ARP reply from the network if such is received). On the other hand, if ARP receives a reply from the network, it updates the incomplete cache entry, responds to areq, and closes the connection socket.
bahrie127 / Binar Flutter Restapistudy case for raw material chapter 5 flutter engineering
androidwithabhishek / Image Search AppAn Android app using the Unsplash API to search, view, zoom, and download images in Low, Medium, and Raw quality. Built with Retrofit, Paging 3, Room (with caching), Hilt, Coil, and Material 3 UI
sweiss93 / LengthNestProOne-dimensional nest optimization software; minimizes scrap when cutting raw material lengths into shorter pieces
michealbalogun / Horizon DashboardCopyright 2012 United States Government as represented by the # Administrator of the National Aeronautics and Space Administration. # All Rights Reserved. # # Copyright 2012 Nebula, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. You may obtain # a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. import glob import logging import os import sys import warnings from django.utils.translation import pgettext_lazy from django.utils.translation import ugettext_lazy as _ from horizon.utils.escape import monkeypatch_escape from openstack_dashboard import enabled from openstack_dashboard import exceptions from openstack_dashboard.local import enabled as local_enabled from openstack_dashboard import theme_settings from openstack_dashboard.utils import config from openstack_dashboard.utils import settings as settings_utils monkeypatch_escape() _LOG = logging.getLogger(__name__) warnings.formatwarning = lambda message, category, *args, **kwargs: \ '%s: %s' % (category.__name__, message) ROOT_PATH = os.path.dirname(os.path.abspath(__file__)) if ROOT_PATH not in sys.path: sys.path.append(ROOT_PATH) DEBUG = False SITE_BRANDING = 'OpenStack Dashboard' WEBROOT = '/' LOGIN_URL = None LOGOUT_URL = None LOGIN_ERROR = None LOGIN_REDIRECT_URL = None MEDIA_ROOT = None MEDIA_URL = None STATIC_ROOT = None STATIC_URL = None SELECTABLE_THEMES = None INTEGRATION_TESTS_SUPPORT = False NG_TEMPLATE_CACHE_AGE = 2592000 ROOT_URLCONF = 'openstack_dashboard.urls' HORIZON_CONFIG = { 'user_home': 'openstack_dashboard.views.get_user_home', 'ajax_queue_limit': 10, 'auto_fade_alerts': { 'delay': 3000, 'fade_duration': 1500, 'types': ['alert-success', 'alert-info'] }, 'bug_url': None, 'help_url': "https://docs.openstack.org/", 'exceptions': {'recoverable': exceptions.RECOVERABLE, 'not_found': exceptions.NOT_FOUND, 'unauthorized': exceptions.UNAUTHORIZED}, 'modal_backdrop': 'static', 'angular_modules': [], 'js_files': [], 'js_spec_files': [], 'external_templates': [], 'plugins': [], 'integration_tests_support': INTEGRATION_TESTS_SUPPORT } # The OPENSTACK_IMAGE_BACKEND settings can be used to customize features # in the OpenStack Dashboard related to the Image service, such as the list # of supported image formats. OPENSTACK_IMAGE_BACKEND = { 'image_formats': [ ('', _('Select format')), ('aki', _('AKI - Amazon Kernel Image')), ('ami', _('AMI - Amazon Machine Image')), ('ari', _('ARI - Amazon Ramdisk Image')), ('docker', _('Docker')), ('iso', _('ISO - Optical Disk Image')), ('ova', _('OVA - Open Virtual Appliance')), ('ploop', _('PLOOP - Virtuozzo/Parallels Loopback Disk')), ('qcow2', _('QCOW2 - QEMU Emulator')), ('raw', _('Raw')), ('vdi', _('VDI - Virtual Disk Image')), ('vhd', _('VHD - Virtual Hard Disk')), ('vhdx', _('VHDX - Large Virtual Hard Disk')), ('vmdk', _('VMDK - Virtual Machine Disk')), ] } MIDDLEWARE = ( 'openstack_auth.middleware.OpenstackAuthMonkeyPatchMiddleware', 'debreach.middleware.RandomCommentMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'horizon.middleware.OperationLogMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'horizon.middleware.HorizonMiddleware', 'horizon.themes.ThemeMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'openstack_dashboard.contrib.developer.profiler.middleware.' 'ProfilerClientMiddleware', 'openstack_dashboard.contrib.developer.profiler.middleware.' 'ProfilerMiddleware', ) CACHED_TEMPLATE_LOADERS = [ 'django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader', 'horizon.loaders.TemplateLoader' ] ADD_TEMPLATE_LOADERS = [] ADD_TEMPLATE_DIRS = [] TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(ROOT_PATH, 'templates')], 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.i18n', 'django.template.context_processors.request', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.contrib.messages.context_processors.messages', 'horizon.context_processors.horizon', 'openstack_dashboard.context_processors.openstack', ], 'loaders': [ 'horizon.themes.ThemeTemplateLoader' ], }, }, ] STATICFILES_FINDERS = ( 'django.contrib.staticfiles.finders.FileSystemFinder', 'horizon.contrib.staticfiles.finders.HorizonStaticFinder', 'compressor.finders.CompressorFinder', ) COMPRESS_PRECOMPILERS = ( ('text/scss', 'horizon.utils.scss_filter.HorizonScssFilter'), ) COMPRESS_CSS_FILTERS = ( 'compressor.filters.css_default.CssAbsoluteFilter', ) COMPRESS_ENABLED = True COMPRESS_OUTPUT_DIR = 'dashboard' COMPRESS_CSS_HASHING_METHOD = 'hash' COMPRESS_PARSER = 'compressor.parser.HtmlParser' INSTALLED_APPS = [ 'openstack_dashboard', 'django.contrib.contenttypes', 'django.contrib.auth', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.humanize', 'django_pyscss', 'debreach', 'openstack_dashboard.django_pyscss_fix', 'compressor', 'horizon', 'openstack_auth', ] AUTHENTICATION_BACKENDS = ('openstack_auth.backend.KeystoneBackend',) AUTHENTICATION_URLS = ['openstack_auth.urls'] AUTH_USER_MODEL = 'openstack_auth.User' MESSAGE_STORAGE = 'django.contrib.messages.storage.fallback.FallbackStorage' SESSION_ENGINE = 'django.contrib.sessions.backends.cache' CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': '127.0.0.1:11211', }, } SESSION_COOKIE_HTTPONLY = True SESSION_EXPIRE_AT_BROWSER_CLOSE = True SESSION_COOKIE_SECURE = False # Control whether the SESSION_TIMEOUT period is refreshed due to activity. If # False, SESSION_TIMEOUT acts as a hard limit. SESSION_REFRESH = True # This SESSION_TIMEOUT is a method to supercede the token timeout with a # shorter horizon session timeout (in seconds). If SESSION_REFRESH is True (the # default) SESSION_TIMEOUT acts like an idle timeout rather than being a hard # limit, but will never exceed the token expiry. If your token expires in 60 # minutes, a value of 1800 will log users out after 30 minutes of inactivity, # or 60 minutes with activity. Setting SESSION_REFRESH to False will make # SESSION_TIMEOUT act like a hard limit on session times. SESSION_TIMEOUT = 3600 # When using cookie-based sessions, log error when the session cookie exceeds # the following size (common browsers drop cookies above a certain size): SESSION_COOKIE_MAX_SIZE = 4093 # when doing upgrades, it may be wise to stick to PickleSerializer # NOTE(berendt): Check during the K-cycle if this variable can be removed. # https://bugs.launchpad.net/horizon/+bug/1349463 SESSION_SERIALIZER = 'django.contrib.sessions.serializers.PickleSerializer' # MEMOIZED_MAX_SIZE_DEFAULT allows setting a global default to help control # memory usage when caching. It should at least be 2 x the number of threads # with a little bit of extra buffer. MEMOIZED_MAX_SIZE_DEFAULT = 25 CSRF_FAILURE_VIEW = 'openstack_dashboard.views.csrf_failure' LANGUAGES = ( ('cs', 'Czech'), ('de', 'German'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('fr', 'French'), ('id', 'Indonesian'), ('it', 'Italian'), ('ja', 'Japanese'), ('ko', 'Korean (Korea)'), ('pl', 'Polish'), ('pt-br', 'Portuguese (Brazil)'), ('ru', 'Russian'), ('tr', 'Turkish'), ('zh-cn', 'Simplified Chinese'), ('zh-tw', 'Chinese (Taiwan)'), ) LANGUAGE_CODE = 'en' LANGUAGE_COOKIE_NAME = 'horizon_language' USE_I18N = True USE_L10N = True USE_TZ = True # Set OPENSTACK_CLOUDS_YAML_NAME to provide a nicer name for this cloud for # the clouds.yaml file than "openstack". OPENSTACK_CLOUDS_YAML_NAME = 'openstack' # If this cloud has a vendor profile in os-client-config, put it's name here. OPENSTACK_CLOUDS_YAML_PROFILE = '' OPENSTACK_KEYSTONE_DEFAULT_ROLE = '_member_' DEFAULT_EXCEPTION_REPORTER_FILTER = 'horizon.exceptions.HorizonReporterFilter' POLICY_FILES_PATH = os.path.join(ROOT_PATH, "conf") # Map of local copy of service policy files POLICY_FILES = { 'identity': 'keystone_policy.json', 'compute': 'nova_policy.json', 'volume': 'cinder_policy.json', 'image': 'glance_policy.json', 'network': 'neutron_policy.json', } # Services for which horizon has extra policies are defined # in POLICY_DIRS by default. POLICY_DIRS = { 'compute': ['nova_policy.d'], 'volume': ['cinder_policy.d'], } SECRET_KEY = None LOCAL_PATH = None SECURITY_GROUP_RULES = { 'all_tcp': { 'name': _('All TCP'), 'ip_protocol': 'tcp', 'from_port': '1', 'to_port': '65535', }, 'all_udp': { 'name': _('All UDP'), 'ip_protocol': 'udp', 'from_port': '1', 'to_port': '65535', }, 'all_icmp': { 'name': _('All ICMP'), 'ip_protocol': 'icmp', 'from_port': '-1', 'to_port': '-1', }, } ADD_INSTALLED_APPS = [] # NOTE: The default value of USER_MENU_LINKS will be set after loading # local_settings if it is not configured. USER_MENU_LINKS = None # 'key', 'label', 'path' AVAILABLE_THEMES = [ ( 'default', pgettext_lazy('Default style theme', 'Default'), 'themes/default' ), ( 'material', pgettext_lazy("Google's Material Design style theme", "Material"), 'themes/material' ), ] # The default theme if no cookie is present DEFAULT_THEME = 'default' # Theme Static Directory THEME_COLLECTION_DIR = 'themes' # Theme Cookie Name THEME_COOKIE_NAME = 'theme' POLICY_CHECK_FUNCTION = 'openstack_auth.policy.check' CSRF_COOKIE_AGE = None COMPRESS_OFFLINE_CONTEXT = 'horizon.themes.offline_context' SHOW_KEYSTONE_V2_RC = False SHOW_OPENRC_FILE = True SHOW_OPENSTACK_CLOUDS_YAML = True # Dictionary of currently available angular features ANGULAR_FEATURES = { 'images_panel': True, 'key_pairs_panel': True, 'flavors_panel': False, 'domains_panel': False, 'users_panel': False, 'groups_panel': False, 'roles_panel': True } # Notice all customizable configurations should be above this line XSTATIC_MODULES = settings_utils.BASE_XSTATIC_MODULES OPENSTACK_PROFILER = { 'enabled': False } if not LOCAL_PATH: LOCAL_PATH = os.path.join(ROOT_PATH, 'local') LOCAL_SETTINGS_DIR_PATH = os.path.join(LOCAL_PATH, "local_settings.d") _files = glob.glob(os.path.join(LOCAL_PATH, 'local_settings.conf')) _files.extend( sorted(glob.glob(os.path.join(LOCAL_SETTINGS_DIR_PATH, '*.conf')))) _config = config.load_config(_files, ROOT_PATH, LOCAL_PATH) # Apply the general configuration. config.apply_config(_config, globals()) try: from local.local_settings import * # noqa: F403,H303 except ImportError: _LOG.warning("No local_settings file found.") # configure templates if not TEMPLATES[0]['DIRS']: TEMPLATES[0]['DIRS'] = [os.path.join(ROOT_PATH, 'templates')] TEMPLATES[0]['DIRS'] += ADD_TEMPLATE_DIRS # configure template debugging TEMPLATES[0]['OPTIONS']['debug'] = DEBUG # Template loaders if DEBUG: TEMPLATES[0]['OPTIONS']['loaders'].extend( CACHED_TEMPLATE_LOADERS + ADD_TEMPLATE_LOADERS ) else: TEMPLATES[0]['OPTIONS']['loaders'].extend( [('django.template.loaders.cached.Loader', CACHED_TEMPLATE_LOADERS)] + ADD_TEMPLATE_LOADERS ) # allow to drop settings snippets into a local_settings_dir LOCAL_SETTINGS_DIR_PATH = os.path.join(ROOT_PATH, "local", "local_settings.d") if os.path.exists(LOCAL_SETTINGS_DIR_PATH): for (dirpath, dirnames, filenames) in os.walk(LOCAL_SETTINGS_DIR_PATH): for filename in sorted(filenames): if filename.endswith(".py"): try: with open(os.path.join(dirpath, filename)) as f: # pylint: disable=exec-used exec(f.read()) except Exception as e: _LOG.exception( "Can not exec settings snippet %s", filename) # The purpose of OPENSTACK_IMAGE_FORMATS is to provide a simple object # that does not contain the lazy-loaded translations, so the list can # be sent as JSON to the client-side (Angular). OPENSTACK_IMAGE_FORMATS = [fmt for (fmt, name) in OPENSTACK_IMAGE_BACKEND['image_formats']] if USER_MENU_LINKS is None: USER_MENU_LINKS = [] if SHOW_KEYSTONE_V2_RC: USER_MENU_LINKS.append({ 'name': _('OpenStack RC File v2'), 'icon_classes': ['fa-download', ], 'url': 'horizon:project:api_access:openrcv2', }) if SHOW_OPENRC_FILE: USER_MENU_LINKS.append({ 'name': (_('OpenStack RC File v3') if SHOW_KEYSTONE_V2_RC else _('OpenStack RC File')), 'icon_classes': ['fa-download', ], 'url': 'horizon:project:api_access:openrc', }) if not WEBROOT.endswith('/'): WEBROOT += '/' if LOGIN_URL is None: LOGIN_URL = WEBROOT + 'auth/login/' if LOGOUT_URL is None: LOGOUT_URL = WEBROOT + 'auth/logout/' if LOGIN_ERROR is None: LOGIN_ERROR = WEBROOT + 'auth/error/' if LOGIN_REDIRECT_URL is None: LOGIN_REDIRECT_URL = WEBROOT if MEDIA_ROOT is None: MEDIA_ROOT = os.path.abspath(os.path.join(ROOT_PATH, '..', 'media')) if MEDIA_URL is None: MEDIA_URL = WEBROOT + 'media/' if STATIC_ROOT is None: STATIC_ROOT = os.path.abspath(os.path.join(ROOT_PATH, '..', 'static')) if STATIC_URL is None: STATIC_URL = WEBROOT + 'static/' AVAILABLE_THEMES, SELECTABLE_THEMES, DEFAULT_THEME = ( theme_settings.get_available_themes( AVAILABLE_THEMES, DEFAULT_THEME, SELECTABLE_THEMES ) ) # Discover all the directories that contain static files STATICFILES_DIRS = theme_settings.get_theme_static_dirs( AVAILABLE_THEMES, THEME_COLLECTION_DIR, ROOT_PATH) # Ensure that we always have a SECRET_KEY set, even when no local_settings.py # file is present. See local_settings.py.example for full documentation on the # horizon.utils.secret_key module and its use. if not SECRET_KEY: if not LOCAL_PATH: LOCAL_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'local') # pylint: disable=ungrouped-imports from horizon.utils import secret_key SECRET_KEY = secret_key.generate_or_read_from_file(os.path.join(LOCAL_PATH, '.secret_key_store')) # populate HORIZON_CONFIG with auto-discovered JavaScript sources, mock files, # specs files and external templates. settings_utils.find_static_files(HORIZON_CONFIG, AVAILABLE_THEMES, THEME_COLLECTION_DIR, ROOT_PATH) INSTALLED_APPS = list(INSTALLED_APPS) # Make sure it's mutable settings_utils.update_dashboards( [ enabled, local_enabled, ], HORIZON_CONFIG, INSTALLED_APPS, ) INSTALLED_APPS[0:0] = ADD_INSTALLED_APPS NG_TEMPLATE_CACHE_AGE = NG_TEMPLATE_CACHE_AGE if not DEBUG else 0 # Include xstatic_modules specified in plugin XSTATIC_MODULES += HORIZON_CONFIG['xstatic_modules'] # Discover all the xstatic module entry points to embed in our HTML STATICFILES_DIRS += settings_utils.get_xstatic_dirs( XSTATIC_MODULES, HORIZON_CONFIG) # This base context objects gets added to the offline context generator # for each theme configured. HORIZON_COMPRESS_OFFLINE_CONTEXT_BASE = { 'WEBROOT': WEBROOT, 'STATIC_URL': STATIC_URL, 'HORIZON_CONFIG': HORIZON_CONFIG, 'NG_TEMPLATE_CACHE_AGE': NG_TEMPLATE_CACHE_AGE, } if DEBUG: logging.basicConfig(level=logging.DEBUG) # Here comes the Django settings deprecation section. Being at the very end # of settings.py allows it to catch the settings defined in local_settings.py # or inside one of local_settings.d/ snippets.
bahrie127 / Binar Flutter App Basicproject for raw material binar academy flutter app widget basic
EvaMaeRey / From Raw Data To Paper And PresentationThis contains examples of how to implement a reproducible workflow using .Rmd files, from raw data to a research paper as well as presentation materials (slides and poster).
ncolyer11 / S2RMS2RM calculates raw material needs from Litematica material lists, extracting recipe data from Minecraft's .jar files. "Raw materials" are somewhat subjective.
SOYJUN / Implement ODR ProtocolOverview For this assignment you will be developing and implementing : An On-Demand shortest-hop Routing (ODR) protocol for networks of fixed but arbitrary and unknown connectivity, using PF_PACKET sockets. The implementation is based on (a simplified version of) the AODV algorithm. Time client and server applications that send requests and replies to each other across the network using ODR. An API you will implement using Unix domain datagram sockets enables applications to communicate with the ODR mechanism running locally at their nodes. I shall be discussing the assignment in class on Wednesday, October 29, and Monday, November 3. The following should prove useful reference material for the assignment : Sections 15.1, 15.2, 15.4 & 15.6, Chapter 15, on Unix domain datagram sockets. PF_PACKET(7) from the Linux manual pages. You might find these notes made by a past CSE 533 student useful. Also, the following link http://www.pdbuchan.com/rawsock/rawsock.html contains useful code samples that use PF_PACKET sockets (as well as other code samples that use raw IP sockets which you do not need for this assignment, though you will be using these types of sockets for Assignment 4). Charles E. Perkins & Elizabeth M. Royer. “Ad-hoc On-Demand Distance Vector Routing.” Proceedings of the 2nd IEEE Workshop on Mobile Computing Systems and Applications, New Orleans, Louisiana, February 1999, pp. 90 - 100. The VMware environment minix.cs.stonybrook.edu is a Linux box running VMware. A cluster of ten Linux virtual machines, called vm1 through vm10, on which you can gain access as root and run your code have been created on minix. See VMware Environment Hosts for further details. VMware instructions takes you to a page that explains how to use the system. The ten virtual machines have been configured into a small virtual intranet of Ethernet LANs whose topology is (in principle) unknown to you. There is a course account cse533 on node minix, with home directory /users/cse533. In there, you will find a subdirectory Stevens/unpv13e , exactly as you are used to having on the cs system. You should develop your source code and makefiles for handing in accordingly. You will be handing in your source code on the minix node. Note that you do not need to link against the socket library (-lsocket) in Linux. The same is true for -lnsl and -lresolv. For example, take a look at how the LIBS variable is defined for Solaris, in /home/courses/cse533/Stevens/unpv13e_solaris2.10/Make.defines (on compserv1, say) : LIBS = ../libunp.a -lresolv -lsocket -lnsl -lpthread But if you take a look at Make.defines on minix (/users/cse533/Stevens/unpv13e/Make.defines) you will find only: LIBS = ../libunp.a -lpthread The nodes vm1 , . . . . . , vm10 are all multihomed : each has two (or more) interfaces. The interface ‘eth0 ’ should be completely ignored and is not to be used for this assignment (because it shows all ten nodes as if belonging to the same single Ethernet 192.168.1.0/24, rather than to an intranet composed of several Ethernets). Note that vm1 , . . . . . , vm10 are virtual machines, not real ones. One implication of this is that you will not be able to find out what their (virtual) IP addresses are by using nslookup and such. To find out these IP addresses, you need to look at the file /etc/hosts on minix. More to the point, invoking gethostbyname for a given vm will return to you only the (primary) IP address associated with the interface eth0 of that vm (which is the interface you will not be using). It will not return to you any other IP address for the node. Similarly, gethostbyaddr will return the vm node name only if you give it the (primary) IP address associated with the interface eth0 for the node. It will return nothing if you give it any other IP address for the node, even though the address is perfectly valid. Because of this, and because it will ease your task to be able to use gethostbyname and gethostbyaddr in a straightforward way, we shall adopt the (primary) IP addresses associated with interfaces eth0 as the ‘canonical’ IP addresses for the nodes (more on this below). Time client and server A time server runs on each of the ten vm machines. The client code should also be available on each vm so that it can be evoked at any of them. Normally, time clients/servers exchange request/reply messages using the TCP/UDP socket API that, effectively, enables them to receive service (indirectly, via the transport layer) from the local IP mechanism running at their nodes. You are to implement an API using Unix domain sockets to access the local ODR service directly (somewhat similar, in effect, to the way that raw sockets permit an application to access IP directly). Use Unix domain SOCK_DGRAM, rather than SOCK_STREAM, sockets (see Figures 15.5 & 15.6, pp. 418 - 419). API You need to implement a msg_send function that will be called by clients/servers to send requests/replies. The parameters of the function consist of : int giving the socket descriptor for write char* giving the ‘canonical’ IP address for the destination node, in presentation format int giving the destination ‘port’ number char* giving message to be sent int flag if set, force a route rediscovery to the destination node even if a non-‘stale’ route already exists (see below) msg_send will format these parameters into a single char sequence which is written to the Unix domain socket that a client/server process creates. The sequence will be read by the local ODR from a Unix domain socket that the ODR process creates for itself. Recall that the ‘canonical’ IP address for a vm node is the (primary) IP address associated with the eth0 interface for the node. It is what will be returned to you by a call to gethostbyname. Similarly, we need a msg_recv function which will do a (blocking) read on the application domain socket and return with : int giving socket descriptor for read char* giving message received char* giving ‘canonical’ IP address for the source node of message, in presentation format int* giving source ‘port’ number This information is written as a single char sequence by the ODR process to the domain socket that it creates for itself. It is read by msg_recv from the domain socket the client/server process creates, decomposed into the three components above, and returned to the caller of msg_recv. Also see the section below entitled ODR and the API. Client When a client is evoked at a node, it creates a domain datagram socket. The client should bind its socket to a ‘temporary’ (i.e., not ‘well-known’) sun_path name obtained from a call to tmpnam() (cf. line 10, Figure 15.6, p. 419) so that multiple clients may run at the same node. Note that tmpnam() is actually highly deprecated. You should use the mkstemp() function instead - look up the online man pages on minix (‘man mkstemp’) for details. As you run client code again and again during the development stage, the temporary files created by the calls to tmpnam / mkstemp start to proliferate since these files are not automatically removed when the client code terminates. You need to explicitly remove the file created by the client evocation by issuing a call to unlink() or to remove() in your client code just before the client code exits. See the online man pages on minix (‘man unlink’, ‘man remove’) for details. The client then enters an infinite loop repeating the steps below. The client prompts the user to choose one of vm1 , . . . . . , vm10 as a server node. Client msg_sends a 1 or 2 byte message to server and prints out on stdout the message client at node vm i1 sending request to server at vm i2 (In general, throughout this assignment, “trace” messages such as the one above should give the vm names and not IP addresses of the nodes.) Client then blocks in msg_recv awaiting response. This attempt to read from the domain socket should be backed up by a timeout in case no response ever comes. I leave it up to you whether you ‘wrap’ the call to msg_recv in a timeout, or you implement the timeout inside msg_recv itself. When the client receives a response it prints out on stdout the message client at node vm i1 : received from vm i2 <timestamp> If, on the other hand, the client times out, it should print out the message client at node vm i1 : timeout on response from vm i2 The client then retransmits the message out, setting the flag parameter in msg_send to force a route rediscovery, and prints out an appropriate message on stdout. This is done only once, when a timeout for a given message to the server occurs for the first time. Client repeats steps 1. - 3. Server The server creates a domain datagram socket. The server socket is assumed to have a (node-local) ‘well-known’ sun_path name which it binds to. This ‘well-known’ sun_path name is designated by a (network-wide) ‘well-known’ ‘port’ value. The time client uses this ‘port’ value to communicate with the server. The server enters an infinite sequence of calls to msg_recv followed by msg_send, awaiting client requests and responding to them. When it responds to a client request, it prints out on stdout the message server at node vm i1 responding to request from vm i2 ODR The ODR process runs on each of the ten vm machines. It is evoked with a single command line argument which gives a “staleness” time parameter, in seconds. It uses get_hw_addrs (available to you on minix in ~cse533/Asgn3_code) to obtain the index, and associated (unicast) IP and Ethernet addresses for each of the node’s interfaces, except for the eth0 and lo (loopback) interfaces, which should be ignored. In the subdirectory ~cse533/Asgn3_code (/users/cse533/Asgn3_code) on minix I am providing you with two functions, get_hw_addrs and prhwaddrs. These are analogous to the get_ifi_info_plus and prifinfo_plus of Assignment 2. Like get_ifi_info_plus, get_hw_addrs uses ioctl. get_hw_addrs gets the (primary) IP address, alias IP addresses (if any), HW address, and interface name and index value for each of the node's interfaces (including the loopback interface lo). prhwaddrs prints that information out. You should modify and use these functions as needed. Note that if an interface has no HW address associated with it (this is, typically, the case for the loopback interface lo for example), then ioctl returns get_hw_addrs a HW address which is the equivalent of 00:00:00:00:00:00 . get_hw_addrs stores this in the appropriate field of its data structures as it would with any HW address returned by ioctl, but when prhwaddrs comes across such an address, it prints a blank line instead of its usual ‘HWaddr = xx:xx:xx:xx:xx:xx’. The ODR process creates one or more PF_PACKET sockets. You will need to try out PF_PACKET sockets for yourselves and familiarize yourselves with how they behave. If, when you read from the socket and provide a sockaddr_ll structure, the kernel returns to you the index of the interface on which the incoming frame was received, then one socket will be enough. Otherwise, somewhat in the manner of Assignment 2, you shall have to create a PF_PACKET socket for every interface of interest (which are all the interfaces of the node, excluding interfaces lo and eth0 ), and bind a socket to each interface. Furthermore, if the kernel also returns to you the source Ethernet address of the frame in the sockaddr_ll structure, then you can make do with SOCK_DGRAM type PF_PACKET sockets; otherwise you shall have to use SOCK_RAW type sockets (although I would prefer you to use SOCK_RAW type sockets anyway, even if it turns out you can make do with SOCK_DGRAM type). The socket(s) should have a protocol value (no larger than 0xffff so that it fits in two bytes; this value is given as a network-byte-order parameter in the call(s) to function socket) that identifies your ODR protocol. The <linux/if_ether.h> include file (i.e., the file /usr/include/linux/if_ether.h) contains protocol values defined for the standard protocols typically found on an Ethernet LAN, as well as other values such as ETH_P_ALL. You should set protocol to a value of your choice which is not a <linux/if_ether.h> value, but which is, hopefully, unique to yourself. Remember that you will all be running your code using the same root account on the vm1 , . . . . . , vm10 nodes. So if two of you happen to choose the same protocol value and happen to be running on the same vm node at the same time, your applications will receive each other’s frames. For that reason, try to choose a protocol value for the socket(s) that is likely to be unique to yourself (something based on your Stony Brook student ID number, for example). This value effectively becomes the protocol value for your implementation of ODR, as opposed to some other cse 533 student's implementation. Because your value of protocol is to be carried in the frame type field of the Ethernet frame header, the value chosen should be not less than 1536 (0x600) so that it is not misinterpreted as the length of an Ethernet 802.3 frame. Note from the man pages for packet(7) that frames are passed to and from the socket without any processing in the frame content by the device driver on the other side of the socket, except for calculating and tagging on the 4-byte CRC trailer for outgoing frames, and stripping that trailer before delivering incoming frames to the socket. Nevertheless, if you write a frame that is less than 60 bytes, the necessary padding is automatically added by the device driver so that the frame that is actually transmitted out is the minimum Ethernet size of 64 bytes. When reading from the socket, however, any such padding that was introduced into a short frame at the sending node to bring it up to the minimum frame size is not stripped off - it is included in what you receive from the socket (thus, the minimum number of bytes you receive should never be less than 60). Also, you will have to build the frame header for outgoing frames yourselves (assuming you use SOCK_RAW type sockets). Bear in mind that the field values in that header have to be in network order. The ODR process also creates a domain datagram socket for communication with application processes at the node, and binds the socket to a ‘well known’ sun_path name for the ODR service. Because it is dealing with fixed topologies, ODR is, by and large, considerably simpler than AODV. In particular, discovered routes are relatively stable and there is no need for all the paraphernalia that goes with the possibility of routes changing (such as maintenance of active nodes in the routing tables and timeout mechanisms; timeouts on reverse links; lifetime field in the RREP messages; etc.) Nor will we be implementing source_sequence_#s (in the RREQ messages), and dest_sequence_# (in RREQ and RREP messages). In reality, we should (though we will not, for the sake of simplicity, be doing so) implement some sort of sequence number mechanism, or some alternative mechanism such as split-horizon for example, if we are to avoid possible scenarios of routing loops in a “count to infinity” context (I shall explain this point in class). However, we want ODR to discover shortest-hop paths, and we want it to do so in a reasonably efficient manner. This necessitates having one or two aspects of its operations work in a different, possibly slightly more complicated, way than AODV does. ODR has several basic responsibilities : Build and maintain a routing table. For each destination in the table, the routing table structure should include, at a minimum, the next-hop node (in the form of the Ethernet address for that node) and outgoing interface index, the number of hops to the destination, and a timestamp of when the the routing table entry was made or last “reconfirmed” / updated. Note that a destination node in the table is to be identified only by its ‘canonical’ IP address, and not by any other IP addresses the node has. Generate a RREQ in response to a time client calling msg_send for a destination for which ODR has no route (or for which a route exists, but msg_send has the flag parameter set or the route has gone ‘stale’ – see below), and ‘flood’ the RREQ out on all the node’s interfaces (except for the interface it came in on and, of course, the interfaces eth0 and lo). Flooding is done using an Ethernet broadcast destination address (0xff:ff:ff:ff:ff:ff) in the outgoing frame header. Note that a copy of the broadcast packet is supposed to / might be looped back to the node that sends it (see p. 535 in the Stevens textbook). ODR will have to take care not to treat these copies as new incoming RREQs. Also note that ODR at the client node increments the broadcast_id every time it issues a new RREQ for any destination node. When a RREQ is received, ODR has to generate a RREP if it is at the destination node, or if it is at an intermediate node that happens to have a route (which is not ‘stale’ – see below) to the destination. Otherwise, it must propagate the RREQ by flooding it out on all the node’s interfaces (except the interface the RREQ arrived on). Note that as it processes received RREQs, ODR should enter the ‘reverse’ route back to the source node into its routing table, or update an existing entry back to the source node if the RREQ received shows a shorter-hop route, or a route with the same number of hops but going through a different neighbour. The timestamp associated with the table entry should be updated whenever an existing route is either “reconfirmed” or updated. Obviously, if the node is going to generate a RREP, updating an existing entry back to the source node with a more efficient route, or a same-hops route using a different neighbour, should be done before the RREP is generated. Unlike AODV, when an intermediate node receives a RREQ for which it generates a RREP, it should nevertheless continue to flood the RREQ it received if the RREQ pertains to a source node whose existence it has heretofore been unaware of, or the RREQ gives it a more efficient route than it knew of back to the source node (the reason for continuing to flood the RREQ is so that other nodes in the intranet also become aware of the existence of the source node or of the potentially more optimal reverse route to it, and update their tables accordingly). However, since an RREP for this RREQ is being sent by our node, we do not want other nodes who receive the RREQ propagated by our node, and who might be in a position to do so, to also send RREPs. So we need to introduce a field in the RREQ message, not present in the AODV specifications, which acts like a “RREP already sent” field. Our node sets this field before further propagating the RREQ and nodes receiving an RREQ with this field set do not send RREPs in response, even if they are in a position to do so. ODR may, of course, receive multiple, distinct instances of the same RREQ (the combination of source_addr and broadcast_id uniquely identifies the RREQ). Such RREQs should not be flooded out unless they have a lower hop count than instances of that RREQ that had previously been received. By the same token, if ODR is in a position to send out a RREP, and has already done so for this, now repeating, RREQ , it should not send out another RREP unless the RREQ shows a more efficient, previously unknown, reverse route back to the source node. In other words, ODR should not generate essentially duplicative RREPs, nor generate RREPs to instances of RREQs that reflect reverse routes to the source that are not more efficient than what we already have. Relay RREPs received back to the source node (this is done using the ‘reverse’ route entered into the routing table when the corresponding RREQ was processed). At the same time, a ‘forward’ path to the destination is entered into the routing table. ODR could receive multiple, distinct RREPs for the same RREQ. The ‘forward’ route entered in the routing table should be updated to reflect the shortest-hop route to the destination, and RREPs reflecting suboptimal routes should not be relayed back to the source. In general, maintaining a route and its associated timestamp in the table in response to RREPs received is done in the same manner described above for RREQs. Forward time client/server messages along the next hop. (The following is important – you will lose points if you do not implement it.) Note that such application payload messages (especially if they are the initial request from the client to the server, rather than the server response back to the client) can be like “free” RREPs, enabling nodes along the path from source (client) to destination (server) node to build a reverse path back to the client node whose existence they were heretofore unaware of (or, possibly, to update an existing route with a more optimal one). Before it forwards an application payload message along the next hop, ODR at an intermediate node (and also at the final destination node) should use the message to update its routing table in this way. Thus, calls to msg_send by time servers should never cause ODR at the server node to initiate RREQs, since the receipt of a time client request implies that a route back to the client node should now exist in the routing table. The only exception to this is if the server node has a staleness parameter of zero (see below). A routing table entry has associated with it a timestamp that gives the time the entry was made into the table. When a client at a node calls msg_send, and if an entry for the destination node already exists in the routing table, ODR first checks that the routing information is not ‘stale’. A stale routing table entry is one that is older than the value defined by the staleness parameter given as a command line argument to the ODR process when it is executed. ODR deletes stale entries (as well as non-stale entries when the flag parameter in msg_send is set) and initiates a route rediscovery by issuing a RREQ for the destination node. This will force periodic updating of the routing tables to take care of failed nodes along the current path, Ethernet addresses that might have changed, and so on. Similarly, as RREQs propagate through the intranet, existing stale table entries at intermediate nodes are deleted and new route discoveries propagated. As noted above when discussing the processing of RREQs and RREPs, the associated timestamp for an existing table entry is updated in response to having the route either “reconfirmed” or updated (this applies to both reverse routes, by virtue of RREQs received, and to forward routes, by virtue of RREPs). Finally, note that a staleness parameter of 0 essentially indicates that the discovered route will be used only once, when first discovered, and then discarded. Effectively, an ODR with staleness parameter 0 maintains no real routing table at all ; instead, it forces route discoveries at every step of its operation. As a practical matter, ODR should be run with staleness parameter values that are considerably larger than the longest RTT on the intranet, otherwise performance will degrade considerably (and collapse entirely as the parameter values approach 0). Nevertheless, for robustness, we need to implement a mechanism by which an intermediate node that receives a RREP or application payload message for forwarding and finds that its relevant routing table entry has since gone stale, can intiate a RREQ to rediscover the route it needs. RREQ, RREP, and time client/server request/response messages will all have to be carried as encapsulated ODR protocol messages that form the data payload of Ethernet frames. So we need to design the structure of ODR protocol messages. The format should contain a type field (0 for RREQ, 1 for RREP, 2 for application payload ). The remaining fields in an ODR message will depend on what type it is. The fields needed for (our simplified versions of AODV’s) RREQ and RREP should be fairly clear to you, but keep in mind that you need to introduce two extra fields: The “RREP already sent” bit or field in RREQ messages, as mentioned above. A “forced discovery” bit or field in both RREQ and RREP messages: When a client application forces route rediscovery, this bit should be set in the RREQ issued by the client node ODR. Intermediate nodes that are not the destination node but which do have a route to the destination node should not respond with RREPs to an RREQ which has the forced discovery field set. Instead, they should continue to flood the RREQ so that it eventually reaches the destination node which will then respond with an RREP. The intermediate nodes relaying such an RREQ must update their ‘reverse’ route back to the source node accordingly, even if the new route is less efficient (i.e., has more hops) than the one they currently have in their routing table. The destination node responds to the RREQ with an RREP in which this field is also set. Intermediate nodes that receive such a forced discovery RREP must update their ‘forward’ route to the destination node accordingly, even if the new route is less efficient (i.e., has more hops) than the one they currently have in their routing table. This behaviour will cause a forced discovery RREQ to be responded to only by the destination node itself and not any other node, and will cause intermediate nodes to update their routing tables to both source and destination nodes in accordance with the latest routing information received, to cover the possibility that older routes are no longer valid because nodes and/or links along their paths have gone down. A type 2, application payload, message needs to contain the following type of information : type = 2 ‘canonical’ IP address of source node ‘port’ number of source application process (This, of course, is not a real port number in the TCP/UDP sense, but simply a value that ODR at the source node uses to designate the sun_path name for the source application’s domain socket.) ‘canonical’ IP address of destination node ‘port’ number of destination application process (This is passed to ODR by the application process at the source node when it calls msg_send. Its designates the sun_path name for an application’s domain socket at the destination node.) hop count (This starts at 0 and is incremented by 1 at each hop so that ODR can make use of the message to update its routing table, as discussed above.) number of bytes in application message The fields above essentially constitute a ‘header’ for the ODR message. Note that fields which you choose to have carry numeric values (rather than ascii characters, for example) must be in network byte order. ODR-defined numeric-valued fields in type 0, RREQ, and type 1, RREP, messages must, of course, also be in network byte order. Also note that only the ‘canonical’ IP addresses are used for the source and destination nodes in the ODR header. The same has to be true in the headers for type 0, RREQ, and type 1, RREP, messages. The general rule is that ODR messages only carry ‘canonical’ IP node addresses. The last field in the type 2 ODR message is essentially the data payload of the message. application message given in the call to msg_send An ODR protocol message is encapsulated as the data payload of an Ethernet frame whose header it fills in as follows : source address = Ethernet address of outgoing interface of the current node where ODR is processing the message. destination address = Ethernet broadcast address for type 0 messages; Ethernet address of next hop node for type 1 & 2 messages. protocol field = protocol value for the ODR PF_PACKET socket(s). Last but not least, whenever ODR writes an Ethernet frame out through its socket, it prints out on stdout the message ODR at node vm i1 : sending frame hdr src vm i1 dest addr ODR msg type n src vm i2 dest vm i3 where addr is in presentation format (i.e., hexadecimal xx:xx:xx:xx:xx:xx) and gives the destination Ethernet address in the outgoing frame header. Other nodes in the message should be identified by their vm name. A message should be printed out for each packet sent out on a distinct interface. ODR and the API When the ODR process first starts, it must construct a table in which it enters all well-known ‘port’ numbers and their corresponding sun_path names. These will constitute permanent entries in the table. Thereafter, whenever it reads a message off its domain socket, it must obtain the sun_path name for the peer process socket and check whether that name is entered in the table. If not, it must select an ‘ephemeral’ ‘port’ value by which to designate the peer sun_path name and enter the pair < port value , sun_path name > into the table. Such entries cannot be permanent otherwise the table will grow unboundedly in time, with entries surviving for ever, beyond the peer processes’ demise. We must associate a time_to_live field with a non-permanent table entry, and purge the entry if nothing is heard from the peer for that amount of time. Every time a peer process for which a non-permanent table entry exists communicates with ODR, its time_to_live value should be reinitialized. Note that when ODR writes to a peer, it is possible for the write to fail because the peer does not exist : it could be a ‘well-known’ service that is not running, or we could be in the interval between a process with a non-permanent table entry terminating and the expiration of its time_to_live value. Notes A proper implementation of ODR would probably require that RREQ and RREP messages be backed up by some kind of timeout and retransmission mechanism since the network transmission environment is not reliable. This would considerably complicate the implementation (because at any given moment, a node could have multiple RREQs that it has flooded out, but for which it has still not received RREPs; the situation is further complicated by the fact that not all intermediate nodes receiving and relaying RREQs necessarily lie on a path to the destination, and therefore should expect to receive RREPs), and, learning-wise, would not add much to the experience you should have gained from Assignment 2.
emptyfield-ds / Teaching WarehouseWarehouse of (Raw) Teaching Materials
NitinBhore / Guess The ProductA manufacturing company is facing challenge to classify raw materials(products) received from vendors. To help them in classifying the raw materials, build a machine learning model that could predict the category based on certain input features.