summaryrefslogtreecommitdiff
path: root/kernels
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2012-11-26 23:52:26 -0500
committerLuke Shumaker <LukeShu@sbcglobal.net>2012-11-26 23:52:26 -0500
commit360e56ec622617a2b121c7ec51e3381ad89f0eab (patch)
treee74250415c5e21080779befbb7898bd151039d63 /kernels
parent34b4025bc7b0c6d8d47988decd140df38b1d98ac (diff)
parentb1c14cd929ca53e06945a5cda3965dc6fcd9d6b7 (diff)
downloadabslibre-360e56ec622617a2b121c7ec51e3381ad89f0eab.tar.gz
abslibre-360e56ec622617a2b121c7ec51e3381ad89f0eab.tar.bz2
abslibre-360e56ec622617a2b121c7ec51e3381ad89f0eab.zip
Merge branch 'master' of ssh://parabolagnulinux.org:1863/srv/git/abslibre
Diffstat (limited to 'kernels')
-rw-r--r--kernels/gradm/PKGBUILD27
-rwxr-xr-xkernels/linux-libre-grsec/Kbuild19
-rwxr-xr-xkernels/linux-libre-grsec/Kbuild.platforms6
-rwxr-xr-xkernels/linux-libre-grsec/PKGBUILD399
-rwxr-xr-xkernels/linux-libre-grsec/boot-logo.patch22682
-rwxr-xr-xkernels/linux-libre-grsec/change-default-console-loglevel.patch12
-rw-r--r--kernels/linux-libre-grsec/config.i6866177
-rw-r--r--kernels/linux-libre-grsec/config.x86_645943
-rw-r--r--kernels/linux-libre-grsec/irq_cfg_pointer-3.6.6.patch16
-rwxr-xr-xkernels/linux-libre-grsec/linux-libre-grsec.install110
-rwxr-xr-xkernels/linux-libre-grsec/linux-libre-grsec.preset14
-rw-r--r--kernels/linux-libre-grsec/module-init-wait-3.6.patch77
-rw-r--r--kernels/linux-libre-grsec/module-symbol-waiting-3.6.patch66
-rwxr-xr-xkernels/linux-libre-lts-rt/PKGBUILD25
-rwxr-xr-xkernels/linux-libre-lts-rt/ext4-options.patch2
-rwxr-xr-xkernels/linux-libre-lts-rt/linux-libre-lts-rt.install2
-rw-r--r--kernels/linux-libre-lts-rt/module-init-wait-3.0.patch77
-rw-r--r--kernels/linux-libre-lts-rt/module-symbol-waiting-3.0.patch66
-rwxr-xr-xkernels/linux-libre-rt/PKGBUILD17
-rw-r--r--kernels/linux-libre-rt/irq_cfg_pointer-3.6.6.patch16
-rwxr-xr-xkernels/linux-libre-rt/linux-libre-rt.install2
-rw-r--r--kernels/paxctl/PKGBUILD18
-rw-r--r--kernels/paxutils/PKGBUILD24
-rwxr-xr-xkernels/paxutils/paxutils174
-rwxr-xr-xkernels/xe-guest-utilities/PKGBUILD22
-rw-r--r--kernels/xen-docs/PKGBUILD20
-rw-r--r--[-rwxr-xr-x]kernels/xen/09_xen140
-rwxr-xr-xkernels/xen/24341.patch11
-rwxr-xr-xkernels/xen/24344.patch33
-rwxr-xr-xkernels/xen/24345.patch31
-rw-r--r--[-rwxr-xr-x]kernels/xen/PKGBUILD214
-rw-r--r--kernels/xen/archinit.patch450
-rwxr-xr-xkernels/xen/dom0_xz_decompression.patch3528
-rw-r--r--kernels/xen/proc-xen.mount9
-rw-r--r--kernels/xen/texi2html.patch10
-rw-r--r--kernels/xen/var-lib-xenstored.mount10
-rw-r--r--kernels/xen/xen.conf19
-rw-r--r--kernels/xen/xen.install38
-rwxr-xr-xkernels/xen/xen.patch21
-rw-r--r--kernels/xen/xenconsoled.service18
-rw-r--r--kernels/xen/xendomU@.service12
-rw-r--r--kernels/xen/xendomains.service15
-rw-r--r--kernels/xen/xenstored.service18
43 files changed, 36769 insertions, 3821 deletions
diff --git a/kernels/gradm/PKGBUILD b/kernels/gradm/PKGBUILD
new file mode 100644
index 000000000..b75f8286a
--- /dev/null
+++ b/kernels/gradm/PKGBUILD
@@ -0,0 +1,27 @@
+# Maintainer: Jonathan Liu <net147@gmail.com>
+pkgname=gradm
+pkgver=2.9.1
+_timestamp=201207201554
+pkgrel=1
+pkgdesc="Administrative interface for the grsecurity Role Based Access Control system"
+arch=('i686' 'x86_64' 'mips64el')
+url="http://grsecurity.net/"
+license=('GPL2')
+depends=('pam')
+source=("http://grsecurity.net/stable/${pkgname}-${pkgver}-${_timestamp}.tar.gz")
+md5sums=('b0ae140e30629988a773decf27638e0c')
+
+build() {
+ cd "${srcdir}/${pkgname}2"
+ sed -i -e "s/^CFLAGS :=/CFLAGS +=/" "Makefile"
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}2"
+ make DESTDIR="${pkgdir}" install
+ rm "${pkgdir}"/dev/grsec > /dev/null
+ rmdir "${pkgdir}"/dev > /dev/null
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/kernels/linux-libre-grsec/Kbuild b/kernels/linux-libre-grsec/Kbuild
new file mode 100755
index 000000000..8a9d7dceb
--- /dev/null
+++ b/kernels/linux-libre-grsec/Kbuild
@@ -0,0 +1,19 @@
+# Fail on warnings - also for files referenced in subdirs
+# -Werror can be disabled for specific files using:
+# CFLAGS_<file.o> := -Wno-error
+subdir-ccflags-y := -Wno-error
+
+# platform specific definitions
+include arch/mips/Kbuild.platforms
+obj-y := $(platform-y)
+
+# make clean traverses $(obj-) without having included .config, so
+# everything ends up here
+obj- := $(platform-)
+
+# mips object files
+# The object files are linked as core-y files would be linked
+
+obj-y += kernel/
+obj-y += mm/
+obj-y += math-emu/
diff --git a/kernels/linux-libre-grsec/Kbuild.platforms b/kernels/linux-libre-grsec/Kbuild.platforms
new file mode 100755
index 000000000..90a226888
--- /dev/null
+++ b/kernels/linux-libre-grsec/Kbuild.platforms
@@ -0,0 +1,6 @@
+# All platforms listed in alphabetic order
+
+platforms += loongson
+
+# include the platform specific files
+include $(patsubst %, $(srctree)/arch/mips/%/Platform, $(platforms))
diff --git a/kernels/linux-libre-grsec/PKGBUILD b/kernels/linux-libre-grsec/PKGBUILD
new file mode 100755
index 000000000..34eb84ed2
--- /dev/null
+++ b/kernels/linux-libre-grsec/PKGBUILD
@@ -0,0 +1,399 @@
+# Maintainer: Joakim Hernberg <jbh@alchemy.lu>
+# Contributor: Ray Rashif <schiv@archlinux.org>
+# Contributor: timbosa <tinny_tim@dodo.com.au>
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
+# Contributor: Thomas Baechler <thomas@archlinux.org>
+# Maintainer (Parabola): André Silva <emulatorman@lavabit.com>
+# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com>
+
+pkgbase=linux-libre-grsec # Build stock -LIBRE-GRSEC kernel
+#pkgbase=linux-libre-custom # Build kernel with a different name
+_basekernel=3.6
+_sublevel=7
+_grsecver=2.9.1
+_timestamp=201211251900
+pkgver=${_basekernel}.${_sublevel}
+pkgrel=5
+_lxopkgver=${_basekernel}.7 # nearly always the same as pkgver
+arch=('i686' 'x86_64' 'mips64el')
+url="http://linux-libre.fsfla.org/"
+license=('GPL2')
+makedepends=('xmlto' 'docbook-xsl')
+options=('!strip')
+source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gnu/linux-libre-${_basekernel}-gnu.tar.xz"
+ "http://linux-libre.fsfla.org/pub/linux-libre/releases/${pkgver}-gnu/patch-${_basekernel}-gnu-${pkgver}-gnu.xz"
+ "http://grsecurity.net/test/grsecurity-$_grsecver-$pkgver-$_timestamp.patch"
+ # the main kernel config files
+ 'config.i686' 'config.x86_64'
+ # standard config files for mkinitcpio ramdisk
+ "${pkgbase}.preset"
+ 'Kbuild'
+ 'Kbuild.platforms'
+ 'boot-logo.patch'
+ 'change-default-console-loglevel.patch'
+ #'module-symbol-waiting-3.6.patch'
+ #'module-init-wait-3.6.patch'
+ #'irq_cfg_pointer-3.6.6.patch'
+ "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2")
+md5sums=('a2312edd0265b5b07bd4b50afae2b380'
+ 'a4e642180c7d757a642175fe32e4a264'
+ 'a56e5d5ab9dd0f44677aa61466046ce6'
+ '9b4ec887671d9242eba16be5cba4f9dc'
+ '55695d7853abe483f4db189877fd5e36'
+ '5f66bed97a5c37e48eb2f71b2d354b9a'
+ '2967cecc3af9f954ccc822fd63dca6ff'
+ '8267264d9a8966e57fdacd1fa1fc65c4'
+ '86d3c12bdb77173617d2b9e170522ee0'
+ '9d3c56a4b999c8bfbd4018089a62f662'
+ #'670931649c60fcb3ef2e0119ed532bd4'
+ #'8a71abc4224f575008f974a099b5cf6f'
+ #'4909a0271af4e5f373136b382826717f'
+ '1dd80f353c705fef988346a8ef05d13f')
+if [ "$CARCH" != "mips64el" ]; then
+ # Don't use the Loongson-specific patches on non-mips64el arches.
+ unset source[${#source[@]}-1]
+ unset md5sums[${#md5sums[@]}-1]
+fi
+
+_kernelname=${pkgbase#linux-libre}
+_localversionname=-LIBRE-GRSEC
+
+build() {
+ cd "${srcdir}/linux-${_basekernel}"
+
+ if [ "${_basekernel}" != "${pkgver}" ]; then
+ patch -Np1 -i "${srcdir}/patch-${_basekernel}-gnu-${pkgver}-gnu"
+ fi
+
+ # Add grsecurity patches
+ patch -Np1 -i ${srcdir}/grsecurity-${_grsecver}-${pkgver}-${_timestamp}.patch
+ rm localversion-grsec
+
+ # Add freedo as boot logo
+ patch -Np1 -i "${srcdir}/boot-logo.patch"
+
+ # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param)
+ # remove this when a Kconfig knob is made available by upstream
+ # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
+ patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
+
+# # fix module initialisation
+# # https://bugs.archlinux.org/task/32122
+# patch -Np1 -i "${srcdir}/module-symbol-waiting-3.6.patch"
+# patch -Np1 -i "${srcdir}/module-init-wait-3.6.patch"
+
+# # fix FS#32615 - Check for valid irq_cfg pointer in smp_irq_move_cleanup_interrupt
+# patch -Np1 -i "${srcdir}/irq_cfg_pointer-3.6.6.patch"
+
+ if [ "$CARCH" == "mips64el" ]; then
+ sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre-grsec|" Makefile
+ sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \
+ < "${srcdir}/lxo-config.patch" > lxo-config.patch
+ msg2 "Adding loongson-community patches"
+ patch -Np1 -i ${srcdir}/${_basekernel}*-*-loongson-community.patch
+ patch -Np0 -i lxo-config.patch
+
+# ensure N32, add localversion, remove uevent helper as per
+# https://git.kernel.org/?p=linux/hotplug/udev.git;a=blob_plain;f=README
+# and make USB storage support builtin (e.g. for booting from USB
+# disks without slowly loading an initramfs)
+ sed -ri \
+ -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \
+ -e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \
+ -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \
+ -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \
+ ./.config
+ else
+ cat "${srcdir}/config.${CARCH}" > ./.config # simpler
+ fi
+
+ if [ "${_kernelname}" != "" ]; then
+ sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config
+ sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config
+ fi
+
+ # set extraversion to pkgrel
+ sed -ri "s|^(EXTRAVERSION =).*|\1 -${pkgrel}|" Makefile
+
+ # don't run depmod on 'make install'. We'll do this ourselves in packaging
+ sed -i '2iexit 0' scripts/depmod.sh
+
+ # get kernel version
+ make prepare
+
+ # load configuration
+ # Configure the kernel. Replace the line below with one of your choice.
+ #make menuconfig # CLI menu for configuration
+ #make nconfig # new CLI menu for configuration
+ #make xconfig # X-based configuration
+ #make oldconfig # using old config from previous kernel version
+ # ... or manually edit .config
+
+ # rewrite configuration
+ yes "" | make config >/dev/null
+
+ # save configuration for later reuse
+ if [ "${CARCH}" = "x86_64" ]; then
+ cat .config > "${startdir}/config.x86_64.last"
+ else
+ cat .config > "${startdir}/config.i686.last"
+ fi
+
+ ####################
+ # stop here
+ # this is useful to configure the kernel
+ #msg "Stopping build"; return 1
+ ####################
+
+ # build!
+ if [ "$CARCH" == "mips64el" ]; then
+ # The build system passes it directly to linker, disable to avoid
+ # having unknown -Wl,... options.
+ export LDFLAGS=""
+ # bzImage is arch-specific and not supported on mips; vmlinux is
+ # useful for oprofile.
+ make ${MAKEFLAGS} LOCALVERSION= vmlinux vmlinuz modules
+ else
+ make ${MAKEFLAGS} LOCALVERSION= bzImage modules
+ fi
+}
+
+_package() {
+ pkgdesc="The ${pkgbase} kernel and modules with grsecurity/PaX patches"
+ [ "${pkgbase}" = "linux-libre" ] && groups=('base')
+ depends=('gradm' 'paxutils' 'coreutils' 'linux-libre-firmware' 'kmod')
+ optdepends=('crda: to set the correct wireless channels of your country')
+ provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}")
+ conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}")
+ replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}")
+ backup=("etc/mkinitcpio.d/${pkgbase}.preset")
+ install=${pkgbase}.install
+ if [ "$CARCH" = "mips64el" ]; then
+ optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)')
+ conflicts+=('mkinitcpio<0.7')
+ else
+ depends+=('mkinitcpio>=0.7')
+ fi
+
+ cd "${srcdir}/linux-${_basekernel}"
+
+ KARCH=x86
+ [ $CARCH = "mips64el" ] && KARCH=mips
+
+ # get kernel version
+ _kernver="$(make LOCALVERSION= kernelrelease)"
+ _basekernel=${_kernver%%-*}
+ _basekernel=${_basekernel%.*}
+
+ mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot}
+ make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install
+
+ if [ "$CARCH" == "mips64el" ]; then
+ cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgbase}"
+ cp vmlinux "${pkgdir}/boot/vmlinux-${pkgbase}"
+ else
+ cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}"
+ fi
+
+ # add vmlinux
+ install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux"
+
+ # install fallback mkinitcpio.conf file and preset file for kernel
+ install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset"
+
+ # set correct depmod command for install
+ sed \
+ -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \
+ -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \
+ -i "${startdir}/${pkgbase}.install"
+ sed \
+ -e "1s|'linux*.*'|'${pkgbase}'|" \
+ -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \
+ -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \
+ -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \
+ -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset"
+
+# mkinitcpio 0.7 relies on bzImage to find the kernel version
+ if [ "$CARCH" == "mips64el" ]; then
+ sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|" \
+ -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset"
+ fi
+
+ # remove build and source links
+ rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build}
+ # remove the firmware
+ rm -rf "${pkgdir}/lib/firmware"
+ # gzip -9 all modules to save 100MB of space
+ find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
+ # make room for external modules
+ ln -s "../extramodules-${_basekernel}${_localversionname:--LIBRE-GRSEC}" "${pkgdir}/lib/modules/${_kernver}/extramodules"
+ # add real version for building modules and running depmod from post_install/upgrade
+ mkdir -p "${pkgdir}/lib/modules/extramodules-${_basekernel}${_localversionname:--LIBRE-GRSEC}"
+ echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}${_localversionname:--LIBRE-GRSEC}/version"
+
+ # Now we call depmod...
+ depmod -b "$pkgdir" -F System.map "$_kernver"
+
+ # move module tree /lib -> /usr/lib
+ mv "$pkgdir/lib" "$pkgdir/usr"
+}
+
+_package-headers() {
+ pkgdesc="Header files and scripts for building modules for ${pkgbase} kernel"
+ provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}")
+ conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers")
+ replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers")
+
+ KARCH=x86
+ [ $CARCH = "mips64el" ] && KARCH=mips
+
+# In case of repackaging this is empty
+ if [ -z "${_kernver}" ]; then
+ cd "${srcdir}/linux-${_basekernel}"
+ _kernver="$(make LOCALVERSION= kernelrelease)"
+ fi
+
+ install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}"
+
+ cd "${pkgdir}/usr/lib/modules/${_kernver}"
+ ln -sf ../../../src/linux-${_kernver} build
+
+ cd "${srcdir}/linux-${_basekernel}"
+ install -D -m644 Makefile \
+ "${pkgdir}/usr/src/linux-${_kernver}/Makefile"
+ install -D -m644 kernel/Makefile \
+ "${pkgdir}/usr/src/linux-${_kernver}/kernel/Makefile"
+ install -D -m644 .config \
+ "${pkgdir}/usr/src/linux-${_kernver}/.config"
+
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include"
+
+ for i in acpi asm-generic config crypto drm generated linux math-emu \
+ media mtd net pcmcia scsi sound trace video xen; do
+ cp -a include/${i} "${pkgdir}/usr/src/linux-${_kernver}/include/"
+ done
+
+ # copy arch includes for external modules
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}"
+ cp -a "arch/${KARCH}/include" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
+
+ # copy files necessary for later builds
+ cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}"
+ cp -a scripts "${pkgdir}/usr/src/linux-${_kernver}"
+
+ if [ "$CARCH" = "mips64el" ]; then
+ cp "arch/${KARCH}/Kbuild" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
+ cp -a "arch/${KARCH}/loongson" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
+ cp "${srcdir}/Kbuild.platforms" "${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/"
+ fi
+
+ # fix permissions on scripts dir
+ chmod og-w -R "${pkgdir}/usr/src/linux-${_kernver}/scripts"
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions"
+
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel"
+
+ cp arch/${KARCH}/Makefile "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
+
+ if [ "${CARCH}" = "i686" ]; then
+ cp arch/${KARCH}/Makefile_32.cpu "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
+ fi
+
+ cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel/"
+
+ # add headers for lirc package
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video"
+
+ cp drivers/media/video/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/"
+
+ for i in bt8xx cpia2 cx25840 cx88 em28xx pwc saa7134 sn9c102; do
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
+ cp -a drivers/media/video/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
+ done
+
+ # add docbook makefile
+ install -D -m644 Documentation/DocBook/Makefile \
+ "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile"
+
+ # add dm headers
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/md"
+ cp drivers/md/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/md"
+
+ # add inotify.h
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/linux"
+ cp include/linux/inotify.h "${pkgdir}/usr/src/linux-${_kernver}/include/linux/"
+
+ # add wireless headers
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/"
+ cp net/mac80211/*.h "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/"
+
+ # add dvb headers for external modules
+ # in reference to:
+ # http://bugs.archlinux.org/task/9912
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core"
+ cp drivers/media/dvb/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/"
+ # and...
+ # http://bugs.archlinux.org/task/11194
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
+ cp include/config/dvb/*.h "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
+
+ # add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
+ # in reference to:
+ # http://bugs.archlinux.org/task/13146
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
+ cp drivers/media/dvb/frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
+ cp drivers/media/video/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
+
+ # add dvb headers
+ # in reference to:
+ # http://bugs.archlinux.org/task/20402
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb"
+ cp drivers/media/dvb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb/"
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends"
+ cp drivers/media/dvb/frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners"
+ cp drivers/media/common/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/"
+
+ # add xfs and shmem for aufs building
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs"
+ mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/mm"
+ cp fs/xfs/xfs_sb.h "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h"
+
+ # copy in Kconfig files
+ for i in `find . -name "Kconfig*"`; do
+ mkdir -p "${pkgdir}"/usr/src/linux-${_kernver}/`echo ${i} | sed 's|/Kconfig.*||'`
+ cp ${i} "${pkgdir}/usr/src/linux-${_kernver}/${i}"
+ done
+
+ chown -R root.root "${pkgdir}/usr/src/linux-${_kernver}"
+ find "${pkgdir}/usr/src/linux-${_kernver}" -type d -exec chmod 755 {} \;
+
+ # strip scripts directory
+ find "${pkgdir}/usr/src/linux-${_kernver}/scripts" -type f -perm -u+w 2>/dev/null | while read binary ; do
+ case "$(file -bi "${binary}")" in
+ *application/x-sharedlib*) # Libraries (.so)
+ /usr/bin/strip ${STRIP_SHARED} "${binary}";;
+ *application/x-archive*) # Libraries (.a)
+ /usr/bin/strip ${STRIP_STATIC} "${binary}";;
+ *application/x-executable*) # Binaries
+ /usr/bin/strip ${STRIP_BINARIES} "${binary}";;
+ esac
+ done
+
+ # remove unneeded architectures
+ rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,c6x,cris,frv,h8300,hexagon,ia64,m32r,m68k,m68knommu,microblaze,mn10300,openrisc,parisc,powerpc,ppc,s390,score,sh,sh64,sparc,sparc64,tile,unicore32,um,v850,xtensa}
+ if [ "$CARCH" = "mips64el" ]; then
+ rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/x86
+ else
+ rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/mips
+ fi
+}
+
+pkgname=("${pkgbase}" "${pkgbase}-headers")
+for _p in ${pkgname[@]}; do
+ eval "package_${_p}() {
+ _package${_p#${pkgbase}}
+ }"
+done
+
+# vim:set ts=8 sts=2 sw=2 et:
diff --git a/kernels/linux-libre-grsec/boot-logo.patch b/kernels/linux-libre-grsec/boot-logo.patch
new file mode 100755
index 000000000..6a3c68550
--- /dev/null
+++ b/kernels/linux-libre-grsec/boot-logo.patch
@@ -0,0 +1,22682 @@
+diff -Nur linux-3.6.7/drivers/video/logo/logo_linux_clut224.ppm linux-3.6.7-LIBRE/drivers/video/logo/logo_linux_clut224.ppm
+--- linux-3.6.7/drivers/video/logo/logo_linux_clut224.ppm 2012-11-21 00:47:32.000000000 -0200
++++ linux-3.6.7-LIBRE/drivers/video/logo/logo_linux_clut224.ppm 2012-11-21 01:02:17.000000000 -0200
+@@ -1,1123 +1,861 @@
+ P3
+-80 80
++80 78
+ 255
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 3 3 3 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 1 1 1 0 0 0
+-0 0 0 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 2 1 0 2 1 0 3 2 2
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 2 2 2 0 0 0 3 4 3 26 28 28
+-37 38 37 37 38 37 14 17 19 2 2 2 0 0 0 2 2 2
+-5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 3 3 3 0 0 0 1 1 1 6 6 6
+-2 2 2 0 0 0 3 3 3 4 4 4 4 4 4 4 4 4
+-4 4 5 3 3 3 1 0 0 0 0 0 1 0 0 0 0 0
+-1 1 1 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-2 2 2 0 0 0 0 0 0 14 17 19 60 74 84 137 136 137
+-153 152 153 137 136 137 125 124 125 60 73 81 6 6 6 3 1 0
+-0 0 0 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 0 0 0 4 4 4 41 54 63 125 124 125
+-60 73 81 6 6 6 4 0 0 3 3 3 4 4 4 4 4 4
+-4 4 4 0 0 0 6 9 11 41 54 63 41 65 82 22 30 35
+-2 2 2 2 1 0 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 5 5 5 5 5 5 2 2 2 0 0 0
+-4 0 0 6 6 6 41 54 63 137 136 137 174 174 174 167 166 167
+-165 164 165 165 164 165 163 162 163 163 162 163 125 124 125 41 54 63
+-1 1 1 0 0 0 0 0 0 3 3 3 5 5 5 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5
+-3 3 3 2 0 0 4 0 0 60 73 81 156 155 156 167 166 167
+-163 162 163 85 115 134 5 7 8 0 0 0 4 4 4 5 5 5
+-0 0 0 2 5 5 55 98 126 90 154 193 90 154 193 72 125 159
+-37 51 59 2 0 0 1 1 1 4 5 5 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 5 5 5 4 4 4 1 1 1 0 0 0 3 3 3
+-37 38 37 125 124 125 163 162 163 174 174 174 158 157 158 158 157 158
+-156 155 156 156 155 156 158 157 158 165 164 165 174 174 174 166 165 166
+-125 124 125 16 19 21 1 0 0 0 0 0 0 0 0 4 4 4
+-5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 1 1 1
+-0 0 0 0 0 0 37 38 37 153 152 153 174 174 174 158 157 158
+-174 174 174 163 162 163 37 38 37 4 3 3 4 0 0 1 1 1
+-0 0 0 22 40 52 101 161 196 101 161 196 90 154 193 101 161 196
+-64 123 161 14 17 19 0 0 0 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5
+-5 5 5 2 2 2 0 0 0 4 0 0 24 26 27 85 115 134
+-156 155 156 174 174 174 167 166 167 156 155 156 154 153 154 157 156 157
+-156 155 156 156 155 156 155 154 155 153 152 153 158 157 158 167 166 167
+-174 174 174 156 155 156 60 74 84 16 19 21 0 0 0 0 0 0
+-1 1 1 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 5 5 5 6 6 6 3 3 3 0 0 0 4 0 0
+-13 16 17 60 73 81 137 136 137 165 164 165 156 155 156 153 152 153
+-174 174 174 177 184 187 60 73 81 3 1 0 0 0 0 1 1 2
+-22 30 35 64 123 161 136 185 209 90 154 193 90 154 193 90 154 193
+-90 154 193 21 29 34 0 0 0 3 2 2 4 4 5 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 3 3 3
+-0 0 0 0 0 0 10 13 16 60 74 84 157 156 157 174 174 174
+-174 174 174 158 157 158 153 152 153 154 153 154 156 155 156 155 154 155
+-156 155 156 155 154 155 154 153 154 157 156 157 154 153 154 153 152 153
+-163 162 163 174 174 174 177 184 187 137 136 137 60 73 81 13 16 17
+-4 0 0 0 0 0 3 3 3 5 5 5 4 4 4 4 4 4
+-5 5 5 4 4 4 1 1 1 0 0 0 3 3 3 41 54 63
+-131 129 131 174 174 174 174 174 174 174 174 174 167 166 167 174 174 174
+-190 197 201 137 136 137 24 26 27 4 0 0 16 21 25 50 82 103
+-90 154 193 136 185 209 90 154 193 101 161 196 101 161 196 101 161 196
+-31 91 132 3 6 7 0 0 0 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 2 2 2 0 0 0 4 0 0
+-4 0 0 43 57 68 137 136 137 177 184 187 174 174 174 163 162 163
+-155 154 155 155 154 155 156 155 156 155 154 155 158 157 158 165 164 165
+-167 166 167 166 165 166 163 162 163 157 156 157 155 154 155 155 154 155
+-153 152 153 156 155 156 167 166 167 174 174 174 174 174 174 131 129 131
+-41 54 63 5 5 5 0 0 0 0 0 0 3 3 3 4 4 4
+-1 1 1 0 0 0 1 0 0 26 28 28 125 124 125 174 174 174
+-177 184 187 174 174 174 174 174 174 156 155 156 131 129 131 137 136 137
+-125 124 125 24 26 27 4 0 0 41 65 82 90 154 193 136 185 209
+-136 185 209 101 161 196 53 118 160 37 112 160 90 154 193 34 86 122
+-7 12 15 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 3 3 3 0 0 0 0 0 0 5 5 5 37 38 37
+-125 124 125 167 166 167 174 174 174 167 166 167 158 157 158 155 154 155
+-156 155 156 156 155 156 156 155 156 163 162 163 167 166 167 155 154 155
+-137 136 137 153 152 153 156 155 156 165 164 165 163 162 163 156 155 156
+-156 155 156 156 155 156 155 154 155 158 157 158 166 165 166 174 174 174
+-167 166 167 125 124 125 37 38 37 1 0 0 0 0 0 0 0 0
+-0 0 0 24 26 27 60 74 84 158 157 158 174 174 174 174 174 174
+-166 165 166 158 157 158 125 124 125 41 54 63 13 16 17 6 6 6
+-6 6 6 37 38 37 80 127 157 136 185 209 101 161 196 101 161 196
+-90 154 193 28 67 93 6 10 14 13 20 25 13 20 25 6 10 14
+-1 1 2 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-1 1 1 1 0 0 4 3 3 37 38 37 60 74 84 153 152 153
+-167 166 167 167 166 167 158 157 158 154 153 154 155 154 155 156 155 156
+-157 156 157 158 157 158 167 166 167 167 166 167 131 129 131 43 57 68
+-26 28 28 37 38 37 60 73 81 131 129 131 165 164 165 166 165 166
+-158 157 158 155 154 155 156 155 156 156 155 156 156 155 156 158 157 158
+-165 164 165 174 174 174 163 162 163 60 74 84 16 19 21 13 16 17
+-60 73 81 131 129 131 174 174 174 174 174 174 167 166 167 165 164 165
+-137 136 137 60 73 81 24 26 27 4 0 0 4 0 0 16 19 21
+-52 104 138 101 161 196 136 185 209 136 185 209 90 154 193 27 99 146
+-13 20 25 4 5 7 2 5 5 4 5 7 1 1 2 0 0 0
+-4 4 4 4 4 4 3 3 3 2 2 2 2 2 2 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 0 0 0
+-0 0 0 13 16 17 60 73 81 137 136 137 174 174 174 166 165 166
+-158 157 158 156 155 156 157 156 157 156 155 156 155 154 155 158 157 158
+-167 166 167 174 174 174 153 152 153 60 73 81 16 19 21 4 0 0
+-4 0 0 4 0 0 6 6 6 26 28 28 60 74 84 158 157 158
+-174 174 174 166 165 166 157 156 157 155 154 155 156 155 156 156 155 156
+-155 154 155 158 157 158 167 166 167 167 166 167 131 129 131 125 124 125
+-137 136 137 167 166 167 167 166 167 174 174 174 158 157 158 125 124 125
+-16 19 21 4 0 0 4 0 0 10 13 16 49 76 92 107 159 188
+-136 185 209 136 185 209 90 154 193 26 108 161 22 40 52 6 10 14
+-2 3 3 1 1 2 1 1 2 4 4 5 4 4 5 4 4 5
+-4 4 5 2 2 1 0 0 0 0 0 0 0 0 0 2 2 2
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 5 5 5 3 3 3 0 0 0 1 0 0 4 0 0
+-37 51 59 131 129 131 167 166 167 167 166 167 163 162 163 157 156 157
+-157 156 157 155 154 155 153 152 153 157 156 157 167 166 167 174 174 174
+-153 152 153 125 124 125 37 38 37 4 0 0 4 0 0 4 0 0
+-4 3 3 4 3 3 4 0 0 6 6 6 4 0 0 37 38 37
+-125 124 125 174 174 174 174 174 174 165 164 165 156 155 156 154 153 154
+-156 155 156 156 155 156 155 154 155 163 162 163 158 157 158 163 162 163
+-174 174 174 174 174 174 174 174 174 125 124 125 37 38 37 0 0 0
+-4 0 0 6 9 11 41 54 63 90 154 193 136 185 209 146 190 211
+-136 185 209 37 112 160 22 40 52 6 10 14 3 6 7 1 1 2
+-1 1 2 3 3 3 1 1 2 3 3 3 4 4 4 4 4 4
+-2 2 2 2 0 0 16 19 21 37 38 37 24 26 27 0 0 0
+-0 0 0 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5
+-4 4 4 0 0 0 0 0 0 0 0 0 26 28 28 120 125 127
+-158 157 158 174 174 174 165 164 165 157 156 157 155 154 155 156 155 156
+-153 152 153 153 152 153 167 166 167 174 174 174 174 174 174 125 124 125
+-37 38 37 4 0 0 0 0 0 4 0 0 4 3 3 4 4 4
+-4 4 4 4 4 4 5 5 5 4 0 0 4 0 0 4 0 0
+-4 3 3 43 57 68 137 136 137 174 174 174 174 174 174 165 164 165
+-154 153 154 153 152 153 153 152 153 153 152 153 163 162 163 174 174 174
+-174 174 174 153 152 153 60 73 81 6 6 6 4 0 0 4 3 3
+-32 43 50 80 127 157 136 185 209 146 190 211 146 190 211 90 154 193
+-28 67 93 28 67 93 40 71 93 3 6 7 1 1 2 2 5 5
+-50 82 103 79 117 143 26 37 45 0 0 0 3 3 3 1 1 1
+-0 0 0 41 54 63 137 136 137 174 174 174 153 152 153 60 73 81
+-2 0 0 0 0 0
+-4 4 4 4 4 4 4 4 4 4 4 4 6 6 6 2 2 2
+-0 0 0 2 0 0 24 26 27 60 74 84 153 152 153 174 174 174
+-174 174 174 157 156 157 154 153 154 156 155 156 154 153 154 153 152 153
+-165 164 165 174 174 174 177 184 187 137 136 137 43 57 68 6 6 6
+-4 0 0 2 0 0 3 3 3 5 5 5 5 5 5 4 4 4
+-4 4 4 4 4 4 4 4 4 5 5 5 6 6 6 4 3 3
+-4 0 0 4 0 0 24 26 27 60 73 81 153 152 153 174 174 174
+-174 174 174 158 157 158 158 157 158 174 174 174 174 174 174 158 157 158
+-60 74 84 24 26 27 4 0 0 4 0 0 17 23 27 59 113 148
+-136 185 209 191 222 234 146 190 211 136 185 209 31 91 132 7 11 13
+-22 40 52 101 161 196 90 154 193 6 9 11 3 4 4 43 95 132
+-136 185 209 172 205 220 55 98 126 0 0 0 0 0 0 2 0 0
+-26 28 28 153 152 153 177 184 187 167 166 167 177 184 187 165 164 165
+-37 38 37 0 0 0
+-4 4 4 4 4 4 5 5 5 5 5 5 1 1 1 0 0 0
+-13 16 17 60 73 81 137 136 137 174 174 174 174 174 174 165 164 165
+-153 152 153 153 152 153 155 154 155 154 153 154 158 157 158 174 174 174
+-177 184 187 163 162 163 60 73 81 16 19 21 4 0 0 4 0 0
+-4 3 3 4 4 4 5 5 5 5 5 5 4 4 4 5 5 5
+-5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 5 5 5
+-6 6 6 4 0 0 4 0 0 4 0 0 24 26 27 60 74 84
+-166 165 166 174 174 174 177 184 187 165 164 165 125 124 125 24 26 27
+-4 0 0 4 0 0 5 5 5 50 82 103 136 185 209 172 205 220
+-146 190 211 136 185 209 26 108 161 22 40 52 7 12 15 44 81 103
+-71 116 144 28 67 93 37 51 59 41 65 82 100 139 164 101 161 196
+-90 154 193 90 154 193 28 67 93 0 0 0 0 0 0 26 28 28
+-125 124 125 167 166 167 163 162 163 153 152 153 163 162 163 174 174 174
+-85 115 134 4 0 0
+-4 4 4 5 5 5 4 4 4 1 0 0 4 0 0 34 47 55
+-125 124 125 174 174 174 174 174 174 167 166 167 157 156 157 153 152 153
+-155 154 155 155 154 155 158 157 158 166 165 166 167 166 167 154 153 154
+-125 124 125 26 28 28 4 0 0 4 0 0 4 0 0 5 5 5
+-5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 1 1 1
+-0 0 0 0 0 0 1 1 1 4 4 4 4 4 4 4 4 4
+-5 5 5 5 5 5 4 3 3 4 0 0 4 0 0 6 6 6
+-37 38 37 131 129 131 137 136 137 37 38 37 0 0 0 4 0 0
+-4 5 5 43 61 72 90 154 193 172 205 220 146 190 211 136 185 209
+-90 154 193 28 67 93 13 20 25 43 61 72 71 116 144 44 81 103
+-2 5 5 7 11 13 59 113 148 101 161 196 90 154 193 28 67 93
+-13 20 25 6 10 14 0 0 0 13 16 17 60 73 81 137 136 137
+-166 165 166 158 157 158 156 155 156 154 153 154 167 166 167 174 174 174
+-60 73 81 4 0 0
+-4 4 4 4 4 4 0 0 0 3 3 3 60 74 84 174 174 174
+-174 174 174 167 166 167 163 162 163 155 154 155 157 156 157 155 154 155
+-156 155 156 163 162 163 167 166 167 158 157 158 125 124 125 37 38 37
+-4 3 3 4 0 0 4 0 0 6 6 6 6 6 6 5 5 5
+-4 4 4 4 4 4 4 4 4 1 1 1 0 0 0 2 3 3
+-10 13 16 7 11 13 1 0 0 0 0 0 2 2 1 4 4 4
+-4 4 4 4 4 4 4 4 4 5 5 5 4 3 3 4 0 0
+-4 0 0 7 11 13 13 16 17 4 0 0 3 3 3 34 47 55
+-80 127 157 146 190 211 172 205 220 136 185 209 136 185 209 136 185 209
+-28 67 93 22 40 52 55 98 126 55 98 126 21 29 34 7 11 13
+-50 82 103 101 161 196 101 161 196 35 83 115 13 20 25 2 2 1
+-1 1 2 1 1 2 37 51 59 131 129 131 174 174 174 174 174 174
+-167 166 167 163 162 163 163 162 163 167 166 167 174 174 174 125 124 125
+-16 19 21 4 0 0
+-4 4 4 4 0 0 4 0 0 60 74 84 174 174 174 174 174 174
+-158 157 158 155 154 155 155 154 155 156 155 156 155 154 155 158 157 158
+-167 166 167 165 164 165 131 129 131 60 73 81 13 16 17 4 0 0
+-4 0 0 4 3 3 6 6 6 4 3 3 5 5 5 4 4 4
+-4 4 4 3 2 2 0 0 0 0 0 0 7 11 13 45 69 86
+-80 127 157 71 116 144 43 61 72 7 11 13 0 0 0 1 1 1
+-4 3 3 4 4 4 4 4 4 4 4 4 6 6 6 5 5 5
+-3 2 2 4 0 0 1 0 0 21 29 34 59 113 148 136 185 209
+-146 190 211 136 185 209 136 185 209 136 185 209 136 185 209 136 185 209
+-68 124 159 44 81 103 22 40 52 13 16 17 43 61 72 90 154 193
+-136 185 209 59 113 148 21 29 34 3 4 3 1 1 1 0 0 0
+-24 26 27 125 124 125 163 162 163 174 174 174 166 165 166 165 164 165
+-163 162 163 125 124 125 125 124 125 125 124 125 125 124 125 26 28 28
+-4 0 0 4 3 3
+-3 3 3 0 0 0 24 26 27 153 152 153 177 184 187 158 157 158
+-156 155 156 156 155 156 155 154 155 155 154 155 165 164 165 174 174 174
+-155 154 155 60 74 84 26 28 28 4 0 0 4 0 0 3 1 0
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3
+-2 0 0 0 0 0 0 0 0 32 43 50 72 125 159 101 161 196
+-136 185 209 101 161 196 101 161 196 79 117 143 32 43 50 0 0 0
+-0 0 0 2 2 2 4 4 4 4 4 4 3 3 3 1 0 0
+-0 0 0 4 5 5 49 76 92 101 161 196 146 190 211 146 190 211
+-136 185 209 136 185 209 136 185 209 136 185 209 136 185 209 90 154 193
+-28 67 93 13 16 17 37 51 59 80 127 157 136 185 209 90 154 193
+-22 40 52 6 9 11 3 4 3 2 2 1 16 19 21 60 73 81
+-137 136 137 163 162 163 158 157 158 166 165 166 167 166 167 153 152 153
+-60 74 84 37 38 37 6 6 6 13 16 17 4 0 0 1 0 0
+-3 2 2 4 4 4
+-3 2 2 4 0 0 37 38 37 137 136 137 167 166 167 158 157 158
+-157 156 157 154 153 154 157 156 157 167 166 167 174 174 174 125 124 125
+-37 38 37 4 0 0 4 0 0 4 0 0 4 3 3 4 4 4
+-4 4 4 4 4 4 5 5 5 5 5 5 1 1 1 0 0 0
+-0 0 0 16 21 25 55 98 126 90 154 193 136 185 209 101 161 196
+-101 161 196 101 161 196 136 185 209 136 185 209 101 161 196 55 98 126
+-14 17 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-22 40 52 90 154 193 146 190 211 146 190 211 136 185 209 136 185 209
+-136 185 209 136 185 209 136 185 209 101 161 196 35 83 115 7 11 13
+-17 23 27 59 113 148 136 185 209 101 161 196 34 86 122 7 12 15
+-2 5 5 3 4 3 6 6 6 60 73 81 131 129 131 163 162 163
+-166 165 166 174 174 174 174 174 174 163 162 163 125 124 125 41 54 63
+-13 16 17 4 0 0 4 0 0 4 0 0 1 0 0 2 2 2
+-4 4 4 4 4 4
+-1 1 1 2 1 0 43 57 68 137 136 137 153 152 153 153 152 153
+-163 162 163 156 155 156 165 164 165 167 166 167 60 74 84 6 6 6
+-4 0 0 4 0 0 5 5 5 4 4 4 4 4 4 4 4 4
+-4 5 5 6 6 6 4 3 3 0 0 0 0 0 0 11 15 18
+-40 71 93 100 139 164 101 161 196 101 161 196 101 161 196 101 161 196
+-101 161 196 101 161 196 101 161 196 101 161 196 136 185 209 136 185 209
+-101 161 196 45 69 86 6 6 6 0 0 0 17 23 27 55 98 126
+-136 185 209 146 190 211 136 185 209 136 185 209 136 185 209 136 185 209
+-136 185 209 136 185 209 90 154 193 22 40 52 7 11 13 50 82 103
+-136 185 209 136 185 209 53 118 160 22 40 52 7 11 13 2 5 5
+-3 4 3 37 38 37 125 124 125 157 156 157 166 165 166 167 166 167
+-174 174 174 174 174 174 137 136 137 60 73 81 4 0 0 4 0 0
+-4 0 0 4 0 0 5 5 5 3 3 3 3 3 3 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 41 54 63 137 136 137 125 124 125 131 129 131
+-155 154 155 167 166 167 174 174 174 60 74 84 6 6 6 4 0 0
+-4 3 3 6 6 6 4 4 4 4 4 4 4 4 4 5 5 5
+-4 4 4 1 1 1 0 0 0 3 6 7 41 65 82 72 125 159
+-101 161 196 101 161 196 101 161 196 90 154 193 90 154 193 101 161 196
+-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 136 185 209
+-136 185 209 136 185 209 80 127 157 55 98 126 101 161 196 146 190 211
+-136 185 209 136 185 209 136 185 209 101 161 196 136 185 209 101 161 196
+-136 185 209 101 161 196 35 83 115 22 30 35 101 161 196 172 205 220
+-90 154 193 28 67 93 7 11 13 2 5 5 3 4 3 13 16 17
+-85 115 134 167 166 167 174 174 174 174 174 174 174 174 174 174 174 174
+-167 166 167 60 74 84 13 16 17 4 0 0 4 0 0 4 3 3
+-6 6 6 5 5 5 4 4 4 5 5 5 4 4 4 5 5 5
+-5 5 5 5 5 5
+-1 1 1 4 0 0 41 54 63 137 136 137 137 136 137 125 124 125
+-131 129 131 167 166 167 157 156 157 37 38 37 6 6 6 4 0 0
+-6 6 6 5 5 5 4 4 4 4 4 4 4 5 5 2 2 1
+-0 0 0 0 0 0 26 37 45 58 111 146 101 161 196 101 161 196
+-101 161 196 90 154 193 90 154 193 90 154 193 101 161 196 101 161 196
+-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196
+-101 161 196 136 185 209 136 185 209 136 185 209 146 190 211 136 185 209
+-136 185 209 101 161 196 136 185 209 136 185 209 101 161 196 136 185 209
+-101 161 196 136 185 209 136 185 209 136 185 209 136 185 209 16 89 141
+-7 11 13 2 5 5 2 5 5 13 16 17 60 73 81 154 154 154
+-174 174 174 174 174 174 174 174 174 174 174 174 163 162 163 125 124 125
+-24 26 27 4 0 0 4 0 0 4 0 0 5 5 5 5 5 5
+-4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5
+-5 5 5 4 4 4
+-4 0 0 6 6 6 37 38 37 137 136 137 137 136 137 131 129 131
+-131 129 131 153 152 153 131 129 131 26 28 28 4 0 0 4 3 3
+-6 6 6 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0
+-13 20 25 51 88 114 90 154 193 101 161 196 101 161 196 90 154 193
+-90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 101 161 196
+-101 161 196 101 161 196 101 161 196 101 161 196 136 185 209 101 161 196
+-101 161 196 136 185 209 101 161 196 136 185 209 136 185 209 101 161 196
+-136 185 209 101 161 196 136 185 209 101 161 196 101 161 196 101 161 196
+-136 185 209 136 185 209 136 185 209 37 112 160 21 29 34 5 7 8
+-2 5 5 13 16 17 43 57 68 131 129 131 174 174 174 174 174 174
+-174 174 174 167 166 167 157 156 157 125 124 125 37 38 37 4 0 0
+-4 0 0 4 0 0 5 5 5 5 5 5 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-1 1 1 4 0 0 41 54 63 153 152 153 137 136 137 137 136 137
+-137 136 137 153 152 153 125 124 125 24 26 27 4 0 0 3 2 2
+-4 4 4 4 4 4 4 3 3 4 0 0 3 6 7 43 61 72
+-64 123 161 101 161 196 90 154 193 90 154 193 90 154 193 90 154 193
+-90 154 193 90 154 193 90 154 193 90 154 193 101 161 196 90 154 193
+-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196
+-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196
+-136 185 209 101 161 196 101 161 196 136 185 209 136 185 209 101 161 196
+-101 161 196 90 154 193 28 67 93 13 16 17 7 11 13 3 6 7
+-37 51 59 125 124 125 163 162 163 174 174 174 167 166 167 166 165 166
+-167 166 167 131 129 131 60 73 81 4 0 0 4 0 0 4 0 0
+-3 3 3 5 5 5 6 6 6 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 41 54 63 137 136 137 153 152 153 137 136 137
+-153 152 153 157 156 157 125 124 125 24 26 27 0 0 0 2 2 2
+-4 4 4 4 4 4 2 0 0 0 0 0 28 67 93 90 154 193
+-90 154 193 90 154 193 90 154 193 90 154 193 64 123 161 90 154 193
+-90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 101 161 196
+-90 154 193 101 161 196 101 161 196 101 161 196 90 154 193 136 185 209
+-101 161 196 101 161 196 136 185 209 101 161 196 136 185 209 101 161 196
+-101 161 196 101 161 196 136 185 209 101 161 196 101 161 196 90 154 193
+-35 83 115 13 16 17 3 6 7 2 5 5 13 16 17 60 74 84
+-154 154 154 166 165 166 165 164 165 158 157 158 163 162 163 157 156 157
+-60 74 84 13 16 17 4 0 0 4 0 0 3 2 2 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-1 1 1 4 0 0 41 54 63 157 156 157 155 154 155 137 136 137
+-153 152 153 158 157 158 137 136 137 26 28 28 2 0 0 2 2 2
+-4 4 4 4 4 4 1 0 0 6 10 14 34 86 122 90 154 193
+-64 123 161 90 154 193 64 123 161 90 154 193 90 154 193 90 154 193
+-64 123 161 90 154 193 90 154 193 90 154 193 90 154 193 90 154 193
+-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196
+-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 101 161 196
+-136 185 209 101 161 196 136 185 209 90 154 193 26 108 161 22 40 52
+-13 16 17 5 7 8 2 5 5 2 5 5 37 38 37 165 164 165
+-174 174 174 163 162 163 154 154 154 165 164 165 167 166 167 60 73 81
+-6 6 6 4 0 0 4 0 0 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 6 6 6 41 54 63 156 155 156 158 157 158 153 152 153
+-156 155 156 165 164 165 137 136 137 26 28 28 0 0 0 2 2 2
+-4 4 5 4 4 4 2 0 0 7 12 15 31 96 139 64 123 161
+-90 154 193 64 123 161 90 154 193 90 154 193 64 123 161 90 154 193
+-90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 90 154 193
+-90 154 193 90 154 193 90 154 193 101 161 196 101 161 196 101 161 196
+-101 161 196 101 161 196 101 161 196 101 161 196 101 161 196 136 185 209
+-101 161 196 136 185 209 26 108 161 22 40 52 7 11 13 5 7 8
+-2 5 5 2 5 5 2 5 5 2 2 1 37 38 37 158 157 158
+-174 174 174 154 154 154 156 155 156 167 166 167 165 164 165 37 38 37
+-4 0 0 4 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-3 1 0 4 0 0 60 73 81 157 156 157 163 162 163 153 152 153
+-158 157 158 167 166 167 137 136 137 26 28 28 2 0 0 2 2 2
+-4 5 5 4 4 4 4 0 0 7 12 15 24 86 132 26 108 161
+-37 112 160 64 123 161 90 154 193 64 123 161 90 154 193 90 154 193
+-90 154 193 90 154 193 90 154 193 90 154 193 90 154 193 90 154 193
+-90 154 193 101 161 196 90 154 193 101 161 196 101 161 196 101 161 196
+-101 161 196 101 161 196 101 161 196 136 185 209 101 161 196 136 185 209
+-90 154 193 35 83 115 13 16 17 13 16 17 7 11 13 3 6 7
+-5 7 8 6 6 6 3 4 3 2 2 1 30 32 34 154 154 154
+-167 166 167 154 154 154 154 154 154 174 174 174 165 164 165 37 38 37
+-6 6 6 4 0 0 6 6 6 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 41 54 63 163 162 163 166 165 166 154 154 154
+-163 162 163 174 174 174 137 136 137 26 28 28 0 0 0 2 2 2
+-4 5 5 4 4 5 1 1 2 6 10 14 28 67 93 18 97 151
+-18 97 151 18 97 151 26 108 161 37 112 160 37 112 160 90 154 193
+-64 123 161 90 154 193 90 154 193 90 154 193 90 154 193 101 161 196
+-90 154 193 101 161 196 101 161 196 90 154 193 101 161 196 101 161 196
+-101 161 196 101 161 196 101 161 196 136 185 209 90 154 193 16 89 141
+-13 20 25 7 11 13 5 7 8 5 7 8 2 5 5 4 5 5
+-3 4 3 4 5 5 3 4 3 0 0 0 37 38 37 158 157 158
+-174 174 174 158 157 158 158 157 158 167 166 167 174 174 174 41 54 63
+-4 0 0 3 2 2 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-1 1 1 4 0 0 60 73 81 165 164 165 174 174 174 158 157 158
+-167 166 167 174 174 174 153 152 153 26 28 28 2 0 0 2 2 2
+-4 5 5 4 4 4 4 0 0 7 12 15 10 87 144 10 87 144
+-18 97 151 18 97 151 18 97 151 26 108 161 26 108 161 26 108 161
+-26 108 161 37 112 160 53 118 160 90 154 193 90 154 193 90 154 193
+-90 154 193 90 154 193 101 161 196 101 161 196 101 161 196 101 161 196
+-101 161 196 136 185 209 90 154 193 26 108 161 22 40 52 13 16 17
+-7 11 13 3 6 7 5 7 8 5 7 8 2 5 5 4 5 5
+-4 5 5 6 6 6 3 4 3 0 0 0 30 32 34 158 157 158
+-174 174 174 156 155 156 155 154 155 165 164 165 154 153 154 37 38 37
+-4 0 0 4 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 60 73 81 167 166 167 174 174 174 163 162 163
+-174 174 174 174 174 174 153 152 153 26 28 28 0 0 0 3 3 3
+-5 5 5 4 4 4 1 1 2 7 12 15 28 67 93 18 97 151
+-18 97 151 18 97 151 18 97 151 18 97 151 18 97 151 26 108 161
+-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161
+-90 154 193 26 108 161 90 154 193 90 154 193 90 154 193 101 161 196
+-101 161 196 26 108 161 22 40 52 13 16 17 7 11 13 2 5 5
+-2 5 5 6 6 6 2 5 5 4 5 5 4 5 5 4 5 5
+-3 4 3 5 5 5 3 4 3 2 0 0 30 32 34 137 136 137
+-153 152 153 137 136 137 131 129 131 137 136 137 131 129 131 37 38 37
+-4 0 0 4 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-1 1 1 4 0 0 60 73 81 167 166 167 174 174 174 166 165 166
+-174 174 174 177 184 187 153 152 153 30 32 34 1 0 0 3 3 3
+-5 5 5 4 3 3 4 0 0 7 12 15 10 87 144 10 87 144
+-18 97 151 18 97 151 18 97 151 26 108 161 26 108 161 26 108 161
+-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161
+-26 108 161 26 108 161 26 108 161 90 154 193 90 154 193 26 108 161
+-35 83 115 13 16 17 7 11 13 5 7 8 3 6 7 5 7 8
+-2 5 5 6 6 6 4 5 5 4 5 5 3 4 3 4 5 5
+-3 4 3 6 6 6 3 4 3 0 0 0 26 28 28 125 124 125
+-131 129 131 125 124 125 125 124 125 131 129 131 131 129 131 37 38 37
+-4 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-3 1 0 4 0 0 60 73 81 174 174 174 177 184 187 167 166 167
+-174 174 174 177 184 187 153 152 153 30 32 34 0 0 0 3 3 3
+-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 18 97 151
+-18 97 151 18 97 151 18 97 151 18 97 151 18 97 151 26 108 161
+-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161
+-26 108 161 90 154 193 26 108 161 26 108 161 24 86 132 13 20 25
+-7 11 13 13 20 25 22 40 52 5 7 8 3 4 3 3 4 3
+-4 5 5 3 4 3 4 5 5 3 4 3 4 5 5 3 4 3
+-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 125 124 125
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-1 1 1 4 0 0 60 73 81 174 174 174 177 184 187 174 174 174
+-174 174 174 190 197 201 157 156 157 30 32 34 1 0 0 3 3 3
+-5 5 5 4 3 3 4 0 0 7 12 15 10 87 144 10 87 144
+-18 97 151 19 95 150 19 95 150 18 97 151 18 97 151 26 108 161
+-18 97 151 26 108 161 26 108 161 26 108 161 26 108 161 90 154 193
+-26 108 161 26 108 161 26 108 161 22 40 52 2 5 5 3 4 3
+-28 67 93 37 112 160 34 86 122 2 5 5 3 4 3 3 4 3
+-3 4 3 3 4 3 3 4 3 2 2 1 3 4 3 4 4 4
+-4 5 5 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 60 73 81 174 174 174 177 184 187 174 174 174
+-174 174 174 190 197 201 158 157 158 30 32 34 0 0 0 2 2 2
+-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 18 97 151
+-10 87 144 19 95 150 19 95 150 18 97 151 18 97 151 18 97 151
+-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161
+-18 97 151 22 40 52 2 5 5 2 2 1 22 40 52 26 108 161
+-90 154 193 37 112 160 22 40 52 3 4 3 13 20 25 22 30 35
+-3 6 7 1 1 1 2 2 2 6 9 11 5 5 5 4 3 3
+-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-1 1 1 4 0 0 60 73 81 177 184 187 193 200 203 174 174 174
+-177 184 187 193 200 203 163 162 163 30 32 34 4 0 0 2 2 2
+-5 5 5 4 3 3 4 0 0 6 10 14 24 86 132 10 87 144
+-10 87 144 10 87 144 19 95 150 19 95 150 19 95 150 18 97 151
+-26 108 161 26 108 161 26 108 161 90 154 193 26 108 161 28 67 93
+-6 10 14 2 5 5 13 20 25 24 86 132 37 112 160 90 154 193
+-10 87 144 7 12 15 2 5 5 28 67 93 37 112 160 28 67 93
+-2 2 1 7 12 15 35 83 115 28 67 93 3 6 7 1 0 0
+-4 4 4 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 60 73 81 174 174 174 190 197 201 174 174 174
+-177 184 187 193 200 203 163 162 163 30 32 34 0 0 0 2 2 2
+-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 10 87 144
+-10 87 144 16 89 141 19 95 150 10 87 144 26 108 161 26 108 161
+-26 108 161 26 108 161 26 108 161 28 67 93 6 10 14 1 1 2
+-7 12 15 28 67 93 26 108 161 16 89 141 24 86 132 21 29 34
+-3 4 3 21 29 34 37 112 160 37 112 160 27 99 146 21 29 34
+-21 29 34 26 108 161 90 154 193 35 83 115 1 1 2 2 0 0
+-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 125 124 125
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-3 1 0 4 0 0 60 73 81 193 200 203 193 200 203 174 174 174
+-190 197 201 193 200 203 165 164 165 37 38 37 4 0 0 2 2 2
+-5 5 5 4 3 3 4 0 0 6 10 14 24 86 132 10 87 144
+-10 87 144 10 87 144 16 89 141 18 97 151 18 97 151 10 87 144
+-24 86 132 24 86 132 13 20 25 4 5 7 4 5 7 22 40 52
+-18 97 151 37 112 160 26 108 161 7 12 15 1 1 1 0 0 0
+-28 67 93 37 112 160 26 108 161 28 67 93 22 40 52 28 67 93
+-26 108 161 90 154 193 26 108 161 10 87 144 0 0 0 2 0 0
+-4 4 4 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 6 6 6 60 73 81 174 174 174 193 200 203 174 174 174
+-190 197 201 193 200 203 165 164 165 30 32 34 0 0 0 2 2 2
+-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 10 87 144
+-10 87 144 10 87 144 10 87 144 18 97 151 28 67 93 6 10 14
+-0 0 0 1 1 2 4 5 7 13 20 25 16 89 141 26 108 161
+-26 108 161 26 108 161 24 86 132 6 9 11 2 3 3 22 40 52
+-37 112 160 16 89 141 22 40 52 28 67 93 26 108 161 26 108 161
+-90 154 193 26 108 161 26 108 161 28 67 93 1 1 1 4 0 0
+-4 4 4 5 5 5 3 3 3 4 0 0 26 28 28 124 126 130
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 60 73 81 193 200 203 193 200 203 174 174 174
+-193 200 203 193 200 203 167 166 167 37 38 37 4 0 0 2 2 2
+-5 5 5 4 4 4 4 0 0 6 10 14 28 67 93 10 87 144
+-10 87 144 10 87 144 18 97 151 10 87 144 13 20 25 4 5 7
+-1 1 2 1 1 1 22 40 52 26 108 161 26 108 161 26 108 161
+-26 108 161 26 108 161 26 108 161 24 86 132 22 40 52 22 40 52
+-22 40 52 22 40 52 10 87 144 26 108 161 26 108 161 26 108 161
+-26 108 161 26 108 161 90 154 193 10 87 144 0 0 0 4 0 0
+-4 4 4 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 6 6 6 60 73 81 174 174 174 220 221 221 174 174 174
+-190 197 201 205 212 215 167 166 167 30 32 34 0 0 0 2 2 2
+-5 5 5 4 4 4 1 1 2 6 10 14 28 67 93 10 87 144
+-10 87 144 10 87 144 10 87 144 10 87 144 22 40 52 1 1 2
+-2 0 0 1 1 2 24 86 132 26 108 161 26 108 161 26 108 161
+-26 108 161 19 95 150 16 89 141 10 87 144 22 40 52 22 40 52
+-10 87 144 26 108 161 37 112 160 26 108 161 26 108 161 26 108 161
+-26 108 161 26 108 161 26 108 161 28 67 93 2 0 0 3 1 0
+-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 60 73 81 220 221 221 190 197 201 174 174 174
+-193 200 203 193 200 203 174 174 174 37 38 37 4 0 0 2 2 2
+-5 5 5 4 4 4 3 2 2 1 1 2 13 20 25 10 87 144
+-10 87 144 10 87 144 10 87 144 10 87 144 10 87 144 13 20 25
+-13 20 25 22 40 52 10 87 144 18 97 151 18 97 151 26 108 161
+-10 87 144 13 20 25 6 10 14 21 29 34 24 86 132 18 97 151
+-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161
+-26 108 161 90 154 193 18 97 151 13 20 25 0 0 0 4 3 3
+-4 4 4 5 5 5 3 3 3 0 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 6 6 6 60 73 81 174 174 174 220 221 221 174 174 174
+-190 197 201 220 221 221 167 166 167 30 32 34 1 0 0 2 2 2
+-5 5 5 4 4 4 4 4 5 2 5 5 4 5 7 13 20 25
+-28 67 93 10 87 144 10 87 144 10 87 144 10 87 144 10 87 144
+-10 87 144 10 87 144 18 97 151 10 87 144 18 97 151 18 97 151
+-28 67 93 2 3 3 0 0 0 28 67 93 26 108 161 26 108 161
+-26 108 161 26 108 161 26 108 161 26 108 161 26 108 161 26 108 161
+-26 108 161 10 87 144 13 20 25 1 1 2 3 2 2 4 4 4
+-4 4 4 5 5 5 3 3 3 2 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 60 73 81 220 221 221 190 197 201 174 174 174
+-193 200 203 193 200 203 174 174 174 26 28 28 4 0 0 4 3 3
+-5 5 5 4 4 4 4 4 4 4 4 5 1 1 2 2 5 5
+-4 5 7 22 40 52 10 87 144 10 87 144 18 97 151 10 87 144
+-10 87 144 10 87 144 10 87 144 10 87 144 10 87 144 18 97 151
+-10 87 144 28 67 93 22 40 52 10 87 144 26 108 161 18 97 151
+-18 97 151 18 97 151 26 108 161 26 108 161 26 108 161 26 108 161
+-22 40 52 1 1 2 0 0 0 2 3 3 4 4 4 4 4 4
+-4 4 4 5 5 5 4 4 4 0 0 0 26 28 28 131 129 131
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 6 6 6 60 73 81 174 174 174 220 221 221 174 174 174
+-190 197 201 220 221 221 190 197 201 41 54 63 4 0 0 2 2 2
+-6 6 6 4 4 4 4 4 4 4 4 5 4 4 5 3 3 3
+-1 1 2 1 1 2 6 10 14 22 40 52 10 87 144 18 97 151
+-18 97 151 10 87 144 10 87 144 10 87 144 18 97 151 10 87 144
+-10 87 144 18 97 151 26 108 161 18 97 151 18 97 151 10 87 144
+-26 108 161 26 108 161 26 108 161 10 87 144 28 67 93 6 10 14
+-1 1 2 1 1 2 4 3 3 4 4 5 4 4 4 4 4 4
+-5 5 5 5 5 5 1 1 1 4 0 0 37 51 59 137 136 137
+-137 136 137 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 4 0 0 60 73 81 220 221 221 193 200 203 174 174 174
+-193 200 203 193 200 203 220 221 221 137 136 137 13 16 17 4 0 0
+-2 2 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5
+-4 4 5 4 3 3 1 1 2 4 5 7 13 20 25 28 67 93
+-10 87 144 10 87 144 10 87 144 10 87 144 10 87 144 10 87 144
+-10 87 144 18 97 151 18 97 151 10 87 144 18 97 151 26 108 161
+-26 108 161 18 97 151 28 67 93 6 10 14 0 0 0 0 0 0
+-2 3 3 4 5 5 4 4 5 4 4 4 4 4 4 5 5 5
+-3 3 3 1 1 1 0 0 0 16 19 21 125 124 125 137 136 137
+-131 129 131 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 6 6 6 60 73 81 174 174 174 220 221 221 174 174 174
+-193 200 203 190 197 201 220 221 221 220 221 221 153 152 153 30 32 34
+-0 0 0 0 0 0 2 2 2 4 4 4 4 4 4 4 4 4
+-4 4 4 4 5 5 4 5 7 1 1 2 1 1 2 4 5 7
+-13 20 25 28 67 93 10 87 144 18 97 151 10 87 144 10 87 144
+-10 87 144 10 87 144 10 87 144 18 97 151 26 108 161 18 97 151
+-28 67 93 7 12 15 0 0 0 0 0 0 2 2 1 4 4 4
+-4 5 5 4 5 5 4 4 4 4 4 4 3 3 3 0 0 0
+-0 0 0 0 0 0 37 38 37 125 124 125 158 157 158 131 129 131
+-125 124 125 125 124 125 125 124 125 137 136 137 131 129 131 37 38 37
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 3 3 4 0 0 41 54 63 193 200 203 220 221 221 174 174 174
+-193 200 203 193 200 203 193 200 203 220 221 221 244 246 246 193 200 203
+-120 125 127 5 5 5 1 0 0 0 0 0 1 1 1 4 4 4
+-4 4 4 4 4 4 4 5 5 4 5 5 4 4 5 1 1 2
+-4 5 7 4 5 7 22 40 52 10 87 144 10 87 144 10 87 144
+-10 87 144 10 87 144 18 97 151 10 87 144 10 87 144 13 20 25
+-4 5 7 2 3 3 1 1 2 4 4 4 4 5 5 4 4 4
+-4 4 4 4 4 4 4 4 4 1 1 1 0 0 0 1 1 2
+-24 26 27 60 74 84 153 152 153 163 162 163 137 136 137 125 124 125
+-125 124 125 125 124 125 125 124 125 137 136 137 125 124 125 26 28 28
+-0 0 0 3 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 0 0 6 6 6 26 28 28 156 155 156 220 221 221 220 221 221
+-174 174 174 193 200 203 193 200 203 193 200 203 205 212 215 220 221 221
+-220 221 221 167 166 167 60 73 81 7 11 13 0 0 0 0 0 0
+-3 3 3 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5
+-4 4 5 1 1 2 1 1 2 4 5 7 22 40 52 10 87 144
+-10 87 144 10 87 144 10 87 144 22 40 52 4 5 7 1 1 2
+-1 1 2 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4
+-5 5 5 2 2 2 0 0 0 4 0 0 16 19 21 60 73 81
+-137 136 137 167 166 167 158 157 158 137 136 137 131 129 131 131 129 131
+-125 124 125 125 124 125 131 129 131 155 154 155 60 74 84 5 7 8
+-0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-5 5 5 4 0 0 4 0 0 60 73 81 193 200 203 220 221 221
+-193 200 203 193 200 203 193 200 203 193 200 203 205 212 215 220 221 221
+-220 221 221 220 221 221 220 221 221 137 136 137 43 57 68 6 6 6
+-4 0 0 1 1 1 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 5 4 4 5 3 2 2 1 1 2 2 5 5 13 20 25
+-22 40 52 22 40 52 13 20 25 2 3 3 1 1 2 3 3 3
+-4 5 7 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-1 1 1 0 0 0 2 3 3 41 54 63 131 129 131 166 165 166
+-166 165 166 155 154 155 153 152 153 137 136 137 137 136 137 125 124 125
+-125 124 125 137 136 137 137 136 137 125 124 125 37 38 37 4 3 3
+-4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 3 3 6 6 6 6 6 6 13 16 17 60 73 81 167 166 167
+-220 221 221 220 221 221 220 221 221 193 200 203 193 200 203 193 200 203
+-205 212 215 220 221 221 220 221 221 244 246 246 205 212 215 125 124 125
+-24 26 27 0 0 0 0 0 0 2 2 2 5 5 5 5 5 5
+-4 4 4 4 4 4 4 4 4 4 4 5 1 1 2 4 5 7
+-4 5 7 4 5 7 1 1 2 3 2 2 4 4 5 4 4 4
+-4 4 4 4 4 4 5 5 5 4 4 4 0 0 0 0 0 0
+-2 0 0 26 28 28 125 124 125 174 174 174 174 174 174 166 165 166
+-156 155 156 153 152 153 137 136 137 137 136 137 131 129 131 137 136 137
+-137 136 137 137 136 137 60 74 84 30 32 34 4 0 0 4 0 0
+-5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-5 5 5 6 6 6 4 0 0 4 0 0 6 6 6 26 28 28
+-125 124 125 174 174 174 220 221 221 220 221 221 220 221 221 193 200 203
+-205 212 215 220 221 221 205 212 215 220 221 221 220 221 221 244 246 246
+-193 200 203 60 74 84 13 16 17 4 0 0 0 0 0 3 3 3
+-5 5 5 5 5 5 4 4 4 4 4 4 4 4 5 3 3 3
+-1 1 2 3 3 3 4 4 5 4 4 5 4 4 4 4 4 4
+-5 5 5 5 5 5 2 2 2 0 0 0 0 0 0 13 16 17
+-60 74 84 174 174 174 193 200 203 174 174 174 167 166 167 163 162 163
+-153 152 153 153 152 153 137 136 137 137 136 137 153 152 153 137 136 137
+-125 124 125 41 54 63 24 26 27 4 0 0 4 0 0 5 5 5
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 3 3 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6
+-6 6 6 37 38 37 131 129 131 220 221 221 220 221 221 220 221 221
+-193 200 203 193 200 203 220 221 221 205 212 215 220 221 221 244 246 246
+-244 246 246 244 246 246 174 174 174 41 54 63 0 0 0 0 0 0
+-0 0 0 4 4 4 5 5 5 5 5 5 4 4 4 4 4 5
+-4 4 5 4 4 5 4 4 4 4 4 4 6 6 6 6 6 6
+-3 3 3 0 0 0 2 0 0 13 16 17 60 73 81 156 155 156
+-220 221 221 193 200 203 174 174 174 165 164 165 163 162 163 154 153 154
+-153 152 153 153 152 153 158 157 158 163 162 163 137 136 137 60 73 81
+-13 16 17 4 0 0 4 0 0 4 3 3 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-5 5 5 4 3 3 4 3 3 6 6 6 6 6 6 6 6 6
+-6 6 6 6 6 6 6 6 6 37 38 37 167 166 167 244 246 246
+-244 246 246 220 221 221 205 212 215 205 212 215 220 221 221 193 200 203
+-220 221 221 244 246 246 244 246 246 244 246 246 137 136 137 37 38 37
+-3 2 2 0 0 0 1 1 1 5 5 5 5 5 5 4 4 4
+-4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 1 1 1
+-0 0 0 5 5 5 43 57 68 153 152 153 193 200 203 220 221 221
+-177 184 187 174 174 174 167 166 167 166 165 166 158 157 158 157 156 157
+-158 157 158 166 165 166 156 155 156 85 115 134 13 16 17 4 0 0
+-4 0 0 4 0 0 5 5 5 5 5 5 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-5 5 5 4 3 3 6 6 6 6 6 6 4 0 0 6 6 6
+-6 6 6 6 6 6 6 6 6 6 6 6 13 16 17 60 73 81
+-177 184 187 220 221 221 220 221 221 220 221 221 205 212 215 220 221 221
+-220 221 221 205 212 215 220 221 221 244 246 246 244 246 246 205 212 215
+-125 124 125 30 32 34 0 0 0 0 0 0 2 2 2 5 5 5
+-4 4 4 4 4 4 4 4 4 1 1 1 0 0 0 1 0 0
+-37 38 37 131 129 131 205 212 215 220 221 221 193 200 203 174 174 174
+-174 174 174 174 174 174 167 166 167 165 164 165 166 165 166 167 166 167
+-158 157 158 125 124 125 37 38 37 4 0 0 4 0 0 4 0 0
+-4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 5 5 5 4 3 3 4 3 3 6 6 6 6 6 6
+-4 0 0 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6
+-26 28 28 125 124 125 205 212 215 220 221 221 220 221 221 220 221 221
+-205 212 215 220 221 221 205 212 215 220 221 221 220 221 221 244 246 246
+-244 246 246 190 197 201 60 74 84 16 19 21 4 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 16 19 21 120 125 127
+-177 184 187 220 221 221 205 212 215 177 184 187 174 174 174 177 184 187
+-174 174 174 174 174 174 167 166 167 174 174 174 166 165 166 137 136 137
+-60 73 81 13 16 17 4 0 0 4 0 0 4 3 3 6 6 6
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-5 5 5 4 3 3 5 5 5 4 3 3 6 6 6 4 0 0
+-6 6 6 6 6 6 4 0 0 6 6 6 4 0 0 6 6 6
+-6 6 6 6 6 6 37 38 37 137 136 137 193 200 203 220 221 221
+-220 221 221 205 212 215 220 221 221 205 212 215 205 212 215 220 221 221
+-220 221 221 220 221 221 244 246 246 166 165 166 43 57 68 2 2 2
+-0 0 0 4 0 0 16 19 21 60 73 81 157 156 157 202 210 214
+-220 221 221 193 200 203 177 184 187 177 184 187 177 184 187 174 174 174
+-174 174 174 174 174 174 174 174 174 157 156 157 60 74 84 24 26 27
+-4 0 0 4 0 0 4 0 0 6 6 6 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 5 5 5 4 3 3 5 5 5 6 6 6
+-6 6 6 4 0 0 6 6 6 6 6 6 6 6 6 4 0 0
+-4 0 0 4 0 0 6 6 6 24 26 27 60 73 81 167 166 167
+-220 221 221 220 221 221 220 221 221 205 212 215 205 212 215 205 212 215
+-205 212 215 220 221 221 220 221 221 220 221 221 205 212 215 137 136 137
+-60 74 84 125 124 125 137 136 137 190 197 201 220 221 221 193 200 203
+-177 184 187 177 184 187 177 184 187 174 174 174 174 174 174 177 184 187
+-190 197 201 174 174 174 125 124 125 37 38 37 6 6 6 4 0 0
+-4 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 5 5 5 5 5 5 4 3 3 6 6 6
+-4 0 0 6 6 6 6 6 6 6 6 6 4 0 0 6 6 6
+-6 6 6 6 6 6 4 0 0 4 0 0 6 6 6 6 6 6
+-125 124 125 193 200 203 244 246 246 220 221 221 205 212 215 205 212 215
+-205 212 215 193 200 203 205 212 215 205 212 215 220 221 221 220 221 221
+-193 200 203 193 200 203 205 212 215 193 200 203 193 200 203 177 184 187
+-190 197 201 190 197 201 174 174 174 190 197 201 193 200 203 190 197 201
+-153 152 153 60 73 81 4 0 0 4 0 0 4 0 0 3 2 2
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 3 3
+-6 6 6 4 3 3 4 3 3 4 3 3 6 6 6 6 6 6
+-4 0 0 6 6 6 6 6 6 6 6 6 4 0 0 4 0 0
+-4 0 0 26 28 28 131 129 131 220 221 221 244 246 246 220 221 221
+-205 212 215 193 200 203 205 212 215 193 200 203 193 200 203 205 212 215
+-220 221 221 193 200 203 193 200 203 193 200 203 190 197 201 174 174 174
+-174 174 174 190 197 201 193 200 203 193 200 203 167 166 167 125 124 125
+-6 6 6 4 0 0 4 0 0 4 3 3 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5
+-5 5 5 4 3 3 5 5 5 6 6 6 4 3 3 5 5 5
+-6 6 6 6 6 6 4 0 0 6 6 6 6 6 6 6 6 6
+-4 0 0 4 0 0 6 6 6 41 54 63 158 157 158 220 221 221
+-220 221 221 220 221 221 193 200 203 193 200 203 193 200 203 190 197 201
+-190 197 201 190 197 201 190 197 201 190 197 201 174 174 174 193 200 203
+-193 200 203 220 221 221 174 174 174 125 124 125 37 38 37 4 0 0
+-4 0 0 4 3 3 6 6 6 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 5 5 5 4 3 3 4 3 3 4 3 3 5 5 5
+-4 3 3 6 6 6 5 5 5 4 3 3 6 6 6 6 6 6
+-6 6 6 6 6 6 4 0 0 4 0 0 13 16 17 60 73 81
+-174 174 174 220 221 221 220 221 221 205 212 215 190 197 201 174 174 174
+-193 200 203 174 174 174 190 197 201 174 174 174 193 200 203 220 221 221
+-193 200 203 131 129 131 37 38 37 6 6 6 4 0 0 4 0 0
+-6 6 6 6 6 6 4 3 3 5 5 5 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5
+-5 5 5 4 3 3 4 3 3 5 5 5 4 3 3 4 3 3
+-5 5 5 6 6 6 6 6 6 4 0 0 6 6 6 6 6 6
+-6 6 6 125 124 125 174 174 174 220 221 221 220 221 221 193 200 203
+-193 200 203 193 200 203 193 200 203 193 200 203 220 221 221 158 157 158
+-60 73 81 6 6 6 4 0 0 4 0 0 5 5 5 6 6 6
+-5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 5 5 5 5 5 5 4 3 3 5 5 5 4 3 3
+-5 5 5 5 5 5 6 6 6 6 6 6 4 0 0 4 0 0
+-4 0 0 4 0 0 26 28 28 125 124 125 174 174 174 193 200 203
+-193 200 203 174 174 174 193 200 203 167 166 167 125 124 125 6 6 6
+-6 6 6 6 6 6 4 0 0 6 6 6 6 6 6 5 5 5
+-4 3 3 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5
+-4 3 3 6 6 6 4 0 0 6 6 6 6 6 6 6 6 6
+-6 6 6 4 0 0 4 0 0 6 6 6 37 38 37 125 124 125
+-153 152 153 131 129 131 125 124 125 37 38 37 6 6 6 6 6 6
+-6 6 6 4 0 0 6 6 6 6 6 6 4 3 3 5 5 5
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 5 5 5 5 5 5 4 3 3 5 5 5 4 3 3
+-6 6 6 6 6 6 4 0 0 4 0 0 6 6 6 6 6 6
+-24 26 27 24 26 27 6 6 6 6 6 6 6 6 6 4 0 0
+-6 6 6 6 6 6 4 0 0 6 6 6 5 5 5 4 3 3
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 5 5 5 4 3 3 5 5 5 6 6 6
+-4 0 0 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6
+-6 6 6 6 6 6 6 6 6 4 0 0 6 6 6 6 6 6
+-4 0 0 6 6 6 6 6 6 4 3 3 5 5 5 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 5 5 5 4 3 3 5 5 5
+-5 5 5 5 5 5 4 0 0 6 6 6 4 0 0 6 6 6
+-6 6 6 6 6 6 6 6 6 4 0 0 6 6 6 4 0 0
+-6 6 6 4 3 3 5 5 5 4 3 3 5 5 5 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5
+-4 3 3 6 6 6 4 3 3 6 6 6 6 6 6 6 6 6
+-4 0 0 6 6 6 4 0 0 6 6 6 6 6 6 6 6 6
+-6 6 6 4 3 3 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 5 5 5 4 3 3 5 5 5 4 0 0 6 6 6
+-6 6 6 4 0 0 6 6 6 6 6 6 4 0 0 6 6 6
+-4 3 3 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 5 5 5 4 3 3 5 5 5 6 6 6 4 3 3
+-4 3 3 6 6 6 6 6 6 4 3 3 6 6 6 4 3 3
+-5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 5 5 5 4 3 3 6 6 6
+-5 5 5 4 3 3 4 3 3 4 3 3 5 5 5 5 5 5
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 3 3
+-5 5 5 4 3 3 5 5 5 5 5 5 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+-4 4 4 4 4 4
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 6 9 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 6 9 23 30 36 44 54 65 57 72 88 44 54 65 6 12 15 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 31 41 52
++103 134 161 163 205 246 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 143 185 225
++82 108 129 8 14 16 0 2 0 0 6 9 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 17 24 30 126 162 196 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 161 203 243 92 119 140 0 6 9 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 44 54 65 154 195 235 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 138 174 208 21 27 33 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 70 96 117 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 157 198 239 49 59 70 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 7 0 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 3 6 52 62 74 170 212 252 170 212 252 170 212 252 170 212 252 129 165 199
++82 108 129 149 191 231 170 212 252 170 212 252 170 212 252 129 165 199 82 108 129 149 191 231
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 166 207 248 37 48 59 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 21 13 4 31 23 12 0 2 0 0 2 0 105 75 32 155 111 43 23 15 7
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 6 9 3 10 13 146 188 228 170 212 252 170 212 252 170 212 252 157 198 239 0 6 9
++0 2 0 52 62 74 170 212 252 170 212 252 154 195 235 0 6 9 0 2 0 55 66 77
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 151 193 233 17 24 30
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++10 12 8 23 15 7 139 99 44 206 148 61 67 49 21 0 2 0 125 92 35 206 148 61
++15 9 7 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 96 127 154 170 212 252 170 212 252 170 212 252 170 212 252 92 119 140 21 22 20
++10 12 8 53 68 84 170 212 252 170 212 252 92 119 140 10 12 8 7 10 5 53 68 84
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 134 170 204
++0 6 9 0 3 6 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 21 22 20
++62 64 61 38 40 37 0 2 0 34 26 8 212 153 66 64 46 18 0 2 0 170 124 49
++180 132 57 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++18 22 24 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 65 87 102 115 117 114
++43 44 42 88 115 136 170 212 252 170 212 252 68 83 99 108 110 107 60 62 59 88 115 136
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++80 98 121 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 10 12 8 56 58 55 95 96 94 178 180 177 215 217 214 198 200 197
++158 160 156 138 140 137 82 83 81 0 2 0 64 46 18 228 167 73 23 15 7 41 31 10
++250 179 73 55 39 17 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++75 94 116 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 63 78 94 0 2 0
++0 2 0 126 162 196 170 212 252 170 212 252 57 72 88 0 2 0 0 2 0 126 162 196
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++157 198 239 8 14 16 0 6 9 0 2 0 45 47 44 195 197 194 192 194 191 38 40 37
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 192 194 191 234 236 233 176 178 175 118 120 117 143 145 142 176 178 175
++215 217 214 234 236 233 234 236 233 104 106 103 0 2 0 142 101 40 134 100 43 0 2 0
++164 119 51 170 124 49 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++134 170 204 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 115 152 185 8 14 16
++49 59 70 166 207 248 170 212 252 170 212 252 119 150 178 8 14 16 55 66 77 166 207 248
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 92 119 140 0 2 0 0 2 0 200 202 199 254 255 252 254 255 252 244 246 243
++40 41 39 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 38 40 37 234 236 233 234 236 233 234 236 233 135 137 134 215 217 214 171 173 170
++141 142 139 138 140 137 138 140 137 135 137 134 31 32 30 3 6 2 212 153 66 15 9 7
++78 58 25 248 178 79 41 31 10 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 3 6 21 27 33
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 163 205 246 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 154 195 235 0 6 9 82 83 81 254 255 252 254 255 252 254 255 252 254 255 252
++188 190 187 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 62 64 61 234 236 233 234 236 233 234 236 233 198 200 197 131 133 130 198 200 197
++232 234 231 234 236 233 234 236 233 234 236 233 152 154 151 0 2 0 147 105 44 67 49 21
++23 15 7 250 179 73 158 114 46 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 6 9 61 76 92
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 154 195 235 103 134 161 80 98 121
++52 62 74 18 22 24 0 2 0 3 10 13 38 45 51 80 98 121 151 193 233 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 109 141 168 0 2 0 169 171 168 254 255 252 254 255 252 254 255 252 254 255 252
++226 228 225 65 66 64 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 43 44 42 234 236 233 234 236 233 234 236 233 234 236 233 131 133 130 192 194 191
++152 154 151 141 142 139 141 142 139 141 142 139 158 160 156 3 6 2 82 62 28 129 95 39
++0 2 0 206 148 61 248 178 79 21 13 4 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 96 115 138
++170 212 252 170 212 252 170 212 252 170 212 252 129 165 199 18 22 24 0 2 0 0 2 0
++34 26 8 75 55 22 114 83 33 95 68 30 55 39 17 7 0 0 0 6 9 84 103 125
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 84 103 125 0 2 0 229 231 228 254 255 252 254 255 252 254 255 252 171 173 170
++0 2 0 0 2 0 0 6 9 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 18 20 17 234 236 233 234 236 233 234 236 233 234 236 233 138 140 137 178 180 177
++226 228 225 234 236 233 234 236 233 234 236 233 231 233 230 45 47 44 23 15 7 190 136 56
++0 2 0 147 105 44 250 179 73 64 46 18 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 122 159 192
++170 212 252 170 212 252 170 212 252 126 162 196 0 2 0 26 20 13 190 136 56 245 175 76
++250 179 73 161 117 49 164 119 51 245 175 76 250 179 73 206 148 61 75 55 22 0 2 0
++126 162 196 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 68 83 99 0 2 0 252 254 250 254 255 252 254 255 252 254 255 252 71 73 70
++8 14 16 88 115 136 17 24 30 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 232 234 231 234 236 233 234 236 233 234 236 233 215 217 214 148 150 147
++183 185 181 141 142 139 135 137 134 135 137 134 141 142 139 87 89 86 0 2 0 202 145 58
++3 6 2 88 66 26 250 179 73 109 79 35 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 157 198 239
++170 212 252 170 212 252 166 207 248 26 33 39 26 20 13 224 163 69 250 179 73 250 179 73
++250 179 73 197 142 62 202 145 58 250 179 73 250 179 73 250 179 73 234 172 70 21 13 4
++38 45 51 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 52 62 74 21 22 20 254 255 252 254 255 252 254 255 252 254 255 252 21 22 20
++49 59 70 170 212 252 166 207 248 91 123 149 8 14 16 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 215 217 214 234 236 233 234 236 233 234 236 233 234 236 233 123 125 122
++188 190 187 229 231 228 234 236 233 234 236 233 222 224 221 118 120 117 0 2 0 168 123 54
++34 26 8 67 49 21 250 179 73 134 100 43 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 34 41 47 170 212 252
++170 212 252 170 212 252 85 112 133 0 2 0 164 119 51 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 129 95 39
++0 2 0 138 174 208 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 34 44 55 45 47 44 254 255 252 254 255 252 254 255 252 254 255 252 24 22 25
++52 62 74 170 212 252 170 212 252 170 212 252 138 174 208 10 16 18 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 178 180 177 234 236 233 234 236 233 234 236 233 234 236 233 141 142 139
++198 200 197 148 150 147 135 137 134 135 137 134 148 150 147 123 125 122 0 2 0 190 136 56
++21 13 4 78 58 25 250 179 73 129 95 39 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 82 108 129 170 212 252
++170 212 252 170 212 252 23 30 36 58 42 19 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 147 105 44
++0 2 0 139 181 221 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 34 41 47 45 47 44 254 255 252 254 255 252 254 255 252 254 255 252 56 58 55
++25 32 38 170 212 252 170 212 252 170 212 252 170 212 252 138 174 208 10 16 18 0 6 9
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 91 93 90 234 236 233 234 236 233 234 236 233 234 236 233 126 127 125
++169 171 168 222 224 221 234 236 233 229 231 228 178 180 177 71 73 70 0 2 0 212 153 66
++0 2 0 95 68 30 250 179 73 119 87 37 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 138 174 208 170 212 252
++170 212 252 154 195 235 0 2 0 125 92 35 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 119 87 37
++0 2 0 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 57 72 88 7 10 5 252 254 250 254 255 252 254 255 252 254 255 252 95 96 94
++0 6 9 166 207 248 170 212 252 170 212 252 170 212 252 170 212 252 138 174 208 8 14 16
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 7 10 5 222 224 221 234 236 233 234 236 233 234 236 233 141 142 139
++183 185 181 138 140 137 131 133 130 141 142 139 192 194 191 102 104 101 0 2 0 224 163 69
++0 2 0 105 75 32 250 179 73 55 39 17 7 0 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 21 27 33 170 212 252 170 212 252
++170 212 252 115 152 185 0 2 0 180 132 57 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 228 167 73 10 12 8
++38 45 51 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 82 108 129 0 2 0 222 224 221 254 255 252 254 255 252 254 255 252 158 160 156
++0 2 0 92 119 140 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 122 159 192
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 141 142 139 234 236 233 234 236 233 234 236 233 131 133 130
++185 187 183 231 233 230 222 224 221 158 160 156 138 140 137 48 50 48 3 6 2 250 179 73
++134 100 43 206 148 61 218 158 64 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 75 94 116 170 212 252 170 212 252
++170 212 252 92 119 140 0 2 0 224 163 69 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 87 61 23 7 0 0
++134 170 204 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 109 141 168 0 2 0 178 180 177 254 255 252 254 255 252 254 255 252 252 254 250
++39 43 45 10 16 18 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++88 115 136 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 45 47 44 234 236 233 234 236 233 234 236 233 131 133 130
++148 150 147 138 140 137 148 150 147 210 212 209 152 154 151 26 27 25 29 21 8 250 179 73
++250 179 73 234 172 70 55 39 17 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 126 162 196 170 212 252 170 212 252
++170 212 252 103 134 161 0 2 0 202 145 58 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 238 175 73 75 55 22 0 2 0 75 102 123
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 140 177 211 0 2 0 135 137 134 254 255 252 254 255 252 254 255 252 254 255 252
++183 185 181 0 2 0 75 94 116 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 57 72 88 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 162 164 161 234 236 233 234 236 233 135 137 134
++226 228 225 198 200 197 104 106 103 15 17 14 0 2 0 15 9 7 147 105 44 250 179 73
++248 178 79 55 39 17 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 6 9 21 27 33 170 212 252 170 212 252 170 212 252
++170 212 252 122 159 192 0 2 0 175 129 54 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 250 179 73 202 145 58 55 39 17 0 2 0 82 108 129 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 12 17 20 60 62 59 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 69 71 68 0 6 9 143 185 225 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 159 201 241 26 33 39 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 7 10 5 162 164 161 215 217 214 95 96 94
++56 58 55 0 2 0 0 2 0 0 2 0 61 44 16 238 175 73 250 179 73 250 179 73
++218 158 64 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 88 115 136 170 212 252 170 212 252 170 212 252
++170 212 252 143 185 225 0 2 0 147 105 44 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 212 153 66 95 68 30 0 2 0 8 14 16 103 134 161 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 68 83 99 0 2 0 231 233 230 254 255 252 254 255 252 254 255 252
++254 255 252 210 212 209 0 6 9 53 68 84 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 126 162 196 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 7 0 0 23 15 7 250 179 73 250 179 73 250 179 73
++250 179 73 29 21 8 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 6 9 154 195 235 170 212 252 170 212 252 170 212 252
++170 212 252 166 207 248 0 2 0 52 36 13 158 114 46 180 132 57 161 117 49 119 87 37
++41 31 10 0 2 0 0 2 0 72 87 103 154 195 235 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 115 152 185 0 2 0 152 154 151 254 255 252 238 241 237 85 87 84
++229 231 228 254 255 252 99 101 98 0 2 0 126 162 196 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 63 78 94 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 202 145 58 250 179 73 250 179 73
++250 179 73 105 75 32 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 32 39 45 0 2 0 57 72 88 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 85 112 133 12 17 20 0 2 0 0 2 0 0 2 0 0 2 0
++34 41 47 92 110 133 143 185 225 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 166 207 248 6 12 15 71 73 70 254 255 252 229 231 228 0 2 0
++141 142 139 254 255 252 231 233 230 10 12 8 34 44 55 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 154 195 235 6 12 15 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 125 92 35 250 179 73 250 179 73
++250 179 73 180 132 57 0 2 0 0 2 0 0 2 0 0 2 0 3 10 13 68 83 99
++129 165 199 85 112 133 0 2 0 122 159 192 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 126 162 196 119 156 189 134 170 204 149 191 231
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 57 72 88 3 6 2 242 244 240 254 255 252 35 37 34
++78 80 77 254 255 252 254 255 252 128 130 127 0 2 0 105 137 164 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 91 123 149 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 7 0 0 55 39 17 250 179 73 250 179 73
++250 179 73 245 175 76 7 10 5 0 2 0 44 54 65 103 134 161 161 203 243 170 212 252
++170 212 252 21 27 33 25 32 38 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 61 76 92 0 2 0 242 244 240 254 255 252 102 104 101
++10 12 8 231 233 230 254 255 252 244 246 243 26 27 25 21 27 33 159 201 241 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 32 39 45 0 6 9 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 218 158 64 250 179 73
++250 179 73 250 179 73 75 55 22 0 2 0 161 203 243 170 212 252 170 212 252 170 212 252
++115 147 174 0 2 0 91 123 149 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 159 201 241 146 188 228
++140 177 211 134 170 204 146 188 228 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 17 24 30 62 64 61 254 255 252 254 255 252 215 217 214
++0 2 0 102 104 101 254 255 252 254 255 252 166 168 165 0 2 0 72 87 103 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 129 165 199 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 105 75 32 250 179 73
++250 179 73 250 179 73 150 108 46 0 2 0 113 145 172 170 212 252 170 212 252 170 212 252
++49 59 70 3 10 13 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 166 207 248 109 141 168 65 87 102 28 35 41 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 6 9 28 35 41 70 96 117 138 174 208 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 0 2 0 102 104 101 254 255 252 254 255 252 254 255 252
++102 104 101 0 2 0 192 194 191 254 255 252 254 255 252 78 80 77 0 2 0 122 159 192
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 34 44 55 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 61 76 92 154 195 235 0 6 9 29 21 8 250 179 73
++250 179 73 250 179 73 224 163 69 0 2 0 68 83 99 170 212 252 170 212 252 143 179 213
++0 2 0 72 87 103 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++161 203 243 96 115 138 17 24 30 0 2 0 0 2 0 45 47 44 102 104 101 123 125 122
++138 140 137 143 145 142 115 117 114 82 83 81 43 44 42 0 2 0 0 2 0 32 39 45
++126 162 196 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 0 2 0 85 87 84 254 255 252 254 255 252 254 255 252
++242 244 240 27 29 27 35 37 34 254 255 252 254 255 252 231 233 230 10 12 8 21 27 33
++159 201 241 170 212 252 170 212 252 170 212 252 170 212 252 163 205 246 0 6 9 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 6 9 44 54 65 170 212 252 170 212 252 34 44 55 0 2 0 82 62 28
++109 79 35 224 163 69 250 179 73 52 36 13 15 20 22 170 212 252 170 212 252 75 89 106
++0 2 0 143 179 213 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 134 170 204
++25 32 38 0 2 0 40 41 39 155 157 153 238 241 237 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 210 212 209 115 117 114 18 20 17
++0 2 0 68 83 99 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 52 62 74 7 10 5 234 236 233 254 255 252 254 255 252
++254 255 252 195 197 194 102 104 101 254 255 252 254 255 252 254 255 252 162 164 161 0 2 0
++72 87 103 170 212 252 170 212 252 170 212 252 170 212 252 119 156 189 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 115 147 174 170 212 252 91 123 149 0 2 0 0 2 0 6 12 15
++0 2 0 15 9 7 197 142 62 125 92 35 0 2 0 115 152 185 113 145 172 3 6 2
++41 51 62 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 113 145 172 0 6 9
++10 12 8 155 157 153 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 232 234 231
++87 89 86 0 2 0 32 39 45 154 195 235 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 115 152 185 0 2 0 138 140 137 254 255 252 254 255 252
++254 255 252 254 255 252 249 251 248 254 255 252 254 255 252 254 255 252 254 255 252 65 66 64
++0 2 0 122 159 192 170 212 252 170 212 252 170 212 252 66 80 97 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 154 195 235 170 212 252 143 179 213 88 115 136 149 191 231 170 212 252
++126 162 196 3 6 2 64 46 18 202 145 58 0 2 0 0 2 0 0 2 0 0 2 0
++92 119 140 170 212 252 170 212 252 170 212 252 170 212 252 143 179 213 3 10 13 27 29 27
++215 217 214 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 155 157 153 0 2 0 32 39 45 154 195 235 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 23 30 36 27 29 27 249 251 248 254 255 252
++254 255 252 188 190 187 7 10 5 226 228 225 254 255 252 254 255 252 254 255 252 231 233 230
++7 10 5 21 27 33 159 201 241 170 212 252 103 134 161 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 119 156 189 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 55 66 77 11 4 3 250 179 73 24 17 10 0 2 0 0 2 0 0 2 0
++143 185 225 170 212 252 170 212 252 170 212 252 159 201 241 28 35 41 7 10 5 200 202 199
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 155 157 153 0 2 0 55 66 77 170 212 252 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 96 127 154 0 2 0 158 160 156 254 255 252
++254 255 252 192 194 191 0 2 0 176 178 175 254 255 252 254 255 252 254 255 252 254 255 252
++141 142 139 0 2 0 72 87 103 129 165 199 0 6 9 0 6 9 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 6 9 12 17 20 143 185 225 170 212 252 170 212 252 170 212 252 170 212 252
++138 174 208 17 24 30 29 21 8 250 179 73 101 72 28 0 2 0 0 2 0 32 39 45
++170 212 252 170 212 252 170 212 252 170 212 252 57 72 88 0 2 0 152 154 151 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 108 110 107 0 2 0 115 152 185 170 212 252 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 166 207 248 18 22 24 40 41 39 254 255 252
++254 255 252 232 234 231 0 2 0 148 150 147 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 10 12 8 0 2 0 8 14 16 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 6 9 41 51 62 61 76 92 34 44 55 3 10 13
++0 2 0 11 4 3 164 119 51 250 179 73 175 129 54 0 2 0 0 2 0 82 108 129
++170 212 252 170 212 252 170 212 252 98 129 156 0 2 0 95 96 94 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 238 241 237 18 20 17 25 32 38 166 207 248 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 85 112 133 0 2 0 188 190 187
++254 255 252 254 255 252 198 200 197 242 244 240 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 120 122 119 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 6 9 0 2 0 0 6 9 7 0 0
++31 23 12 202 145 58 250 179 73 250 179 73 238 175 73 0 2 0 0 2 0 122 159 192
++170 212 252 170 212 252 170 212 252 28 35 41 31 32 30 244 246 243 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 152 154 151 0 2 0 85 112 133 170 212 252
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 138 174 208 0 2 0 148 150 147
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 222 224 221 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++7 0 0 234 172 70 250 179 73 250 179 73 250 179 73 34 26 8 0 2 0 149 191 231
++170 212 252 170 212 252 129 165 199 0 2 0 128 130 127 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 252 254 250 48 50 48 3 10 13 146 188 228
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 157 198 239 0 2 0 118 120 117
++254 255 252 254 255 252 254 255 252 169 171 168 231 233 230 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 40 41 39 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 170 124 49 250 179 73 250 179 73 250 179 73 48 33 15 6 12 15 170 212 252
++170 212 252 170 212 252 65 87 102 0 2 0 222 224 221 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 195 197 194 0 2 0 84 103 125
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 3 10 13 85 87 84
++254 255 252 254 255 252 234 236 233 0 2 0 128 130 127 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 99 101 98 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 95 68 30 250 179 73 250 179 73 250 179 73 34 26 8 34 44 55 170 212 252
++170 212 252 163 205 246 8 14 16 62 64 61 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 35 37 34 34 44 55
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 26 33 39 60 62 59
++254 255 252 254 255 252 238 241 237 0 2 0 108 110 107 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 158 160 156 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 23 15 7 248 178 79 250 179 73 245 175 76 0 2 0 63 78 94 170 212 252
++170 212 252 109 141 168 0 2 0 158 160 156 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 104 106 103 0 2 0
++154 195 235 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 21 27 33 69 71 68
++254 255 252 254 255 252 244 246 243 0 2 0 91 93 90 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 215 217 214 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 197 142 62 250 179 73 212 153 66 0 2 0 92 110 133 170 212 252
++170 212 252 80 98 121 0 2 0 231 233 230 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 176 178 175 0 2 0
++105 137 164 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 8 14 16 87 89 86
++254 255 252 254 255 252 254 255 252 40 41 39 21 22 20 252 254 250 254 255 252 254 255 252
++254 255 252 254 255 252 252 254 250 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 125 92 35 250 179 73 170 124 49 0 2 0 113 145 172 170 212 252
++170 212 252 53 68 84 15 17 14 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 242 244 240 0 2 0
++63 78 94 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 0 2 0 104 106 103
++254 255 252 254 255 252 254 255 252 123 125 122 0 2 0 166 168 165 254 255 252 254 255 252
++254 255 252 254 255 252 234 236 233 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 7 0 0 52 36 13 250 179 73 129 95 39 0 2 0 143 179 213 170 212 252
++170 212 252 32 39 45 48 50 48 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 60 62 59
++18 22 24 170 212 252 170 212 252 170 212 252 170 212 252 163 205 246 0 2 0 102 104 101
++254 255 252 254 255 252 254 255 252 226 228 225 15 17 14 10 12 8 215 217 214 254 255 252
++254 255 252 254 255 252 210 212 209 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 88 66 26 29 21 8 0 2 0 166 207 248 170 212 252
++170 212 252 3 10 13 85 87 84 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 123 125 122
++0 2 0 149 191 231 170 212 252 170 212 252 170 212 252 170 212 252 21 27 33 56 58 55
++254 255 252 254 255 252 254 255 252 254 255 252 178 180 177 0 2 0 38 40 37 238 241 237
++254 255 252 254 255 252 210 212 209 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 7 0 0 7 0 0 0 2 0 161 203 243 170 212 252
++149 191 231 0 2 0 123 125 122 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 141 142 139
++0 2 0 143 179 213 170 212 252 170 212 252 170 212 252 170 212 252 66 80 97 0 2 0
++210 212 209 254 255 252 254 255 252 254 255 252 254 255 252 120 122 119 0 2 0 21 22 20
++143 145 142 244 246 243 219 221 218 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 149 191 231 170 212 252
++129 165 199 0 2 0 158 160 156 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 155 157 153
++0 2 0 134 170 204 170 212 252 170 212 252 170 212 252 170 212 252 143 185 225 0 6 9
++69 71 68 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 71 73 70 0 2 0
++0 2 0 0 2 0 40 41 39 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 139 181 221 170 212 252
++129 165 199 0 2 0 162 164 161 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 169 171 168
++0 2 0 119 156 189 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 75 94 116
++0 2 0 135 137 134 254 255 252 254 255 252 254 255 252 254 255 252 69 71 68 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 134 170 204 170 212 252
++134 170 204 0 2 0 152 154 151 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 183 185 181
++0 2 0 113 145 172 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 166 207 248
++44 54 65 0 2 0 162 164 161 254 255 252 254 255 252 254 255 252 35 37 34 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 126 162 196 170 212 252
++138 174 208 0 2 0 143 145 142 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 198 200 197
++0 2 0 103 134 161 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++157 198 239 28 35 41 0 2 0 188 190 187 254 255 252 252 254 250 3 6 2 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 115 152 185 170 212 252
++143 179 213 0 2 0 135 137 134 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 210 212 209
++0 2 0 91 123 149 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 146 188 228 0 6 9 26 27 25 242 244 240 176 178 175 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 105 137 164 170 212 252
++143 185 225 0 2 0 128 130 127 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 185 187 183
++0 2 0 105 137 164 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 163 205 246 0 2 0 0 2 0 102 104 101 60 62 59 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 80 98 121 170 212 252
++149 191 231 0 2 0 118 120 117 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 143 145 142
++0 2 0 134 170 204 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 143 179 213 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 44 54 65 170 212 252
++170 212 252 3 10 13 85 87 84 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 108 110 107
++0 2 0 157 198 239 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 115 152 185 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 3 10 13 170 212 252
++170 212 252 34 44 55 43 44 42 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 69 71 68
++15 20 22 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++170 212 252 75 94 116 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 139 181 221
++170 212 252 63 78 94 3 6 2 249 251 248 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 31 32 30
++41 51 62 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++161 203 243 6 12 15 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 105 137 164
++170 212 252 88 115 136 0 2 0 210 212 209 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 249 251 248 0 2 0
++68 83 99 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++96 127 154 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 61 76 92
++170 212 252 119 150 178 0 2 0 169 171 168 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 183 185 181 0 2 0
++91 123 149 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252
++28 35 41 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 6 9
++146 188 228 143 185 225 0 2 0 126 127 125 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 85 87 84 0 6 9
++154 195 235 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 98 129 156
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++72 90 112 170 212 252 18 22 24 56 58 55 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 238 241 237 7 10 5 55 66 77
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 122 159 192 0 6 9
++0 6 9 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 122 159 192 72 87 103 0 2 0 229 231 228 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 152 154 151 0 2 0 113 145 172
++170 212 252 170 212 252 170 212 252 170 212 252 170 212 252 139 181 221 8 14 16 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 18 22 24 109 141 168 0 2 0 148 150 147 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 56 58 55 12 17 20 166 207 248
++170 212 252 170 212 252 170 212 252 170 212 252 146 188 228 23 30 36 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 101 72 28 202 145 58
++180 132 57 0 2 0 38 45 51 3 10 13 69 71 68 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 200 202 199 0 2 0 75 89 106 170 212 252
++170 212 252 170 212 252 170 212 252 109 141 168 8 14 16 0 2 0 21 13 4 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 7 0 0 0 2 0 101 72 28 218 158 64 250 179 73 250 179 73
++250 179 73 139 99 44 0 2 0 8 14 16 0 2 0 238 241 237 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 244 246 243 38 40 37 3 10 13 139 181 221 170 212 252
++170 212 252 161 203 243 66 80 97 0 2 0 31 23 12 191 142 60 248 183 74 180 132 57
++44 34 15 0 2 0 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 23 15 7 190 136 56 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 150 108 46 0 2 0 0 2 0 82 83 81 222 224 221 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 102 104 101 0 2 0 98 129 156 170 212 252 163 205 246
++98 129 156 23 30 36 0 2 0 82 62 28 234 172 70 248 183 74 248 183 74 248 183 74
++248 183 74 158 114 46 29 21 8 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 64 46 18 109 79 35 150 108 46 224 163 69 250 179 73
++250 179 73 250 179 73 250 179 73 158 114 46 0 2 0 0 2 0 3 6 2 115 117 114
++234 236 233 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 176 178 175 0 2 0 57 72 88 146 188 228 80 98 121 8 14 16
++0 2 0 24 17 10 158 114 46 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74
++248 183 74 248 183 74 242 178 77 58 42 19 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 7 0 0 0 2 0 0 2 0 67 49 21 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 228 167 73 95 68 30 0 2 0 0 2 0
++0 2 0 52 54 51 108 110 107 162 164 161 219 221 218 254 255 252 254 255 252 254 255 252
++254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 254 255 252 252 254 250
++219 221 218 178 180 177 18 20 17 6 12 15 26 33 39 0 2 0 0 2 0 52 36 13
++164 119 51 242 178 77 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 242 178 77
++187 138 56 175 129 54 158 114 46 82 62 28 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 78 58 25 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 234 172 70 142 101 40
++44 34 15 10 12 8 0 2 0 0 2 0 0 2 0 18 20 17 60 62 59 71 73 70
++82 83 81 95 96 94 104 106 103 118 120 117 115 117 114 78 80 77 40 41 39 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 44 34 15 105 75 32 191 142 60 248 183 74
++248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 105 75 32
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 187 138 56 250 179 73
++250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 250 179 73 142 101 40 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 206 148 61 248 183 74 248 183 74 248 183 74
++248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 161 117 49
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 228 167 73 250 179 73
++238 175 73 190 136 56 158 114 46 234 172 70 250 179 73 250 179 73 250 179 73 250 179 73
++250 179 73 147 105 44 0 2 0 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 67 49 21 248 183 74 248 183 74 248 183 74
++248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74 248 183 74
++31 23 12 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 7 10 5 21 13 4
++0 2 0 0 2 0 0 2 0 147 105 44 250 179 73 250 179 73 250 179 73 250 179 73
++134 100 43 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 155 111 43 248 183 74 248 183 74
++248 183 74 248 183 74 224 163 69 55 39 17 64 46 18 164 119 51 242 178 77 248 183 74
++75 55 22 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 202 145 58 250 179 73 250 179 73 228 167 73 88 66 26
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 7 0 0 0 2 0 168 123 54 248 183 74
++248 183 74 248 183 74 158 114 46 0 2 0 7 0 0 0 2 0 10 12 8 44 34 15
++15 9 7 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 29 21 8 250 179 73 250 179 73 158 114 46 15 14 3 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 7 0 0 0 2 0 175 129 54
++248 183 74 248 183 74 114 83 33 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 29 21 8 147 105 44 58 42 19 0 2 0 7 0 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++105 75 32 218 158 64 23 15 7 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 7 0 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0 0 2 0
++
+diff -Nur linux-2.6.39.1/drivers/video/logo/logo_linux_mono.pbm linux-2.6.39-LIBRE/drivers/video/logo/logo_linux_mono.pbm
+--- linux-2.6.39.1/drivers/video/logo/logo_linux_mono.pbm 2011-06-02 21:34:20.000000000 -0300
++++ linux-2.6.39-LIBRE/drivers/video/logo/logo_linux_mono.pbm 2011-06-22 13:42:06.000000000 -0300
+@@ -1,203 +1,159 @@
+-P1
+-# Standard black and white Linux logo
+-80 80
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 0 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1
+-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1
+-1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-1 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1
+-1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 0 0 1
+-1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-1 1 1 1 0 1 1 1 0 1 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1
+-1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-0 1 1 0 0 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1
+-1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1
+-1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-1 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1
+-1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
+-1 1 1 1 1 1 1 1 0 0 0 0 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 1
+-1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1
+-0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0
+-1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1
+-0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1
+-1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1
+-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1
+-1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1
+-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0
+-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1
+-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0
+-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1
+-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0
+-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1
+-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 0 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 1 1 1 1 1 0
+-0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 1 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1 0 0 0
+-0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
+-1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1
+-1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1
+-1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
+-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+-0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
+-1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
+-1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+-1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
++P2
++80 78
++255
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 255 255 255 255 255 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 255 255 255 0 0 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 255 255 255 255 255 0 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 255 255 255 255 255 255 255 255 255 0 0 0 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 0 0 0 255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 0
++0 0 0 0 0 0 0 0 0 0
++0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255
++0 0 0 0 0 0 0 0 0 0
++0 0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255
++255 0 0 0 0 0 0 0 0 0
++0 0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 255
++255 255 0 0 0 0 0 0 0 0
++0 0 0 255 255 255 255 255 255 255 255 255 255 0 0 255 0 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 0 0 255 255 255 255
++255 255 0 0 0 0 0 0 0 0
++0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 255 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 255 255 255
++255 255 255 0 0 0 0 0 0 0
++0 0 0 0 255 255 255 255 255 255 0 0 0 0 0 255 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255
++255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 255 255 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 255 255
++255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 255 255 255 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 0 255 255 0 0 255 255
++255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 0 255 255 255 0 0 255
++255 255 255 255 255 255 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 0 0 255 255 255 0 255
++255 255 255 255 255 255 255 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 0 0 255 255 255 0 0
++255 255 255 255 255 255 255 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 0 0 255 255 255 0
++0 255 255 255 255 255 255 255 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 0 0 255 255 255 0
++0 255 255 255 255 255 255 255 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 255 255 0 0 255 255 255 0 0 255 255 255 255 255 255 255 0 0 0 0 0 0 255 255 255 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255
++0 0 255 255 255 255 255 255 0 0
++0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 0 0 255 255 0 0 255 255 0 0 255 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 255 255 255
++255 0 0 255 255 255 255 255 0 0
++0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 0 0 0 255 0 0 255 255 0 0 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255
++255 0 0 255 255 255 255 0 0 0
++0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 0 0 255 0 0 0 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 255 255 255
++255 255 0 0 255 255 255 0 0 0
++0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 0 0 255 0 0 0 0 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 255 255 255 255 0 255 255 255
++255 255 255 0 0 255 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 255 0 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 255 255 255 0 255 255 255
++255 255 255 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255
++255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255
++255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255
++255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 255 255 255 0 255 255
++255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 255 255 255 0 0 255
++255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 255 255 255 0 0 255
++255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 255 255 255 0 0 255
++255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 255 0 255
++255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 255 255 255 255 0 0
++255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 0 0 255 255 255 255 255 0
++0 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 0 0 255 255 255 255 255 255
++0 0 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 255 255 255 255 255
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 0 0 255 255 255 255 255
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 0 0 255 255 255 255
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 0 0 255 255 255
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 0 0 255 255
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 255 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 255 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 0 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 255 255 255 0 0 0 255 255 255 255 255 255 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 255 0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 255 255 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 255 0 0 255 255 255 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 255 255 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
++0 0 0 0 0 0 0 0 0 0
+diff -Nur linux-2.6.39.1/drivers/video/logo/logo_linux_vga16.ppm linux-2.6.39-LIBRE/drivers/video/logo/logo_linux_vga16.ppm
+--- linux-2.6.39.1/drivers/video/logo/logo_linux_vga16.ppm 2011-06-02 21:34:20.000000000 -0300
++++ linux-2.6.39-LIBRE/drivers/video/logo/logo_linux_vga16.ppm 2011-06-22 13:42:06.000000000 -0300
+@@ -1,1604 +1,18724 @@
+ P3
+-# Standard 16-color Linux logo
+-80 80
++# CREATOR: GIMP PNM Filter Version 1.1
++80 78
+ 255
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 85 85 85 85 85 85 85 85 85
+- 85 85 85 85 85 85 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 85 85 85
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 85 85 85 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 170 170 170 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+-170 170 170 170 170 170 85 85 85 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 85 85 85 170 170 170 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 170 170 170 170 170
+-170 170 170 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 85 85 85 170 170 170 170 170 170 170 170 170
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 170 170 170 255 255 255 255 255 255
+-255 255 255 170 170 170 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 85 85 85
+-170 170 170 170 170 170 255 255 255 255 255 255
+- 0 0 0 0 0 0 0 0 0 0 0 0
+-170 170 170 255 255 255 170 170 170 170 170 170
+-255 255 255 170 170 170 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 85 85 85
+-170 170 170 0 0 0 0 0 0 255 255 255
+- 85 85 85 0 0 0 0 0 0 0 0 0
+-255 255 255 170 170 170 0 0 0 85 85 85
+-170 170 170 255 255 255 170 170 170 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 85 85 85
+- 85 85 85 0 0 0 0 0 0 170 170 170
+- 85 85 85 0 0 0 0 0 0 0 0 0
+-255 255 255 85 85 85 0 0 0 0 0 0
+- 85 85 85 255 255 255 170 170 170 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 85 85 85
+-170 170 170 0 0 0 0 0 0 170 170 170
+- 85 85 85 85 85 85 85 85 85 85 85 85
+-255 255 255 85 85 85 0 0 0 0 0 0
+- 85 85 85 255 255 255 170 170 170 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+-255 255 255 0 0 0 0 0 0 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 0 0 0 0 0 0
+- 85 85 85 255 255 255 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+-170 170 170 170 170 170 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 170 170 170 170 170 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 85 85 85 0 0 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 170 85 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 85 85 85 0 0 0
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 170 85 0
+-170 85 0 170 85 0 85 85 85 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 85 85 85 0 0 0
+- 85 85 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 85 85 85 0 0 0
+- 0 0 0 85 85 85 170 170 170 85 85 85
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 85 85 85 0 0 0
+- 85 85 85 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 170 170 170 170 170 170 170 170 0 0 0
+- 0 0 0 0 0 0 170 170 170 170 170 170
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 85 85 85 170 170 170 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 170 170 170 170 170
+-170 170 170 170 170 170 170 170 170 85 85 85
+- 0 0 0 0 0 0 85 85 85 85 85 85
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 85 85 85 170 170 170 170 170 170 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 170 170 170 170 170 170 170 170 170 170 170
+-255 255 255 255 255 255 255 255 255 170 170 170
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 85 85 85
+-255 255 255 255 255 255 170 170 170 170 170 170
+-170 170 170 170 170 170 170 170 170 170 170 170
+-170 170 170 170 170 170 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 170 170 170
+-255 255 255 255 255 255 170 170 170 170 170 170
+-170 170 170 170 170 170 170 170 170 170 170 170
+-170 170 170 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-170 170 170 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 85 85 85 255 255 255
+-255 255 255 255 255 255 255 255 255 170 170 170
+-170 170 170 170 170 170 170 170 170 170 170 170
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 85 85 85 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 85 85 85 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 85 85 85 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 85 85 85 170 170 170 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 170 170 170 170 170 170 170 170 170
+-255 255 255 255 255 255 255 255 255 170 170 170
+-170 170 170 170 170 170 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-170 170 170 170 170 170 170 170 170 170 170 170
+-170 170 170 170 170 170 170 170 170 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+-170 170 170 170 170 170 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-170 170 170 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 170 170 170
+-170 170 170 170 170 170 170 170 170 85 85 85
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+-170 170 170 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 170 170 170 170 170 170
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 85 85 85 0 0 0 0 0 0 85 85 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 170 170 170
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 170 170 170
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-170 170 170 85 85 85 0 0 0 0 0 0
+- 0 0 0 85 85 85 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 85 85 85
+- 0 0 0 0 0 0 85 85 85 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 0 0 0 85 85 85
+- 85 85 85 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 85 85 85
+- 0 0 0 85 85 85 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 0 0 0 85 85 85
+- 85 85 85 0 0 0 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 85 85 85
+- 0 0 0 170 170 170 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 85 85 85 0 0 0
+- 0 0 0 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 85 85 85 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 85 85 85 0 0 0 0 0 0
+-170 170 170 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 85 85 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 85 85 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 85 85 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 0 0 0
+- 85 85 85 85 85 85 85 85 85 85 85 85
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 0 0 0 170 85 0
+-255 255 85 170 85 0 0 0 0 0 0 0
+- 85 85 85 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 85 85 85 85 85 85 0 0 0
+- 0 0 0 85 85 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 0 0 0
+- 0 0 0 85 85 85 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 85 170 85 0 255 255 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 85 85 85
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+- 0 0 0 0 0 0 85 85 85 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 85
+-170 85 0 255 255 85 170 85 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+-170 85 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 0 0 0 0 0 0 85 85 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 170 85 0
+-255 255 85 170 85 0 255 255 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 170 85 0
+-255 255 85 170 85 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 0 0 0 0 0 0 0 0 0
+- 85 85 85 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 85
+-170 85 0 255 255 85 170 85 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 255 255 85
+-170 85 0 255 255 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 0 0 0 0 0 0
+- 0 0 0 85 85 85 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 255 255 85 170 85 0
+-255 255 85 170 85 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 0 0 0
+- 0 0 0 0 0 0 85 85 85 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 170 170 170 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 170 170 170 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 170 170 170 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 170 170 170 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 0 0 0 0 0 0 0 0 0
+- 85 85 85 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 170 170 170 85 85 85 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 85 85 85 85 85 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-170 170 170 85 85 85 85 85 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 170 170 170
+- 85 85 85 0 0 0 0 0 0 170 85 0
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 85 85 85
+- 0 0 0 0 0 0 0 0 0 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-170 170 170 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-170 170 170 85 85 85 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 170 85 0
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 170 85 0
+-170 85 0 170 170 170 255 255 255 255 255 255
+-255 255 255 255 255 255 255 255 255 255 255 255
+-255 255 255 255 255 255 170 170 170 85 85 85
+- 85 85 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-170 85 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 170 85 0
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 170 85 0 170 85 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 170 85 0
+-170 85 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-170 85 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-170 85 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 85 85 85 170 85 0
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 170 85 0 170 85 0 170 85 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 170 85 0
+-170 85 0 0 0 0 0 0 0 0 0 0
+- 85 85 85 85 85 85 85 85 85 85 85 85
+- 85 85 85 85 85 85 85 85 85 85 85 85
+- 85 85 85 85 85 85 85 85 85 0 0 0
+- 0 0 0 0 0 0 0 0 0 170 85 0
+-170 85 0 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 255 255 85 170 85 0
+-170 85 0 170 85 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 255 255 85 170 85 0
+-255 255 85 170 85 0 170 85 0 170 85 0
+- 85 85 85 85 85 85 85 85 85 85 85 85
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 85 85 85
+- 85 85 85 85 85 85 85 85 85 170 85 0
+-170 85 0 170 85 0 170 85 0 255 255 85
+-170 85 0 255 255 85 170 85 0 170 85 0
+-170 85 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+-170 85 0 170 85 0 170 85 0 170 85 0
+-170 85 0 170 85 0 170 85 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
+- 0 0 0 0 0 0 0 0 0 0 0 0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++85
++85
++85
++0
++0
++0
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++85
++85
++85
++0
++0
++0
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++85
++85
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++170
++170
++170
++255
++255
++255
++170
++170
++170
++170
++170
++170
++170
++170
++170
++85
++85
++85
++0
++0
++0
++85
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++170
++170
++170
++170
++170
++170
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++170
++170
++170
++85
++85
++85
++170
++170
++170
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++255
++85
++85
++255
++85
++85
++0
++0
++0
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++255
++255
++255
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++0
++0
++0
++0
++0
++0
++255
++85
++85
++0
++0
++0
++85
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++255
++85
++85
++85
++85
++85
++0
++0
++0
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++0
++0
++0
++85
++85
++85
++255
++85
++85
++0
++0
++0
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++255
++85
++85
++0
++0
++0
++255
++85
++85
++255
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++85
++85
++85
++0
++0
++0
++255
++85
++85
++0
++0
++0
++85
++85
++85
++255
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++255
++85
++85
++0
++0
++0
++85
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++85
++85
++85
++0
++0
++0
++255
++85
++85
++0
++0
++0
++85
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++85
++85
++85
++0
++0
++0
++255
++85
++85
++0
++0
++0
++85
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++85
++85
++85
++0
++0
++0
++255
++85
++85
++0
++0
++0
++85
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++85
++85
++85
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++170
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++170
++170
++170
++255
++255
++255
++170
++170
++170
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++85
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++85
++85
++85
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++85
++85
++85
++170
++170
++170
++170
++170
++170
++85
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++255
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++85
++85
++255
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++170
++170
++170
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++255
++255
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++85
++85
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++170
++170
++170
++0
++0
++0
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++85
++85
++85
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++0
++0
++0
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++85
++85
++85
++0
++0
++0
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++85
++85
++85
++85
++255
++255
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++170
++170
++170
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++255
++170
++170
++170
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++85
++85
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++85
++85
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++255
++255
++85
++255
++255
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++85
++85
++85
++255
++255
++85
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
++0
diff --git a/kernels/linux-libre-grsec/change-default-console-loglevel.patch b/kernels/linux-libre-grsec/change-default-console-loglevel.patch
new file mode 100755
index 000000000..63435d84f
--- /dev/null
+++ b/kernels/linux-libre-grsec/change-default-console-loglevel.patch
@@ -0,0 +1,12 @@
+diff -upr linux-3.0.orig/kernel/printk.c linux-3.0/kernel/printk.c
+--- linux-3.0.orig/kernel/printk.c 2011-07-22 05:17:23.000000000 +0300
++++ linux-3.0/kernel/printk.c 2011-07-27 14:43:07.000000000 +0300
+@@ -58,7 +58,7 @@ void asmlinkage __attribute__((weak)) ea
+
+ /* We show everything that is MORE important than this.. */
+ #define MINIMUM_CONSOLE_LOGLEVEL 1 /* Minimum loglevel we let people use */
+-#define DEFAULT_CONSOLE_LOGLEVEL 7 /* anything MORE serious than KERN_DEBUG */
++#define DEFAULT_CONSOLE_LOGLEVEL 4 /* anything MORE serious than KERN_DEBUG */
+
+ DECLARE_WAIT_QUEUE_HEAD(log_wait);
+
diff --git a/kernels/linux-libre-grsec/config.i686 b/kernels/linux-libre-grsec/config.i686
new file mode 100644
index 000000000..cd4caf51b
--- /dev/null
+++ b/kernels/linux-libre-grsec/config.i686
@@ -0,0 +1,6177 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/i386 3.6.1-3 Kernel Configuration
+#
+# CONFIG_64BIT is not set
+CONFIG_X86_32=y
+# CONFIG_X86_64 is not set
+CONFIG_X86=y
+CONFIG_INSTRUCTION_DECODER=y
+CONFIG_OUTPUT_FORMAT="elf32-i386"
+CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_MMU=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_NEED_SG_DMA_LENGTH=y
+CONFIG_GENERIC_ISA_DMA=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_GPIO=y
+CONFIG_ARCH_MAY_HAVE_PC_FDC=y
+# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
+CONFIG_RWSEM_XCHGADD_ALGORITHM=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_ARCH_HAS_CPU_RELAX=y
+CONFIG_ARCH_HAS_DEFAULT_IDLE=y
+CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
+CONFIG_ARCH_HAS_CPU_AUTOPROBE=y
+CONFIG_HAVE_SETUP_PER_CPU_AREA=y
+CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
+CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+# CONFIG_ZONE_DMA32 is not set
+# CONFIG_AUDIT_ARCH is not set
+CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_HAVE_INTEL_TXT=y
+CONFIG_X86_32_SMP=y
+CONFIG_X86_HT=y
+CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx"
+CONFIG_ARCH_CPU_PROBE_RELEASE=y
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
+CONFIG_HAVE_IRQ_WORK=y
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_EXTABLE_SORT=y
+
+#
+# General setup
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_CROSS_COMPILE=""
+CONFIG_LOCALVERSION="LIBRE-GRSEC"
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_HAVE_KERNEL_GZIP=y
+CONFIG_HAVE_KERNEL_BZIP2=y
+CONFIG_HAVE_KERNEL_LZMA=y
+CONFIG_HAVE_KERNEL_XZ=y
+CONFIG_HAVE_KERNEL_LZO=y
+CONFIG_KERNEL_GZIP=y
+# CONFIG_KERNEL_BZIP2 is not set
+# CONFIG_KERNEL_LZMA is not set
+# CONFIG_KERNEL_XZ is not set
+# CONFIG_KERNEL_LZO is not set
+CONFIG_DEFAULT_HOSTNAME="(none)"
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_BSD_PROCESS_ACCT_V3=y
+CONFIG_FHANDLE=y
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
+CONFIG_AUDIT=y
+CONFIG_AUDITSYSCALL=y
+CONFIG_AUDIT_WATCH=y
+CONFIG_AUDIT_TREE=y
+# CONFIG_AUDIT_LOGINUID_IMMUTABLE is not set
+CONFIG_HAVE_GENERIC_HARDIRQS=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_PENDING_IRQ=y
+CONFIG_IRQ_DOMAIN=y
+# CONFIG_IRQ_DOMAIN_DEBUG is not set
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+CONFIG_CLOCKSOURCE_WATCHDOG=y
+CONFIG_KTIME_SCALAR=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
+CONFIG_GENERIC_CMOS_UPDATE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ=y
+CONFIG_HIGH_RES_TIMERS=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_PREEMPT_RCU=y
+CONFIG_PREEMPT_RCU=y
+CONFIG_RCU_FANOUT=32
+CONFIG_RCU_FANOUT_LEAF=16
+# CONFIG_RCU_FANOUT_EXACT is not set
+CONFIG_RCU_FAST_NO_HZ=y
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_RCU_BOOST is not set
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
+CONFIG_LOG_BUF_SHIFT=19
+CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
+CONFIG_CGROUPS=y
+# CONFIG_CGROUP_DEBUG is not set
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CPUSETS=y
+CONFIG_PROC_PID_CPUSET=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_RESOURCE_COUNTERS=y
+# CONFIG_MEMCG is not set
+# CONFIG_CGROUP_HUGETLB is not set
+# CONFIG_CGROUP_PERF is not set
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+CONFIG_RT_GROUP_SCHED=y
+CONFIG_BLK_CGROUP=y
+# CONFIG_DEBUG_BLK_CGROUP is not set
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_IPC_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+CONFIG_SCHED_AUTOGROUP=y
+# CONFIG_SYSFS_DEPRECATED is not set
+CONFIG_RELAY=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_RD_XZ=y
+CONFIG_RD_LZO=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
+# CONFIG_EXPERT is not set
+CONFIG_UID16=y
+# CONFIG_SYSCTL_SYSCALL is not set
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_ALL is not set
+CONFIG_HOTPLUG=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_PCSPKR_PLATFORM=y
+CONFIG_HAVE_PCSPKR_PLATFORM=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+# CONFIG_EMBEDDED is not set
+CONFIG_HAVE_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_PCI_QUIRKS=y
+CONFIG_SLUB_DEBUG=y
+# CONFIG_COMPAT_BRK is not set
+# CONFIG_SLAB is not set
+CONFIG_SLUB=y
+CONFIG_PROFILING=y
+CONFIG_TRACEPOINTS=y
+CONFIG_OPROFILE=m
+# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
+CONFIG_HAVE_OPROFILE=y
+CONFIG_OPROFILE_NMI_TIMER=y
+CONFIG_KPROBES=y
+CONFIG_JUMP_LABEL=y
+CONFIG_UPROBES=y
+CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
+CONFIG_KRETPROBES=y
+CONFIG_USER_RETURN_NOTIFIER=y
+CONFIG_HAVE_IOREMAP_PROT=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_OPTPROBES=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
+CONFIG_USE_GENERIC_SMP_HELPERS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_DMA_API_DEBUG=y
+CONFIG_HAVE_HW_BREAKPOINT=y
+CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
+CONFIG_HAVE_USER_RETURN_NOTIFIER=y
+CONFIG_HAVE_PERF_EVENTS_NMI=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
+CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
+CONFIG_HAVE_CMPXCHG_LOCAL=y
+CONFIG_HAVE_CMPXCHG_DOUBLE=y
+CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_SECCOMP_FILTER=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_GCOV_KERNEL is not set
+CONFIG_HAVE_GENERIC_DMA_COHERENT=y
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+CONFIG_MODULE_FORCE_LOAD=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODULE_FORCE_UNLOAD=y
+CONFIG_MODVERSIONS=y
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_STOP_MACHINE=y
+CONFIG_BLOCK=y
+CONFIG_LBDAF=y
+CONFIG_BLK_DEV_BSG=y
+CONFIG_BLK_DEV_BSGLIB=y
+# CONFIG_BLK_DEV_INTEGRITY is not set
+CONFIG_BLK_DEV_THROTTLING=y
+
+#
+# Partition Types
+#
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_OSF_PARTITION is not set
+# CONFIG_AMIGA_PARTITION is not set
+# CONFIG_ATARI_PARTITION is not set
+CONFIG_MAC_PARTITION=y
+CONFIG_MSDOS_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+# CONFIG_UNIXWARE_DISKLABEL is not set
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
+# CONFIG_SGI_PARTITION is not set
+# CONFIG_ULTRIX_PARTITION is not set
+# CONFIG_SUN_PARTITION is not set
+CONFIG_KARMA_PARTITION=y
+CONFIG_EFI_PARTITION=y
+# CONFIG_SYSV68_PARTITION is not set
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+CONFIG_CFQ_GROUP_IOSCHED=y
+# CONFIG_DEFAULT_DEADLINE is not set
+CONFIG_DEFAULT_CFQ=y
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED="cfq"
+CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_PADATA=y
+# CONFIG_INLINE_SPIN_TRYLOCK is not set
+# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
+# CONFIG_INLINE_SPIN_LOCK is not set
+# CONFIG_INLINE_SPIN_LOCK_BH is not set
+# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
+# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
+CONFIG_UNINLINE_SPIN_UNLOCK=y
+# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
+# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
+# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
+# CONFIG_INLINE_READ_TRYLOCK is not set
+# CONFIG_INLINE_READ_LOCK is not set
+# CONFIG_INLINE_READ_LOCK_BH is not set
+# CONFIG_INLINE_READ_LOCK_IRQ is not set
+# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
+# CONFIG_INLINE_READ_UNLOCK is not set
+# CONFIG_INLINE_READ_UNLOCK_BH is not set
+# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
+# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
+# CONFIG_INLINE_WRITE_TRYLOCK is not set
+# CONFIG_INLINE_WRITE_LOCK is not set
+# CONFIG_INLINE_WRITE_LOCK_BH is not set
+# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
+# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
+# CONFIG_INLINE_WRITE_UNLOCK is not set
+# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
+# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
+# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
+# CONFIG_MUTEX_SPIN_ON_OWNER is not set
+CONFIG_FREEZER=y
+
+#
+# Processor type and features
+#
+CONFIG_ZONE_DMA=y
+CONFIG_SMP=y
+CONFIG_X86_MPPARSE=y
+# CONFIG_X86_BIGSMP is not set
+# CONFIG_X86_EXTENDED_PLATFORM is not set
+CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
+CONFIG_X86_32_IRIS=m
+CONFIG_SCHED_OMIT_FRAME_POINTER=y
+CONFIG_PARAVIRT_GUEST=y
+CONFIG_PARAVIRT_TIME_ACCOUNTING=y
+# CONFIG_XEN_PRIVILEGED_GUEST is not set
+CONFIG_KVM_CLOCK=y
+CONFIG_KVM_GUEST=y
+CONFIG_LGUEST_GUEST=y
+CONFIG_PARAVIRT=y
+# CONFIG_PARAVIRT_SPINLOCKS is not set
+CONFIG_PARAVIRT_CLOCK=y
+# CONFIG_PARAVIRT_DEBUG is not set
+CONFIG_NO_BOOTMEM=y
+# CONFIG_MEMTEST is not set
+# CONFIG_M386 is not set
+# CONFIG_M486 is not set
+# CONFIG_M586 is not set
+# CONFIG_M586TSC is not set
+# CONFIG_M586MMX is not set
+CONFIG_M686=y
+# CONFIG_MPENTIUMII is not set
+# CONFIG_MPENTIUMIII is not set
+# CONFIG_MPENTIUMM is not set
+# CONFIG_MPENTIUM4 is not set
+# CONFIG_MK6 is not set
+# CONFIG_MK7 is not set
+# CONFIG_MK8 is not set
+# CONFIG_MCRUSOE is not set
+# CONFIG_MEFFICEON is not set
+# CONFIG_MWINCHIPC6 is not set
+# CONFIG_MWINCHIP3D is not set
+# CONFIG_MELAN is not set
+# CONFIG_MGEODEGX1 is not set
+# CONFIG_MGEODE_LX is not set
+# CONFIG_MCYRIXIII is not set
+# CONFIG_MVIAC3_2 is not set
+# CONFIG_MVIAC7 is not set
+# CONFIG_MCORE2 is not set
+# CONFIG_MATOM is not set
+CONFIG_X86_GENERIC=y
+CONFIG_X86_INTERNODE_CACHE_SHIFT=6
+CONFIG_X86_CMPXCHG=y
+CONFIG_X86_L1_CACHE_SHIFT=6
+CONFIG_X86_XADD=y
+# CONFIG_X86_PPRO_FENCE is not set
+CONFIG_X86_WP_WORKS_OK=y
+CONFIG_X86_INVLPG=y
+CONFIG_X86_BSWAP=y
+CONFIG_X86_POPAD_OK=y
+CONFIG_X86_ALIGNMENT_16=y
+CONFIG_X86_INTEL_USERCOPY=y
+CONFIG_X86_USE_PPRO_CHECKSUM=y
+CONFIG_X86_TSC=y
+CONFIG_X86_CMPXCHG64=y
+CONFIG_X86_CMOV=y
+CONFIG_X86_MINIMUM_CPU_FAMILY=5
+CONFIG_X86_DEBUGCTLMSR=y
+CONFIG_CPU_SUP_INTEL=y
+CONFIG_CPU_SUP_AMD=y
+CONFIG_CPU_SUP_CENTAUR=y
+CONFIG_CPU_SUP_TRANSMETA_32=y
+CONFIG_HPET_TIMER=y
+CONFIG_HPET_EMULATE_RTC=y
+CONFIG_DMI=y
+# CONFIG_IOMMU_HELPER is not set
+CONFIG_NR_CPUS=8
+CONFIG_SCHED_SMT=y
+CONFIG_SCHED_MC=y
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+# CONFIG_PREEMPT_NONE is not set
+# CONFIG_PREEMPT_VOLUNTARY is not set
+CONFIG_PREEMPT=y
+CONFIG_PREEMPT_COUNT=y
+CONFIG_X86_LOCAL_APIC=y
+CONFIG_X86_IO_APIC=y
+CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
+CONFIG_X86_MCE=y
+CONFIG_X86_MCE_INTEL=y
+CONFIG_X86_MCE_AMD=y
+# CONFIG_X86_ANCIENT_MCE is not set
+CONFIG_X86_MCE_THRESHOLD=y
+# CONFIG_X86_MCE_INJECT is not set
+CONFIG_X86_THERMAL_VECTOR=y
+CONFIG_VM86=y
+CONFIG_TOSHIBA=m
+CONFIG_I8K=m
+CONFIG_X86_REBOOTFIXUPS=y
+CONFIG_MICROCODE=m
+CONFIG_MICROCODE_INTEL=y
+CONFIG_MICROCODE_AMD=y
+CONFIG_MICROCODE_OLD_INTERFACE=y
+CONFIG_X86_MSR=m
+CONFIG_X86_CPUID=m
+# CONFIG_NOHIGHMEM is not set
+CONFIG_HIGHMEM4G=y
+# CONFIG_HIGHMEM64G is not set
+CONFIG_PAGE_OFFSET=0xC0000000
+CONFIG_HIGHMEM=y
+# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
+# CONFIG_ARCH_DMA_ADDR_T_64BIT is not set
+CONFIG_ARCH_FLATMEM_ENABLE=y
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_ARCH_SELECT_MEMORY_MODEL=y
+CONFIG_ILLEGAL_POINTER_VALUE=0
+CONFIG_SELECT_MEMORY_MODEL=y
+CONFIG_FLATMEM_MANUAL=y
+# CONFIG_SPARSEMEM_MANUAL is not set
+CONFIG_FLATMEM=y
+CONFIG_FLAT_NODE_MEM_MAP=y
+CONFIG_SPARSEMEM_STATIC=y
+CONFIG_HAVE_MEMBLOCK=y
+CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
+CONFIG_ARCH_DISCARD_MEMBLOCK=y
+CONFIG_MEMORY_ISOLATION=y
+CONFIG_PAGEFLAGS_EXTENDED=y
+CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_COMPACTION=y
+CONFIG_MIGRATION=y
+# CONFIG_PHYS_ADDR_T_64BIT is not set
+CONFIG_ZONE_DMA_FLAG=1
+CONFIG_BOUNCE=y
+CONFIG_VIRT_TO_BUS=y
+CONFIG_MMU_NOTIFIER=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
+CONFIG_MEMORY_FAILURE=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
+# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
+CONFIG_CROSS_MEMORY_ATTACH=y
+CONFIG_CLEANCACHE=y
+CONFIG_FRONTSWAP=y
+# CONFIG_HIGHPTE is not set
+CONFIG_X86_CHECK_BIOS_CORRUPTION=y
+CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
+CONFIG_X86_RESERVE_LOW=64
+# CONFIG_MATH_EMULATION is not set
+CONFIG_MTRR=y
+CONFIG_MTRR_SANITIZER=y
+CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
+CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
+CONFIG_X86_PAT=y
+CONFIG_ARCH_USES_PG_UNCACHED=y
+CONFIG_ARCH_RANDOM=y
+CONFIG_EFI=y
+CONFIG_EFI_STUB=y
+CONFIG_SECCOMP=y
+# CONFIG_HZ_100 is not set
+# CONFIG_HZ_250 is not set
+CONFIG_HZ_300=y
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=300
+CONFIG_SCHED_HRTICK=y
+CONFIG_KEXEC=y
+# CONFIG_CRASH_DUMP is not set
+# CONFIG_KEXEC_JUMP is not set
+CONFIG_PHYSICAL_START=0x1000000
+CONFIG_RELOCATABLE=y
+CONFIG_X86_NEED_RELOCS=y
+CONFIG_PHYSICAL_ALIGN=0x400000
+CONFIG_HOTPLUG_CPU=y
+# CONFIG_CMDLINE_BOOL is not set
+CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+
+#
+# Power management and ACPI options
+#
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+CONFIG_HIBERNATE_CALLBACKS=y
+CONFIG_HIBERNATION=y
+CONFIG_PM_STD_PARTITION=""
+CONFIG_PM_SLEEP=y
+CONFIG_PM_SLEEP_SMP=y
+CONFIG_PM_AUTOSLEEP=y
+CONFIG_PM_WAKELOCKS=y
+CONFIG_PM_WAKELOCKS_LIMIT=100
+CONFIG_PM_WAKELOCKS_GC=y
+CONFIG_PM_RUNTIME=y
+CONFIG_PM=y
+CONFIG_PM_DEBUG=y
+CONFIG_PM_ADVANCED_DEBUG=y
+# CONFIG_PM_TEST_SUSPEND is not set
+CONFIG_PM_SLEEP_DEBUG=y
+# CONFIG_PM_TRACE_RTC is not set
+CONFIG_ACPI=y
+CONFIG_ACPI_SLEEP=y
+# CONFIG_ACPI_PROCFS is not set
+# CONFIG_ACPI_PROCFS_POWER is not set
+CONFIG_ACPI_EC_DEBUGFS=m
+# CONFIG_ACPI_PROC_EVENT is not set
+CONFIG_ACPI_AC=m
+CONFIG_ACPI_BATTERY=m
+CONFIG_ACPI_BUTTON=m
+CONFIG_ACPI_VIDEO=m
+CONFIG_ACPI_FAN=m
+CONFIG_ACPI_DOCK=y
+CONFIG_ACPI_PROCESSOR=m
+CONFIG_ACPI_IPMI=m
+CONFIG_ACPI_HOTPLUG_CPU=y
+CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
+CONFIG_ACPI_THERMAL=m
+# CONFIG_ACPI_CUSTOM_DSDT is not set
+CONFIG_ACPI_BLACKLIST_YEAR=0
+# CONFIG_ACPI_DEBUG is not set
+CONFIG_ACPI_PCI_SLOT=m
+CONFIG_X86_PM_TIMER=y
+CONFIG_ACPI_CONTAINER=m
+CONFIG_ACPI_SBS=m
+CONFIG_ACPI_HED=y
+CONFIG_ACPI_CUSTOM_METHOD=m
+CONFIG_ACPI_BGRT=m
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_PCIEAER=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+CONFIG_ACPI_APEI_EINJ=m
+CONFIG_ACPI_APEI_ERST_DEBUG=m
+CONFIG_SFI=y
+CONFIG_X86_APM_BOOT=y
+CONFIG_APM=y
+# CONFIG_APM_IGNORE_USER_SUSPEND is not set
+CONFIG_APM_DO_ENABLE=y
+# CONFIG_APM_CPU_IDLE is not set
+# CONFIG_APM_DISPLAY_BLANK is not set
+# CONFIG_APM_ALLOW_INTS is not set
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_TABLE=y
+CONFIG_CPU_FREQ_STAT=m
+CONFIG_CPU_FREQ_STAT_DETAILS=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_USERSPACE=m
+CONFIG_CPU_FREQ_GOV_ONDEMAND=y
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
+
+#
+# x86 CPU frequency scaling drivers
+#
+CONFIG_X86_PCC_CPUFREQ=m
+CONFIG_X86_ACPI_CPUFREQ=m
+CONFIG_X86_POWERNOW_K6=m
+CONFIG_X86_POWERNOW_K7=m
+CONFIG_X86_POWERNOW_K7_ACPI=y
+CONFIG_X86_POWERNOW_K8=m
+CONFIG_X86_GX_SUSPMOD=m
+# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
+CONFIG_X86_SPEEDSTEP_ICH=m
+CONFIG_X86_SPEEDSTEP_SMI=m
+CONFIG_X86_P4_CLOCKMOD=m
+CONFIG_X86_CPUFREQ_NFORCE2=m
+CONFIG_X86_LONGRUN=m
+CONFIG_X86_LONGHAUL=m
+CONFIG_X86_E_POWERSAVER=m
+
+#
+# shared options
+#
+CONFIG_X86_SPEEDSTEP_LIB=m
+CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_GOV_LADDER=y
+CONFIG_CPU_IDLE_GOV_MENU=y
+# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set
+CONFIG_INTEL_IDLE=y
+
+#
+# Bus options (PCI etc.)
+#
+CONFIG_PCI=y
+# CONFIG_PCI_GOBIOS is not set
+# CONFIG_PCI_GOMMCONFIG is not set
+# CONFIG_PCI_GODIRECT is not set
+# CONFIG_PCI_GOOLPC is not set
+CONFIG_PCI_GOANY=y
+CONFIG_PCI_BIOS=y
+CONFIG_PCI_DIRECT=y
+CONFIG_PCI_MMCONFIG=y
+CONFIG_PCI_OLPC=y
+CONFIG_PCI_DOMAINS=y
+# CONFIG_PCI_CNB20LE_QUIRK is not set
+CONFIG_PCIEPORTBUS=y
+CONFIG_HOTPLUG_PCI_PCIE=m
+CONFIG_PCIEAER=y
+# CONFIG_PCIE_ECRC is not set
+# CONFIG_PCIEAER_INJECT is not set
+CONFIG_PCIEASPM=y
+# CONFIG_PCIEASPM_DEBUG is not set
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+CONFIG_ARCH_SUPPORTS_MSI=y
+CONFIG_PCI_MSI=y
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
+CONFIG_PCI_STUB=m
+CONFIG_HT_IRQ=y
+CONFIG_PCI_ATS=y
+CONFIG_PCI_IOV=y
+CONFIG_PCI_PRI=y
+CONFIG_PCI_PASID=y
+CONFIG_PCI_IOAPIC=y
+CONFIG_PCI_LABEL=y
+CONFIG_ISA_DMA_API=y
+CONFIG_ISA=y
+# CONFIG_EISA is not set
+# CONFIG_SCx200 is not set
+CONFIG_OLPC=y
+CONFIG_OLPC_XO1_PM=y
+CONFIG_OLPC_XO1_RTC=y
+CONFIG_OLPC_XO1_SCI=y
+CONFIG_OLPC_XO15_SCI=y
+# CONFIG_ALIX is not set
+# CONFIG_NET5501 is not set
+# CONFIG_GEOS is not set
+CONFIG_AMD_NB=y
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_PCMCIA_LOAD_CIS=y
+CONFIG_CARDBUS=y
+
+#
+# PC-card bridges
+#
+CONFIG_YENTA=m
+CONFIG_YENTA_O2=y
+CONFIG_YENTA_RICOH=y
+CONFIG_YENTA_TI=y
+CONFIG_YENTA_ENE_TUNE=y
+CONFIG_YENTA_TOSHIBA=y
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_I82365=m
+CONFIG_TCIC=m
+CONFIG_PCMCIA_PROBE=y
+CONFIG_PCCARD_NONSTATIC=y
+CONFIG_HOTPLUG_PCI=m
+CONFIG_HOTPLUG_PCI_FAKE=m
+CONFIG_HOTPLUG_PCI_COMPAQ=m
+# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
+CONFIG_HOTPLUG_PCI_IBM=m
+CONFIG_HOTPLUG_PCI_ACPI=m
+CONFIG_HOTPLUG_PCI_ACPI_IBM=m
+CONFIG_HOTPLUG_PCI_CPCI=y
+CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
+CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
+CONFIG_HOTPLUG_PCI_SHPC=m
+CONFIG_RAPIDIO=y
+CONFIG_RAPIDIO_TSI721=y
+CONFIG_RAPIDIO_DISC_TIMEOUT=30
+# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set
+CONFIG_RAPIDIO_DMA_ENGINE=y
+CONFIG_RAPIDIO_DEBUG=y
+CONFIG_RAPIDIO_TSI57X=y
+CONFIG_RAPIDIO_CPS_XX=y
+CONFIG_RAPIDIO_TSI568=y
+CONFIG_RAPIDIO_CPS_GEN2=y
+CONFIG_RAPIDIO_TSI500=y
+
+#
+# Executable file formats / Emulations
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_HAVE_AOUT=y
+CONFIG_BINFMT_MISC=y
+CONFIG_HAVE_ATOMIC_IOMAP=y
+CONFIG_HAVE_TEXT_POKE_SMP=y
+CONFIG_NET=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+CONFIG_UNIX=y
+CONFIG_UNIX_DIAG=m
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=m
+CONFIG_XFRM_USER=m
+# CONFIG_XFRM_SUB_POLICY is not set
+# CONFIG_XFRM_MIGRATE is not set
+# CONFIG_XFRM_STATISTICS is not set
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=m
+# CONFIG_NET_KEY_MIGRATE is not set
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_FIB_TRIE_STATS=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+CONFIG_IP_ROUTE_CLASSID=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IPGRE=m
+# CONFIG_NET_IPGRE_BROADCAST is not set
+CONFIG_IP_MROUTE=y
+# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+# CONFIG_ARPD is not set
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=m
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_XFRM_MODE_TRANSPORT=m
+CONFIG_INET_XFRM_MODE_TUNNEL=m
+CONFIG_INET_XFRM_MODE_BEET=m
+CONFIG_INET_LRO=y
+CONFIG_INET_DIAG=y
+CONFIG_INET_TCP_DIAG=y
+CONFIG_INET_UDP_DIAG=m
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=m
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="cubic"
+# CONFIG_TCP_MD5SIG is not set
+CONFIG_IPV6=y
+CONFIG_IPV6_PRIVACY=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_INET6_XFRM_MODE_TRANSPORT=m
+CONFIG_INET6_XFRM_MODE_TUNNEL=m
+CONFIG_INET6_XFRM_MODE_BEET=m
+CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
+CONFIG_IPV6_SIT=m
+CONFIG_IPV6_SIT_6RD=y
+CONFIG_IPV6_NDISC_NODETYPE=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+# CONFIG_IPV6_MROUTE is not set
+CONFIG_NETLABEL=y
+CONFIG_NETWORK_SECMARK=y
+CONFIG_NETWORK_PHY_TIMESTAMPING=y
+CONFIG_NETFILTER=y
+# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=y
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_SECMARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CT_PROTO_DCCP=m
+CONFIG_NF_CT_PROTO_GRE=m
+CONFIG_NF_CT_PROTO_SCTP=m
+CONFIG_NF_CT_PROTO_UDPLITE=m
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_BROADCAST=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=m
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_QUEUE_CT=y
+CONFIG_NETFILTER_TPROXY=m
+CONFIG_NETFILTER_XTABLES=m
+
+#
+# Xtables combined modules
+#
+CONFIG_NETFILTER_XT_MARK=m
+CONFIG_NETFILTER_XT_CONNMARK=m
+CONFIG_NETFILTER_XT_SET=m
+
+#
+# Xtables targets
+#
+CONFIG_NETFILTER_XT_TARGET_AUDIT=m
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
+CONFIG_NETFILTER_XT_TARGET_CT=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_HMARK=m
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_TEE=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_SECMARK=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+
+#
+# Xtables matches
+#
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_CPU=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+# CONFIG_NETFILTER_XT_MATCH_GRADM is not set
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_NFACCT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+CONFIG_IP_VS=m
+# CONFIG_IP_VS_IPV6 is not set
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+
+#
+# IPVS transport protocol load balancing support
+#
+CONFIG_IP_VS_PROTO_TCP=y
+CONFIG_IP_VS_PROTO_UDP=y
+CONFIG_IP_VS_PROTO_AH_ESP=y
+CONFIG_IP_VS_PROTO_ESP=y
+CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
+
+#
+# IPVS scheduler
+#
+CONFIG_IP_VS_RR=m
+CONFIG_IP_VS_WRR=m
+CONFIG_IP_VS_LC=m
+CONFIG_IP_VS_WLC=m
+CONFIG_IP_VS_LBLC=m
+CONFIG_IP_VS_LBLCR=m
+CONFIG_IP_VS_DH=m
+CONFIG_IP_VS_SH=m
+CONFIG_IP_VS_SED=m
+CONFIG_IP_VS_NQ=m
+
+#
+# IPVS SH scheduler
+#
+CONFIG_IP_VS_SH_TAB_BITS=8
+
+#
+# IPVS application helper
+#
+CONFIG_IP_VS_FTP=m
+CONFIG_IP_VS_NFCT=y
+CONFIG_IP_VS_PE_SIP=m
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_NF_CONNTRACK_IPV4=m
+# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set
+CONFIG_IP_NF_QUEUE=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_ULOG=m
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_NEEDED=y
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PROTO_DCCP=m
+CONFIG_NF_NAT_PROTO_GRE=m
+CONFIG_NF_NAT_PROTO_UDPLITE=m
+CONFIG_NF_NAT_PROTO_SCTP=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+CONFIG_IP_NF_SECURITY=m
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+
+#
+# IPv6: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV6=m
+CONFIG_NF_CONNTRACK_IPV6=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_TARGET_HL=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_RAW=m
+CONFIG_IP6_NF_SECURITY=m
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_IP6=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_ULOG=m
+CONFIG_BRIDGE_EBT_NFLOG=m
+CONFIG_IP_DCCP=m
+CONFIG_INET_DCCP_DIAG=m
+
+#
+# DCCP CCIDs Configuration (EXPERIMENTAL)
+#
+# CONFIG_IP_DCCP_CCID2_DEBUG is not set
+CONFIG_IP_DCCP_CCID3=y
+# CONFIG_IP_DCCP_CCID3_DEBUG is not set
+CONFIG_IP_DCCP_TFRC_LIB=y
+
+#
+# DCCP Kernel Hacking
+#
+# CONFIG_IP_DCCP_DEBUG is not set
+CONFIG_NET_DCCPPROBE=m
+CONFIG_IP_SCTP=m
+CONFIG_NET_SCTPPROBE=m
+# CONFIG_SCTP_DBG_MSG is not set
+# CONFIG_SCTP_DBG_OBJCNT is not set
+# CONFIG_SCTP_HMAC_NONE is not set
+CONFIG_SCTP_HMAC_SHA1=y
+# CONFIG_SCTP_HMAC_MD5 is not set
+# CONFIG_RDS is not set
+# CONFIG_TIPC is not set
+CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_L2TP=m
+# CONFIG_L2TP_DEBUGFS is not set
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=m
+CONFIG_L2TP_ETH=m
+CONFIG_STP=m
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+# CONFIG_NET_DSA is not set
+CONFIG_VLAN_8021Q=m
+# CONFIG_VLAN_8021Q_GVRP is not set
+# CONFIG_DECNET is not set
+CONFIG_LLC=m
+CONFIG_LLC2=m
+CONFIG_IPX=m
+# CONFIG_IPX_INTERN is not set
+CONFIG_ATALK=m
+CONFIG_DEV_APPLETALK=m
+CONFIG_LTPC=m
+CONFIG_COPS=m
+CONFIG_COPS_DAYNA=y
+CONFIG_COPS_TANGENT=y
+CONFIG_IPDDP=m
+CONFIG_IPDDP_ENCAP=y
+CONFIG_IPDDP_DECAP=y
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_WAN_ROUTER is not set
+CONFIG_PHONET=m
+CONFIG_IEEE802154=m
+CONFIG_IEEE802154_6LOWPAN=m
+CONFIG_MAC802154=m
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
+CONFIG_NET_SCH_RED=m
+CONFIG_NET_SCH_SFB=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+CONFIG_NET_SCH_GRED=m
+CONFIG_NET_SCH_DSMARK=m
+CONFIG_NET_SCH_NETEM=m
+CONFIG_NET_SCH_DRR=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_CHOKE=m
+CONFIG_NET_SCH_QFQ=m
+CONFIG_NET_SCH_CODEL=m
+CONFIG_NET_SCH_FQ_CODEL=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_SCH_PLUG=m
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_TCINDEX=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+# CONFIG_CLS_U32_PERF is not set
+# CONFIG_CLS_U32_MARK is not set
+CONFIG_NET_CLS_RSVP=m
+CONFIG_NET_CLS_RSVP6=m
+CONFIG_NET_CLS_FLOW=m
+CONFIG_NET_CLS_CGROUP=y
+# CONFIG_NET_EMATCH is not set
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=m
+CONFIG_NET_ACT_GACT=m
+CONFIG_GACT_PROB=y
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_IPT=m
+CONFIG_NET_ACT_NAT=m
+CONFIG_NET_ACT_PEDIT=m
+CONFIG_NET_ACT_SIMP=m
+CONFIG_NET_ACT_SKBEDIT=m
+CONFIG_NET_ACT_CSUM=m
+CONFIG_NET_CLS_IND=y
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=y
+CONFIG_BATMAN_ADV=m
+CONFIG_BATMAN_ADV_BLA=y
+# CONFIG_BATMAN_ADV_DEBUG is not set
+CONFIG_OPENVSWITCH=m
+CONFIG_RPS=y
+CONFIG_RFS_ACCEL=y
+CONFIG_XPS=y
+CONFIG_NETPRIO_CGROUP=m
+CONFIG_BQL=y
+
+#
+# Network testing
+#
+CONFIG_NET_PKTGEN=m
+CONFIG_NET_TCPPROBE=m
+CONFIG_NET_DROP_MONITOR=y
+CONFIG_HAMRADIO=y
+
+#
+# Packet Radio protocols
+#
+CONFIG_AX25=m
+CONFIG_AX25_DAMA_SLAVE=y
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+#
+# AX.25 network device drivers
+#
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_SCC=m
+# CONFIG_SCC_DELAY is not set
+# CONFIG_SCC_TRXECHO is not set
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_BAYCOM_PAR=m
+CONFIG_BAYCOM_EPP=m
+CONFIG_YAM=m
+# CONFIG_CAN is not set
+CONFIG_IRDA=m
+
+#
+# IrDA protocols
+#
+CONFIG_IRLAN=m
+CONFIG_IRNET=m
+CONFIG_IRCOMM=m
+CONFIG_IRDA_ULTRA=y
+
+#
+# IrDA options
+#
+CONFIG_IRDA_CACHE_LAST_LSAP=y
+CONFIG_IRDA_FAST_RR=y
+# CONFIG_IRDA_DEBUG is not set
+
+#
+# Infrared-port device drivers
+#
+
+#
+# SIR device drivers
+#
+CONFIG_IRTTY_SIR=m
+
+#
+# Dongle support
+#
+CONFIG_DONGLE=y
+CONFIG_ESI_DONGLE=m
+CONFIG_ACTISYS_DONGLE=m
+CONFIG_TEKRAM_DONGLE=m
+CONFIG_TOIM3232_DONGLE=m
+CONFIG_LITELINK_DONGLE=m
+CONFIG_MA600_DONGLE=m
+CONFIG_GIRBIL_DONGLE=m
+CONFIG_MCP2120_DONGLE=m
+CONFIG_OLD_BELKIN_DONGLE=m
+CONFIG_ACT200L_DONGLE=m
+CONFIG_KINGSUN_DONGLE=m
+CONFIG_KSDAZZLE_DONGLE=m
+CONFIG_KS959_DONGLE=m
+
+#
+# FIR device drivers
+#
+CONFIG_USB_IRDA=m
+CONFIG_SIGMATEL_FIR=m
+CONFIG_NSC_FIR=m
+CONFIG_WINBOND_FIR=m
+CONFIG_TOSHIBA_FIR=m
+CONFIG_SMC_IRCC_FIR=m
+CONFIG_ALI_FIR=m
+CONFIG_VLSI_FIR=m
+CONFIG_VIA_FIR=m
+CONFIG_MCS_FIR=m
+CONFIG_BT=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+# CONFIG_BT_BNEP_MC_FILTER is not set
+# CONFIG_BT_BNEP_PROTO_FILTER is not set
+# CONFIG_BT_CMTP is not set
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIBTUSB=m
+CONFIG_BT_HCIBTSDIO=m
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIUART_ATH3K=y
+CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIUART_3WIRE=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIDTL1=m
+CONFIG_BT_HCIBT3C=m
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIVHCI=m
+CONFIG_BT_MRVL=m
+CONFIG_BT_MRVL_SDIO=m
+CONFIG_BT_ATH3K=m
+CONFIG_BT_WILINK=m
+CONFIG_AF_RXRPC=m
+# CONFIG_AF_RXRPC_DEBUG is not set
+CONFIG_RXKAD=m
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_WIRELESS_EXT=y
+CONFIG_WEXT_CORE=y
+CONFIG_WEXT_PROC=y
+CONFIG_WEXT_SPY=y
+CONFIG_WEXT_PRIV=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_REG_DEBUG is not set
+CONFIG_CFG80211_DEFAULT_PS=y
+# CONFIG_CFG80211_DEBUGFS is not set
+# CONFIG_CFG80211_INTERNAL_REGDB is not set
+CONFIG_CFG80211_WEXT=y
+CONFIG_LIB80211=m
+CONFIG_LIB80211_CRYPT_WEP=m
+CONFIG_LIB80211_CRYPT_CCMP=m
+CONFIG_LIB80211_CRYPT_TKIP=m
+# CONFIG_LIB80211_DEBUG is not set
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_MINSTREL_HT=y
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
+CONFIG_MAC80211_MESH=y
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_DEBUGFS is not set
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+CONFIG_WIMAX=m
+CONFIG_WIMAX_DEBUG_LEVEL=8
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
+CONFIG_NET_9P=m
+CONFIG_NET_9P_VIRTIO=m
+# CONFIG_NET_9P_DEBUG is not set
+CONFIG_CAIF=m
+# CONFIG_CAIF_DEBUG is not set
+CONFIG_CAIF_NETDEV=m
+CONFIG_CAIF_USB=m
+CONFIG_CEPH_LIB=m
+# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
+# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
+CONFIG_NFC=m
+CONFIG_NFC_NCI=m
+CONFIG_NFC_HCI=m
+# CONFIG_NFC_SHDLC is not set
+# CONFIG_NFC_LLCP is not set
+
+#
+# Near Field Communication (NFC) devices
+#
+CONFIG_PN544_NFC=m
+CONFIG_NFC_PN533=m
+CONFIG_NFC_WILINK=m
+
+#
+# Device Drivers
+#
+
+#
+# Generic Driver Options
+#
+CONFIG_UEVENT_HELPER_PATH=""
+CONFIG_DEVTMPFS=y
+# CONFIG_DEVTMPFS_MOUNT is not set
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+CONFIG_FW_LOADER=y
+CONFIG_FIRMWARE_IN_KERNEL=y
+CONFIG_EXTRA_FIRMWARE=""
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
+# CONFIG_SYS_HYPERVISOR is not set
+# CONFIG_GENERIC_CPU_DEVICES is not set
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=m
+CONFIG_REGMAP_IRQ=y
+CONFIG_DMA_SHARED_BUFFER=y
+# CONFIG_CMA is not set
+CONFIG_CONNECTOR=y
+CONFIG_PROC_EVENTS=y
+CONFIG_MTD=m
+CONFIG_MTD_TESTS=m
+CONFIG_MTD_REDBOOT_PARTS=m
+CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
+# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
+# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
+CONFIG_MTD_OF_PARTS=m
+CONFIG_MTD_AR7_PARTS=m
+
+#
+# User Modules And Translation Layers
+#
+CONFIG_MTD_CHAR=m
+CONFIG_MTD_BLKDEVS=m
+CONFIG_MTD_BLOCK=m
+CONFIG_MTD_BLOCK_RO=m
+CONFIG_FTL=m
+CONFIG_NFTL=m
+CONFIG_NFTL_RW=y
+CONFIG_INFTL=m
+CONFIG_RFD_FTL=m
+CONFIG_SSFDC=m
+# CONFIG_SM_FTL is not set
+CONFIG_MTD_OOPS=m
+CONFIG_MTD_SWAP=m
+
+#
+# RAM/ROM/Flash chip drivers
+#
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+CONFIG_MTD_GEN_PROBE=m
+# CONFIG_MTD_CFI_ADV_OPTIONS is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+CONFIG_MTD_CFI_INTELEXT=m
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+CONFIG_MTD_CFI_UTIL=m
+CONFIG_MTD_RAM=m
+CONFIG_MTD_ROM=m
+CONFIG_MTD_ABSENT=m
+
+#
+# Mapping drivers for chip access
+#
+CONFIG_MTD_COMPLEX_MAPPINGS=y
+# CONFIG_MTD_PHYSMAP is not set
+CONFIG_MTD_PHYSMAP_OF=m
+CONFIG_MTD_SC520CDP=m
+CONFIG_MTD_NETSC520=m
+CONFIG_MTD_TS5500=m
+# CONFIG_MTD_SBC_GXX is not set
+# CONFIG_MTD_AMD76XROM is not set
+# CONFIG_MTD_ICHXROM is not set
+# CONFIG_MTD_ESB2ROM is not set
+# CONFIG_MTD_CK804XROM is not set
+CONFIG_MTD_SCB2_FLASH=m
+# CONFIG_MTD_NETtel is not set
+# CONFIG_MTD_L440GX is not set
+CONFIG_MTD_PCI=m
+# CONFIG_MTD_PCMCIA is not set
+# CONFIG_MTD_GPIO_ADDR is not set
+# CONFIG_MTD_INTEL_VR_NOR is not set
+CONFIG_MTD_PLATRAM=m
+# CONFIG_MTD_LATCH_ADDR is not set
+
+#
+# Self-contained MTD device drivers
+#
+CONFIG_MTD_PMC551=m
+# CONFIG_MTD_PMC551_BUGFIX is not set
+# CONFIG_MTD_PMC551_DEBUG is not set
+# CONFIG_MTD_SLRAM is not set
+CONFIG_MTD_PHRAM=m
+CONFIG_MTD_MTDRAM=m
+CONFIG_MTDRAM_TOTAL_SIZE=4096
+CONFIG_MTDRAM_ERASE_SIZE=128
+CONFIG_MTD_BLOCK2MTD=m
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOC2000 is not set
+# CONFIG_MTD_DOC2001 is not set
+# CONFIG_MTD_DOC2001PLUS is not set
+CONFIG_MTD_DOCG3=m
+CONFIG_BCH_CONST_M=14
+CONFIG_BCH_CONST_T=4
+CONFIG_MTD_NAND_ECC=m
+CONFIG_MTD_NAND_ECC_SMC=y
+CONFIG_MTD_NAND=m
+# CONFIG_MTD_NAND_VERIFY_WRITE is not set
+# CONFIG_MTD_NAND_ECC_BCH is not set
+CONFIG_MTD_SM_COMMON=m
+# CONFIG_MTD_NAND_MUSEUM_IDS is not set
+# CONFIG_MTD_NAND_DENALI is not set
+CONFIG_MTD_NAND_IDS=m
+CONFIG_MTD_NAND_RICOH=m
+CONFIG_MTD_NAND_DISKONCHIP=m
+# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set
+CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
+# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set
+CONFIG_MTD_NAND_DOCG4=m
+# CONFIG_MTD_NAND_CAFE is not set
+CONFIG_MTD_NAND_CS553X=m
+CONFIG_MTD_NAND_NANDSIM=m
+# CONFIG_MTD_NAND_PLATFORM is not set
+CONFIG_MTD_ALAUDA=m
+# CONFIG_MTD_ONENAND is not set
+
+#
+# LPDDR flash memory drivers
+#
+CONFIG_MTD_LPDDR=m
+CONFIG_MTD_QINFO_PROBE=m
+CONFIG_MTD_UBI=m
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_RESERVE=1
+# CONFIG_MTD_UBI_GLUEBI is not set
+CONFIG_OF=y
+
+#
+# Device Tree and Open Firmware support
+#
+CONFIG_PROC_DEVICETREE=y
+# CONFIG_OF_SELFTEST is not set
+CONFIG_OF_PROMTREE=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_DEVICE=y
+CONFIG_OF_I2C=m
+CONFIG_OF_NET=y
+CONFIG_OF_MDIO=m
+CONFIG_OF_PCI=y
+CONFIG_OF_PCI_IRQ=y
+CONFIG_OF_MTD=y
+CONFIG_PARPORT=m
+CONFIG_PARPORT_PC=m
+CONFIG_PARPORT_SERIAL=m
+CONFIG_PARPORT_PC_FIFO=y
+CONFIG_PARPORT_PC_SUPERIO=y
+CONFIG_PARPORT_PC_PCMCIA=m
+# CONFIG_PARPORT_GSC is not set
+CONFIG_PARPORT_AX88796=m
+CONFIG_PARPORT_1284=y
+CONFIG_PARPORT_NOT_PC=y
+CONFIG_PNP=y
+# CONFIG_PNP_DEBUG_MESSAGES is not set
+
+#
+# Protocols
+#
+CONFIG_ISAPNP=y
+# CONFIG_PNPBIOS is not set
+CONFIG_PNPACPI=y
+CONFIG_BLK_DEV=y
+CONFIG_BLK_DEV_FD=m
+# CONFIG_BLK_DEV_XD is not set
+# CONFIG_PARIDE is not set
+CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
+CONFIG_BLK_CPQ_DA=m
+CONFIG_BLK_CPQ_CISS_DA=m
+# CONFIG_CISS_SCSI_TAPE is not set
+CONFIG_BLK_DEV_DAC960=m
+# CONFIG_BLK_DEV_UMEM is not set
+# CONFIG_BLK_DEV_COW_COMMON is not set
+CONFIG_BLK_DEV_LOOP=m
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
+CONFIG_BLK_DEV_CRYPTOLOOP=m
+CONFIG_BLK_DEV_DRBD=m
+# CONFIG_DRBD_FAULT_INJECTION is not set
+CONFIG_BLK_DEV_NBD=m
+CONFIG_BLK_DEV_NVME=m
+CONFIG_BLK_DEV_OSD=m
+CONFIG_BLK_DEV_SX8=m
+# CONFIG_BLK_DEV_UB is not set
+CONFIG_BLK_DEV_RAM=m
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=16384
+# CONFIG_BLK_DEV_XIP is not set
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+CONFIG_ATA_OVER_ETH=m
+CONFIG_VIRTIO_BLK=m
+# CONFIG_BLK_DEV_HD is not set
+CONFIG_BLK_DEV_RBD=m
+
+#
+# Misc devices
+#
+CONFIG_SENSORS_LIS3LV02D=m
+CONFIG_AD525X_DPOT=m
+CONFIG_AD525X_DPOT_I2C=m
+# CONFIG_IBM_ASM is not set
+CONFIG_PHANTOM=m
+CONFIG_INTEL_MID_PTI=m
+CONFIG_SGI_IOC4=m
+CONFIG_TIFM_CORE=m
+CONFIG_TIFM_7XX1=m
+CONFIG_ICS932S401=m
+CONFIG_ENCLOSURE_SERVICES=m
+CONFIG_CS5535_MFGPT=m
+CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7
+CONFIG_CS5535_CLOCK_EVENT_SRC=m
+CONFIG_HP_ILO=m
+CONFIG_APDS9802ALS=m
+CONFIG_ISL29003=m
+CONFIG_ISL29020=m
+CONFIG_SENSORS_TSL2550=m
+CONFIG_SENSORS_BH1780=m
+CONFIG_SENSORS_BH1770=m
+CONFIG_SENSORS_APDS990X=m
+CONFIG_HMC6352=m
+CONFIG_DS1682=m
+CONFIG_VMWARE_BALLOON=m
+CONFIG_BMP085=y
+CONFIG_BMP085_I2C=m
+# CONFIG_PCH_PHUB is not set
+CONFIG_USB_SWITCH_FSA9480=m
+CONFIG_C2PORT=m
+CONFIG_C2PORT_DURAMAR_2150=m
+
+#
+# EEPROM support
+#
+CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_LEGACY=m
+CONFIG_EEPROM_MAX6875=m
+CONFIG_EEPROM_93CX6=m
+CONFIG_CB710_CORE=m
+# CONFIG_CB710_DEBUG is not set
+CONFIG_CB710_DEBUG_ASSUMPTIONS=y
+
+#
+# Texas Instruments shared transport line discipline
+#
+CONFIG_TI_ST=m
+CONFIG_SENSORS_LIS3_I2C=m
+
+#
+# Altera FPGA firmware download module
+#
+CONFIG_ALTERA_STAPL=m
+CONFIG_INTEL_MEI=m
+CONFIG_HAVE_IDE=y
+# CONFIG_IDE is not set
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=m
+CONFIG_RAID_ATTRS=m
+CONFIG_SCSI=m
+CONFIG_SCSI_DMA=y
+CONFIG_SCSI_TGT=m
+CONFIG_SCSI_NETLINK=y
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=m
+CONFIG_CHR_DEV_ST=m
+CONFIG_CHR_DEV_OSST=m
+CONFIG_BLK_DEV_SR=m
+CONFIG_BLK_DEV_SR_VENDOR=y
+CONFIG_CHR_DEV_SG=m
+CONFIG_CHR_DEV_SCH=m
+CONFIG_SCSI_ENCLOSURE=m
+CONFIG_SCSI_MULTI_LUN=y
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+# CONFIG_SCSI_SCAN_ASYNC is not set
+
+#
+# SCSI Transports
+#
+CONFIG_SCSI_SPI_ATTRS=m
+CONFIG_SCSI_FC_ATTRS=m
+# CONFIG_SCSI_FC_TGT_ATTRS is not set
+CONFIG_SCSI_ISCSI_ATTRS=m
+CONFIG_SCSI_SAS_ATTRS=m
+CONFIG_SCSI_SAS_LIBSAS=m
+CONFIG_SCSI_SAS_ATA=y
+CONFIG_SCSI_SAS_HOST_SMP=y
+CONFIG_SCSI_SRP_ATTRS=m
+CONFIG_SCSI_SRP_TGT_ATTRS=y
+CONFIG_SCSI_LOWLEVEL=y
+CONFIG_ISCSI_TCP=m
+CONFIG_ISCSI_BOOT_SYSFS=m
+CONFIG_SCSI_CXGB3_ISCSI=m
+CONFIG_SCSI_CXGB4_ISCSI=m
+CONFIG_SCSI_BNX2_ISCSI=m
+CONFIG_SCSI_BNX2X_FCOE=m
+CONFIG_BE2ISCSI=m
+CONFIG_BLK_DEV_3W_XXXX_RAID=m
+CONFIG_SCSI_HPSA=m
+CONFIG_SCSI_3W_9XXX=m
+CONFIG_SCSI_3W_SAS=m
+CONFIG_SCSI_7000FASST=m
+CONFIG_SCSI_ACARD=m
+CONFIG_SCSI_AHA152X=m
+CONFIG_SCSI_AHA1542=m
+CONFIG_SCSI_AACRAID=m
+CONFIG_SCSI_AIC7XXX=m
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
+CONFIG_AIC7XXX_RESET_DELAY_MS=15000
+# CONFIG_AIC7XXX_DEBUG_ENABLE is not set
+CONFIG_AIC7XXX_DEBUG_MASK=0
+CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
+# CONFIG_SCSI_AIC7XXX_OLD is not set
+CONFIG_SCSI_AIC79XX=m
+CONFIG_AIC79XX_CMDS_PER_DEVICE=32
+CONFIG_AIC79XX_RESET_DELAY_MS=15000
+# CONFIG_AIC79XX_DEBUG_ENABLE is not set
+CONFIG_AIC79XX_DEBUG_MASK=0
+CONFIG_AIC79XX_REG_PRETTY_PRINT=y
+CONFIG_SCSI_AIC94XX=m
+# CONFIG_AIC94XX_DEBUG is not set
+CONFIG_SCSI_MVSAS=m
+# CONFIG_SCSI_MVSAS_DEBUG is not set
+CONFIG_SCSI_MVSAS_TASKLET=y
+CONFIG_SCSI_MVUMI=m
+CONFIG_SCSI_DPT_I2O=m
+CONFIG_SCSI_ADVANSYS=m
+CONFIG_SCSI_IN2000=m
+CONFIG_SCSI_ARCMSR=m
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+CONFIG_MEGARAID_SAS=m
+CONFIG_SCSI_MPT2SAS=m
+CONFIG_SCSI_MPT2SAS_MAX_SGE=128
+# CONFIG_SCSI_MPT2SAS_LOGGING is not set
+CONFIG_SCSI_UFSHCD=m
+CONFIG_SCSI_HPTIOP=m
+CONFIG_SCSI_BUSLOGIC=m
+# CONFIG_SCSI_FLASHPOINT is not set
+CONFIG_VMWARE_PVSCSI=m
+CONFIG_HYPERV_STORAGE=m
+CONFIG_LIBFC=m
+CONFIG_LIBFCOE=m
+CONFIG_FCOE=m
+CONFIG_FCOE_FNIC=m
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_DTC3280=m
+CONFIG_SCSI_EATA=m
+# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set
+# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set
+CONFIG_SCSI_EATA_MAX_TAGS=16
+CONFIG_SCSI_FUTURE_DOMAIN=m
+CONFIG_SCSI_GDTH=m
+CONFIG_SCSI_ISCI=m
+CONFIG_SCSI_GENERIC_NCR5380=m
+CONFIG_SCSI_GENERIC_NCR5380_MMIO=m
+CONFIG_SCSI_GENERIC_NCR53C400=y
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
+CONFIG_SCSI_PPA=m
+CONFIG_SCSI_IMM=m
+# CONFIG_SCSI_IZIP_EPP16 is not set
+# CONFIG_SCSI_IZIP_SLOW_CTR is not set
+CONFIG_SCSI_NCR53C406A=m
+CONFIG_SCSI_STEX=m
+CONFIG_SCSI_SYM53C8XX_2=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_SYM53C8XX_MMIO=y
+CONFIG_SCSI_IPR=m
+# CONFIG_SCSI_IPR_TRACE is not set
+# CONFIG_SCSI_IPR_DUMP is not set
+CONFIG_SCSI_PAS16=m
+CONFIG_SCSI_QLOGIC_FAS=m
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_QLA_FC=m
+CONFIG_TCM_QLA2XXX=m
+CONFIG_SCSI_QLA_ISCSI=m
+CONFIG_SCSI_LPFC=m
+# CONFIG_SCSI_LPFC_DEBUG_FS is not set
+CONFIG_SCSI_SYM53C416=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_DC390T=m
+CONFIG_SCSI_T128=m
+CONFIG_SCSI_U14_34F=m
+# CONFIG_SCSI_U14_34F_TAGGED_QUEUE is not set
+# CONFIG_SCSI_U14_34F_LINKED_COMMANDS is not set
+CONFIG_SCSI_U14_34F_MAX_TAGS=8
+CONFIG_SCSI_ULTRASTOR=m
+CONFIG_SCSI_NSP32=m
+# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_PMCRAID=m
+CONFIG_SCSI_PM8001=m
+CONFIG_SCSI_SRP=m
+CONFIG_SCSI_BFA_FC=m
+CONFIG_SCSI_VIRTIO=m
+CONFIG_SCSI_LOWLEVEL_PCMCIA=y
+CONFIG_PCMCIA_AHA152X=m
+CONFIG_PCMCIA_FDOMAIN=m
+CONFIG_PCMCIA_NINJA_SCSI=m
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+CONFIG_SCSI_DH=m
+CONFIG_SCSI_DH_RDAC=m
+CONFIG_SCSI_DH_HP_SW=m
+CONFIG_SCSI_DH_EMC=m
+CONFIG_SCSI_DH_ALUA=m
+CONFIG_SCSI_OSD_INITIATOR=m
+CONFIG_SCSI_OSD_ULD=m
+CONFIG_SCSI_OSD_DPRINT_SENSE=0
+# CONFIG_SCSI_OSD_DEBUG is not set
+CONFIG_ATA=m
+# CONFIG_ATA_NONSTANDARD is not set
+CONFIG_ATA_VERBOSE_ERROR=y
+CONFIG_ATA_ACPI=y
+CONFIG_SATA_PMP=y
+
+#
+# Controllers with non-SFF native interface
+#
+CONFIG_SATA_AHCI=m
+CONFIG_SATA_AHCI_PLATFORM=m
+CONFIG_SATA_INIC162X=m
+CONFIG_SATA_ACARD_AHCI=m
+CONFIG_SATA_SIL24=m
+CONFIG_ATA_SFF=y
+
+#
+# SFF controllers with custom DMA interface
+#
+CONFIG_PDC_ADMA=m
+CONFIG_SATA_QSTOR=m
+CONFIG_SATA_SX4=m
+CONFIG_ATA_BMDMA=y
+
+#
+# SATA SFF controllers with BMDMA
+#
+CONFIG_ATA_PIIX=m
+CONFIG_SATA_MV=m
+CONFIG_SATA_NV=m
+CONFIG_SATA_PROMISE=m
+CONFIG_SATA_SIL=m
+CONFIG_SATA_SIS=m
+CONFIG_SATA_SVW=m
+CONFIG_SATA_ULI=m
+CONFIG_SATA_VIA=m
+CONFIG_SATA_VITESSE=m
+
+#
+# PATA SFF controllers with BMDMA
+#
+CONFIG_PATA_ALI=m
+CONFIG_PATA_AMD=m
+CONFIG_PATA_ARASAN_CF=m
+CONFIG_PATA_ARTOP=m
+CONFIG_PATA_ATIIXP=m
+CONFIG_PATA_ATP867X=m
+CONFIG_PATA_CMD64X=m
+CONFIG_PATA_CS5520=m
+CONFIG_PATA_CS5530=m
+CONFIG_PATA_CS5535=m
+CONFIG_PATA_CS5536=m
+CONFIG_PATA_CYPRESS=m
+CONFIG_PATA_EFAR=m
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_HPT37X=m
+CONFIG_PATA_HPT3X2N=m
+CONFIG_PATA_HPT3X3=m
+# CONFIG_PATA_HPT3X3_DMA is not set
+CONFIG_PATA_IT8213=m
+CONFIG_PATA_IT821X=m
+CONFIG_PATA_JMICRON=m
+CONFIG_PATA_MARVELL=m
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_NINJA32=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_OLDPIIX=m
+CONFIG_PATA_OPTIDMA=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_RADISYS=m
+CONFIG_PATA_RDC=m
+CONFIG_PATA_SC1200=m
+CONFIG_PATA_SCH=m
+CONFIG_PATA_SERVERWORKS=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_SIS=m
+CONFIG_PATA_TOSHIBA=m
+CONFIG_PATA_TRIFLEX=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_WINBOND=m
+
+#
+# PIO-only SFF controllers
+#
+CONFIG_PATA_CMD640_PCI=m
+CONFIG_PATA_ISAPNP=m
+CONFIG_PATA_MPIIX=m
+CONFIG_PATA_NS87410=m
+CONFIG_PATA_OPTI=m
+CONFIG_PATA_PCMCIA=m
+CONFIG_PATA_QDI=m
+CONFIG_PATA_RZ1000=m
+CONFIG_PATA_WINBOND_VLB=m
+
+#
+# Generic fallback / legacy drivers
+#
+CONFIG_PATA_ACPI=m
+CONFIG_ATA_GENERIC=m
+CONFIG_PATA_LEGACY=m
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+CONFIG_MD_LINEAR=m
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
+# CONFIG_MULTICORE_RAID456 is not set
+CONFIG_MD_MULTIPATH=m
+CONFIG_MD_FAULTY=m
+CONFIG_BLK_DEV_DM=m
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=m
+CONFIG_DM_PERSISTENT_DATA=m
+CONFIG_DM_CRYPT=m
+CONFIG_DM_SNAPSHOT=m
+CONFIG_DM_THIN_PROVISIONING=m
+# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set
+CONFIG_DM_MIRROR=m
+CONFIG_DM_RAID=m
+CONFIG_DM_LOG_USERSPACE=m
+CONFIG_DM_ZERO=m
+CONFIG_DM_MULTIPATH=m
+CONFIG_DM_MULTIPATH_QL=m
+CONFIG_DM_MULTIPATH_ST=m
+CONFIG_DM_DELAY=m
+CONFIG_DM_UEVENT=y
+CONFIG_DM_FLAKEY=m
+CONFIG_DM_VERITY=m
+CONFIG_TARGET_CORE=m
+CONFIG_TCM_IBLOCK=m
+CONFIG_TCM_FILEIO=m
+CONFIG_TCM_PSCSI=m
+CONFIG_LOOPBACK_TARGET=m
+CONFIG_TCM_FC=m
+CONFIG_ISCSI_TARGET=m
+CONFIG_SBP_TARGET=m
+CONFIG_FUSION=y
+CONFIG_FUSION_SPI=m
+CONFIG_FUSION_FC=m
+CONFIG_FUSION_SAS=m
+CONFIG_FUSION_MAX_SGE=128
+CONFIG_FUSION_CTL=m
+# CONFIG_FUSION_LOGGING is not set
+
+#
+# IEEE 1394 (FireWire) support
+#
+CONFIG_FIREWIRE=m
+CONFIG_FIREWIRE_OHCI=m
+CONFIG_FIREWIRE_SBP2=m
+CONFIG_FIREWIRE_NET=m
+CONFIG_FIREWIRE_NOSY=m
+CONFIG_I2O=m
+CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
+CONFIG_I2O_EXT_ADAPTEC=y
+CONFIG_I2O_CONFIG=m
+CONFIG_I2O_CONFIG_OLD_IOCTL=y
+CONFIG_I2O_BUS=m
+CONFIG_I2O_BLOCK=m
+CONFIG_I2O_SCSI=m
+CONFIG_I2O_PROC=m
+CONFIG_MACINTOSH_DRIVERS=y
+CONFIG_MAC_EMUMOUSEBTN=y
+CONFIG_NETDEVICES=y
+CONFIG_NET_CORE=y
+CONFIG_BONDING=m
+CONFIG_DUMMY=m
+CONFIG_EQUALIZER=m
+# CONFIG_NET_FC is not set
+CONFIG_MII=m
+CONFIG_IEEE802154_DRIVERS=m
+CONFIG_IEEE802154_FAKEHARD=m
+CONFIG_IEEE802154_FAKELB=m
+CONFIG_IFB=m
+CONFIG_NET_TEAM=m
+CONFIG_NET_TEAM_MODE_BROADCAST=m
+CONFIG_NET_TEAM_MODE_ROUNDROBIN=m
+CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m
+CONFIG_NET_TEAM_MODE_LOADBALANCE=m
+CONFIG_MACVLAN=m
+CONFIG_MACVTAP=m
+CONFIG_NETCONSOLE=m
+CONFIG_NETCONSOLE_DYNAMIC=y
+CONFIG_NETPOLL=y
+# CONFIG_NETPOLL_TRAP is not set
+CONFIG_NET_POLL_CONTROLLER=y
+CONFIG_RIONET=m
+CONFIG_RIONET_TX_SIZE=128
+CONFIG_RIONET_RX_SIZE=128
+CONFIG_TUN=m
+CONFIG_VETH=m
+CONFIG_VIRTIO_NET=m
+CONFIG_SUNGEM_PHY=m
+# CONFIG_ARCNET is not set
+CONFIG_ATM_DRIVERS=y
+# CONFIG_ATM_DUMMY is not set
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+# CONFIG_ATM_ZATM_DEBUG is not set
+CONFIG_ATM_NICSTAR=m
+# CONFIG_ATM_NICSTAR_USE_SUNI is not set
+# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_IDT77252_USE_SUNI=y
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+CONFIG_ATM_HORIZON=m
+# CONFIG_ATM_HORIZON_DEBUG is not set
+CONFIG_ATM_IA=m
+# CONFIG_ATM_IA_DEBUG is not set
+CONFIG_ATM_FORE200E=m
+# CONFIG_ATM_FORE200E_USE_TASKLET is not set
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_HE=m
+# CONFIG_ATM_HE_USE_SUNI is not set
+CONFIG_ATM_SOLOS=m
+
+#
+# CAIF transport drivers
+#
+CONFIG_CAIF_TTY=m
+CONFIG_CAIF_SPI_SLAVE=m
+CONFIG_CAIF_SPI_SYNC=y
+CONFIG_CAIF_HSI=m
+CONFIG_ETHERNET=y
+CONFIG_MDIO=m
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_EL1=m
+CONFIG_EL3=m
+CONFIG_3C515=m
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_3C589=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+CONFIG_NET_VENDOR_ADAPTEC=y
+CONFIG_ADAPTEC_STARFIRE=m
+CONFIG_NET_VENDOR_ALTEON=y
+CONFIG_ACENIC=m
+# CONFIG_ACENIC_OMIT_TIGON_I is not set
+CONFIG_NET_VENDOR_AMD=y
+CONFIG_AMD8111_ETH=m
+CONFIG_LANCE=m
+CONFIG_PCNET32=m
+CONFIG_DEPCA=m
+CONFIG_PCMCIA_NMCLAN=m
+CONFIG_NI65=m
+CONFIG_NET_VENDOR_ATHEROS=y
+CONFIG_ATL2=m
+CONFIG_ATL1=m
+CONFIG_ATL1E=m
+CONFIG_ATL1C=m
+CONFIG_NET_VENDOR_BROADCOM=y
+CONFIG_B44=m
+CONFIG_B44_PCI_AUTOSELECT=y
+CONFIG_B44_PCICORE_AUTOSELECT=y
+CONFIG_B44_PCI=y
+CONFIG_BNX2=m
+CONFIG_CNIC=m
+CONFIG_TIGON3=m
+CONFIG_BNX2X=m
+CONFIG_NET_VENDOR_BROCADE=y
+CONFIG_BNA=m
+CONFIG_NET_CALXEDA_XGMAC=m
+CONFIG_NET_VENDOR_CHELSIO=y
+CONFIG_CHELSIO_T1=m
+CONFIG_CHELSIO_T1_1G=y
+CONFIG_CHELSIO_T3=m
+CONFIG_CHELSIO_T4=m
+CONFIG_CHELSIO_T4VF=m
+CONFIG_NET_VENDOR_CIRRUS=y
+CONFIG_CS89x0=m
+# CONFIG_CS89x0_PLATFORM is not set
+CONFIG_NET_VENDOR_CISCO=y
+CONFIG_ENIC=m
+CONFIG_DNET=m
+CONFIG_NET_VENDOR_DEC=y
+CONFIG_EWRK3=m
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_DE2104X_DSL=0
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+# CONFIG_TULIP_NAPI is not set
+CONFIG_DE4X5=m
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_ULI526X=m
+CONFIG_PCMCIA_XIRCOM=m
+CONFIG_NET_VENDOR_DLINK=y
+CONFIG_DE600=m
+CONFIG_DE620=m
+CONFIG_DL2K=m
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+CONFIG_NET_VENDOR_EMULEX=y
+CONFIG_BE2NET=m
+CONFIG_NET_VENDOR_EXAR=y
+CONFIG_S2IO=m
+CONFIG_VXGE=m
+# CONFIG_VXGE_DEBUG_TRACE_ALL is not set
+CONFIG_NET_VENDOR_FUJITSU=y
+CONFIG_AT1700=m
+CONFIG_PCMCIA_FMVJ18X=m
+CONFIG_ETH16I=m
+CONFIG_NET_VENDOR_HP=y
+CONFIG_HP100=m
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E100=m
+CONFIG_E1000=m
+CONFIG_E1000E=m
+CONFIG_IGB=m
+CONFIG_IGB_DCA=y
+CONFIG_IGB_PTP=y
+CONFIG_IGBVF=m
+CONFIG_IXGB=m
+CONFIG_IXGBE=m
+CONFIG_IXGBE_HWMON=y
+CONFIG_IXGBE_DCA=y
+CONFIG_IXGBE_PTP=y
+CONFIG_IXGBEVF=m
+CONFIG_NET_VENDOR_I825XX=y
+CONFIG_ELPLUS=m
+CONFIG_EL16=m
+CONFIG_APRICOT=m
+CONFIG_EEXPRESS=m
+CONFIG_EEXPRESS_PRO=m
+CONFIG_LP486E=m
+CONFIG_NI52=m
+CONFIG_ZNET=m
+CONFIG_IP1000=m
+CONFIG_JME=m
+CONFIG_NET_VENDOR_MARVELL=y
+CONFIG_SKGE=m
+# CONFIG_SKGE_DEBUG is not set
+CONFIG_SKGE_GENESIS=y
+CONFIG_SKY2=m
+# CONFIG_SKY2_DEBUG is not set
+CONFIG_NET_VENDOR_MELLANOX=y
+CONFIG_MLX4_EN=m
+CONFIG_MLX4_CORE=m
+CONFIG_MLX4_DEBUG=y
+CONFIG_NET_VENDOR_MICREL=y
+CONFIG_KS8842=m
+CONFIG_KS8851_MLL=m
+CONFIG_KSZ884X_PCI=m
+CONFIG_NET_VENDOR_MYRI=y
+CONFIG_MYRI10GE=m
+CONFIG_MYRI10GE_DCA=y
+CONFIG_FEALNX=m
+CONFIG_NET_VENDOR_NATSEMI=y
+CONFIG_NATSEMI=m
+CONFIG_NS83820=m
+CONFIG_NET_VENDOR_8390=y
+CONFIG_EL2=m
+CONFIG_AC3200=m
+CONFIG_PCMCIA_AXNET=m
+CONFIG_E2100=m
+CONFIG_HPLAN_PLUS=m
+CONFIG_HPLAN=m
+CONFIG_NE2000=m
+CONFIG_NE2K_PCI=m
+CONFIG_PCMCIA_PCNET=m
+CONFIG_ULTRA=m
+CONFIG_WD80x3=m
+CONFIG_NET_VENDOR_NVIDIA=y
+CONFIG_FORCEDETH=m
+CONFIG_NET_VENDOR_OKI=y
+CONFIG_PCH_GBE=m
+CONFIG_PCH_PTP=y
+CONFIG_ETHOC=m
+CONFIG_NET_PACKET_ENGINE=y
+CONFIG_HAMACHI=m
+CONFIG_YELLOWFIN=m
+CONFIG_NET_VENDOR_QLOGIC=y
+CONFIG_QLA3XXX=m
+CONFIG_QLCNIC=m
+CONFIG_QLGE=m
+CONFIG_NETXEN_NIC=m
+CONFIG_NET_VENDOR_RACAL=y
+CONFIG_NET_VENDOR_REALTEK=y
+CONFIG_ATP=m
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+# CONFIG_8139TOO_PIO is not set
+CONFIG_8139TOO_TUNE_TWISTER=y
+CONFIG_8139TOO_8129=y
+# CONFIG_8139_OLD_RX_RESET is not set
+CONFIG_R8169=m
+CONFIG_NET_VENDOR_RDC=y
+CONFIG_R6040=m
+CONFIG_NET_VENDOR_SEEQ=y
+CONFIG_SEEQ8005=m
+CONFIG_NET_VENDOR_SILAN=y
+CONFIG_SC92031=m
+CONFIG_NET_VENDOR_SIS=y
+CONFIG_SIS900=m
+CONFIG_SIS190=m
+CONFIG_SFC=m
+CONFIG_SFC_MTD=y
+CONFIG_SFC_MCDI_MON=y
+CONFIG_SFC_SRIOV=y
+CONFIG_NET_VENDOR_SMSC=y
+CONFIG_SMC9194=m
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_EPIC100=m
+CONFIG_SMSC9420=m
+CONFIG_NET_VENDOR_STMICRO=y
+CONFIG_STMMAC_ETH=m
+# CONFIG_STMMAC_PLATFORM is not set
+CONFIG_STMMAC_PCI=y
+# CONFIG_STMMAC_DEBUG_FS is not set
+# CONFIG_STMMAC_DA is not set
+CONFIG_STMMAC_RING=y
+# CONFIG_STMMAC_CHAINED is not set
+CONFIG_NET_VENDOR_SUN=y
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNGEM=m
+CONFIG_CASSINI=m
+CONFIG_NIU=m
+CONFIG_NET_VENDOR_TEHUTI=y
+CONFIG_TEHUTI=m
+CONFIG_NET_VENDOR_TI=y
+CONFIG_TLAN=m
+CONFIG_NET_VENDOR_VIA=y
+CONFIG_VIA_RHINE=m
+# CONFIG_VIA_RHINE_MMIO is not set
+CONFIG_VIA_VELOCITY=m
+CONFIG_NET_VENDOR_WIZNET=y
+CONFIG_WIZNET_W5100=m
+CONFIG_WIZNET_W5300=m
+# CONFIG_WIZNET_BUS_DIRECT is not set
+# CONFIG_WIZNET_BUS_INDIRECT is not set
+CONFIG_WIZNET_BUS_ANY=y
+CONFIG_NET_VENDOR_XIRCOM=y
+CONFIG_PCMCIA_XIRC2PS=m
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+CONFIG_NET_SB1000=m
+CONFIG_PHYLIB=m
+
+#
+# MII PHY device drivers
+#
+CONFIG_AMD_PHY=m
+CONFIG_MARVELL_PHY=m
+CONFIG_DAVICOM_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_LXT_PHY=m
+CONFIG_CICADA_PHY=m
+CONFIG_VITESSE_PHY=m
+CONFIG_SMSC_PHY=m
+CONFIG_BROADCOM_PHY=m
+CONFIG_BCM87XX_PHY=m
+CONFIG_ICPLUS_PHY=m
+CONFIG_REALTEK_PHY=m
+CONFIG_NATIONAL_PHY=m
+CONFIG_STE10XP=m
+CONFIG_LSI_ET1011C_PHY=m
+CONFIG_MICREL_PHY=m
+# CONFIG_MDIO_BITBANG is not set
+CONFIG_MDIO_BUS_MUX=m
+CONFIG_MDIO_BUS_MUX_GPIO=m
+CONFIG_PLIP=m
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOATM=m
+CONFIG_PPPOE=m
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_SLIP=m
+CONFIG_SLHC=m
+# CONFIG_SLIP_COMPRESSED is not set
+# CONFIG_SLIP_SMART is not set
+# CONFIG_SLIP_MODE_SLIP6 is not set
+
+#
+# USB Network Adapters
+#
+CONFIG_USB_CATC=m
+CONFIG_USB_KAWETH=m
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_EEM=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+CONFIG_USB_NET_GL620A=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_RNDIS_HOST=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_KC2190=y
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_USB_NET_CX82310_ETH=m
+CONFIG_USB_NET_KALMIA=m
+CONFIG_USB_NET_QMI_WWAN=m
+CONFIG_USB_HSO=m
+CONFIG_USB_NET_INT51X1=m
+CONFIG_USB_CDC_PHONET=m
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
+CONFIG_USB_VL600=m
+CONFIG_WLAN=y
+CONFIG_PCMCIA_RAYCS=m
+CONFIG_LIBERTAS_THINFIRM=m
+# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set
+CONFIG_LIBERTAS_THINFIRM_USB=m
+CONFIG_AIRO=m
+CONFIG_ATMEL=m
+CONFIG_PCI_ATMEL=m
+CONFIG_PCMCIA_ATMEL=m
+CONFIG_AT76C50X_USB=m
+CONFIG_AIRO_CS=m
+CONFIG_PCMCIA_WL3501=m
+CONFIG_PRISM54=m
+CONFIG_USB_ZD1201=m
+CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_RTL8180=m
+CONFIG_RTL8187=m
+CONFIG_RTL8187_LEDS=y
+CONFIG_ADM8211=m
+# CONFIG_MAC80211_HWSIM is not set
+CONFIG_MWL8K=m
+CONFIG_ATH_COMMON=m
+# CONFIG_ATH_DEBUG is not set
+CONFIG_ATH5K=m
+# CONFIG_ATH5K_DEBUG is not set
+# CONFIG_ATH5K_TRACER is not set
+CONFIG_ATH5K_PCI=y
+CONFIG_ATH9K_HW=m
+CONFIG_ATH9K_COMMON=m
+CONFIG_ATH9K_BTCOEX_SUPPORT=y
+CONFIG_ATH9K=m
+CONFIG_ATH9K_PCI=y
+CONFIG_ATH9K_AHB=y
+# CONFIG_ATH9K_DEBUGFS is not set
+CONFIG_ATH9K_RATE_CONTROL=y
+CONFIG_ATH9K_HTC=m
+# CONFIG_ATH9K_HTC_DEBUGFS is not set
+CONFIG_CARL9170=m
+CONFIG_CARL9170_LEDS=y
+CONFIG_CARL9170_WPC=y
+# CONFIG_CARL9170_HWRNG is not set
+CONFIG_ATH6KL=m
+CONFIG_ATH6KL_SDIO=m
+CONFIG_ATH6KL_USB=m
+# CONFIG_ATH6KL_DEBUG is not set
+CONFIG_B43=m
+CONFIG_B43_BCMA=y
+# CONFIG_B43_BCMA_EXTRA is not set
+CONFIG_B43_SSB=y
+CONFIG_B43_PCI_AUTOSELECT=y
+CONFIG_B43_PCICORE_AUTOSELECT=y
+CONFIG_B43_PCMCIA=y
+CONFIG_B43_SDIO=y
+CONFIG_B43_BCMA_PIO=y
+CONFIG_B43_PIO=y
+CONFIG_B43_PHY_N=y
+CONFIG_B43_PHY_LP=y
+CONFIG_B43_PHY_HT=y
+CONFIG_B43_LEDS=y
+CONFIG_B43_HWRNG=y
+# CONFIG_B43_DEBUG is not set
+CONFIG_B43LEGACY=m
+CONFIG_B43LEGACY_PCI_AUTOSELECT=y
+CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
+CONFIG_B43LEGACY_LEDS=y
+CONFIG_B43LEGACY_HWRNG=y
+# CONFIG_B43LEGACY_DEBUG is not set
+CONFIG_B43LEGACY_DMA=y
+CONFIG_B43LEGACY_PIO=y
+CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
+# CONFIG_B43LEGACY_DMA_MODE is not set
+# CONFIG_B43LEGACY_PIO_MODE is not set
+CONFIG_BRCMUTIL=m
+CONFIG_BRCMSMAC=m
+CONFIG_BRCMFMAC=m
+CONFIG_BRCMFMAC_SDIO=y
+# CONFIG_BRCMFMAC_SDIO_OOB is not set
+CONFIG_BRCMFMAC_USB=y
+# CONFIG_BRCMDBG is not set
+CONFIG_HOSTAP=m
+CONFIG_HOSTAP_FIRMWARE=y
+# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
+CONFIG_HOSTAP_PLX=m
+CONFIG_HOSTAP_PCI=m
+CONFIG_HOSTAP_CS=m
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+# CONFIG_IPW2100_DEBUG is not set
+CONFIG_IPW2200=m
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
+# CONFIG_IPW2200_DEBUG is not set
+CONFIG_LIBIPW=m
+# CONFIG_LIBIPW_DEBUG is not set
+CONFIG_IWLWIFI=m
+CONFIG_IWLDVM=m
+
+#
+# Debugging Options
+#
+# CONFIG_IWLWIFI_DEBUG is not set
+CONFIG_IWLWIFI_DEVICE_TRACING=y
+# CONFIG_IWLWIFI_P2P is not set
+# CONFIG_IWLWIFI_EXPERIMENTAL_MFP is not set
+CONFIG_IWLEGACY=m
+CONFIG_IWL4965=m
+CONFIG_IWL3945=m
+
+#
+# iwl3945 / iwl4965 Debugging Options
+#
+# CONFIG_IWLEGACY_DEBUG is not set
+CONFIG_LIBERTAS=m
+CONFIG_LIBERTAS_USB=m
+CONFIG_LIBERTAS_CS=m
+CONFIG_LIBERTAS_SDIO=m
+# CONFIG_LIBERTAS_DEBUG is not set
+CONFIG_LIBERTAS_MESH=y
+CONFIG_HERMES=m
+CONFIG_HERMES_PRISM=y
+CONFIG_HERMES_CACHE_FW_ON_INIT=y
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_NORTEL_HERMES=m
+CONFIG_PCI_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+CONFIG_PCMCIA_SPECTRUM=m
+CONFIG_ORINOCO_USB=m
+CONFIG_P54_COMMON=m
+CONFIG_P54_USB=m
+CONFIG_P54_PCI=m
+CONFIG_P54_LEDS=y
+CONFIG_RT2X00=m
+CONFIG_RT2400PCI=m
+CONFIG_RT2500PCI=m
+CONFIG_RT61PCI=m
+CONFIG_RT2800PCI=m
+CONFIG_RT2800PCI_RT33XX=y
+CONFIG_RT2800PCI_RT35XX=y
+CONFIG_RT2800PCI_RT53XX=y
+CONFIG_RT2800PCI_RT3290=y
+CONFIG_RT2500USB=m
+CONFIG_RT73USB=m
+CONFIG_RT2800USB=m
+CONFIG_RT2800USB_RT33XX=y
+CONFIG_RT2800USB_RT35XX=y
+CONFIG_RT2800USB_RT53XX=y
+CONFIG_RT2800USB_UNKNOWN=y
+CONFIG_RT2800_LIB=m
+CONFIG_RT2X00_LIB_PCI=m
+CONFIG_RT2X00_LIB_USB=m
+CONFIG_RT2X00_LIB=m
+CONFIG_RT2X00_LIB_FIRMWARE=y
+CONFIG_RT2X00_LIB_CRYPTO=y
+CONFIG_RT2X00_LIB_LEDS=y
+# CONFIG_RT2X00_DEBUG is not set
+CONFIG_RTL8192CE=m
+CONFIG_RTL8192SE=m
+CONFIG_RTL8192DE=m
+CONFIG_RTL8192CU=m
+CONFIG_RTLWIFI=m
+# CONFIG_RTLWIFI_DEBUG is not set
+CONFIG_RTL8192C_COMMON=m
+CONFIG_WL_TI=y
+CONFIG_WL1251=m
+CONFIG_WL1251_SDIO=m
+CONFIG_WL12XX=m
+CONFIG_WL18XX=m
+CONFIG_WLCORE=m
+CONFIG_WLCORE_SDIO=m
+CONFIG_WL12XX_PLATFORM_DATA=y
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_PCIE=m
+CONFIG_MWIFIEX_USB=m
+
+#
+# WiMAX Wireless Broadband devices
+#
+CONFIG_WIMAX_I2400M=m
+CONFIG_WIMAX_I2400M_USB=m
+CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8
+# CONFIG_WAN is not set
+CONFIG_VMXNET3=m
+CONFIG_HYPERV_NET=m
+CONFIG_ISDN=y
+CONFIG_ISDN_I4L=m
+CONFIG_ISDN_PPP=y
+CONFIG_ISDN_PPP_VJ=y
+CONFIG_ISDN_MPP=y
+CONFIG_IPPP_FILTER=y
+CONFIG_ISDN_PPP_BSDCOMP=m
+CONFIG_ISDN_AUDIO=y
+CONFIG_ISDN_TTY_FAX=y
+
+#
+# ISDN feature submodules
+#
+CONFIG_ISDN_DIVERSION=m
+
+#
+# ISDN4Linux hardware drivers
+#
+
+#
+# Passive cards
+#
+CONFIG_ISDN_DRV_HISAX=m
+
+#
+# D-channel protocol features
+#
+CONFIG_HISAX_EURO=y
+CONFIG_DE_AOC=y
+# CONFIG_HISAX_NO_SENDCOMPLETE is not set
+# CONFIG_HISAX_NO_LLC is not set
+# CONFIG_HISAX_NO_KEYPAD is not set
+CONFIG_HISAX_1TR6=y
+CONFIG_HISAX_NI1=y
+CONFIG_HISAX_MAX_CARDS=8
+
+#
+# HiSax supported cards
+#
+CONFIG_HISAX_16_0=y
+CONFIG_HISAX_16_3=y
+CONFIG_HISAX_TELESPCI=y
+CONFIG_HISAX_S0BOX=y
+CONFIG_HISAX_AVM_A1=y
+CONFIG_HISAX_FRITZPCI=y
+CONFIG_HISAX_AVM_A1_PCMCIA=y
+CONFIG_HISAX_ELSA=y
+CONFIG_HISAX_IX1MICROR2=y
+CONFIG_HISAX_DIEHLDIVA=y
+CONFIG_HISAX_ASUSCOM=y
+CONFIG_HISAX_TELEINT=y
+CONFIG_HISAX_HFCS=y
+CONFIG_HISAX_SEDLBAUER=y
+CONFIG_HISAX_SPORTSTER=y
+CONFIG_HISAX_MIC=y
+CONFIG_HISAX_NETJET=y
+CONFIG_HISAX_NETJET_U=y
+CONFIG_HISAX_NICCY=y
+CONFIG_HISAX_ISURF=y
+CONFIG_HISAX_HSTSAPHIR=y
+CONFIG_HISAX_BKM_A4T=y
+CONFIG_HISAX_SCT_QUADRO=y
+CONFIG_HISAX_GAZEL=y
+CONFIG_HISAX_HFC_PCI=y
+CONFIG_HISAX_W6692=y
+CONFIG_HISAX_HFC_SX=y
+CONFIG_HISAX_ENTERNOW_PCI=y
+# CONFIG_HISAX_DEBUG is not set
+
+#
+# HiSax PCMCIA card service modules
+#
+CONFIG_HISAX_SEDLBAUER_CS=m
+CONFIG_HISAX_ELSA_CS=m
+CONFIG_HISAX_AVM_A1_CS=m
+CONFIG_HISAX_TELES_CS=m
+
+#
+# HiSax sub driver modules
+#
+CONFIG_HISAX_ST5481=m
+CONFIG_HISAX_HFCUSB=m
+CONFIG_HISAX_HFC4S8S=m
+CONFIG_HISAX_FRITZ_PCIPNP=m
+
+#
+# Active cards
+#
+CONFIG_ISDN_DRV_ICN=m
+CONFIG_ISDN_DRV_PCBIT=m
+CONFIG_ISDN_DRV_SC=m
+CONFIG_ISDN_DRV_ACT2000=m
+CONFIG_ISDN_CAPI=m
+CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
+CONFIG_CAPI_TRACE=y
+CONFIG_ISDN_CAPI_MIDDLEWARE=y
+CONFIG_ISDN_CAPI_CAPI20=m
+CONFIG_ISDN_CAPI_CAPIDRV=m
+
+#
+# CAPI hardware drivers
+#
+CONFIG_CAPI_AVM=y
+CONFIG_ISDN_DRV_AVMB1_B1ISA=m
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
+CONFIG_ISDN_DRV_AVMB1_T1ISA=m
+CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
+CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
+CONFIG_CAPI_EICON=y
+CONFIG_ISDN_DIVAS=m
+CONFIG_ISDN_DIVAS_BRIPCI=y
+CONFIG_ISDN_DIVAS_PRIPCI=y
+CONFIG_ISDN_DIVAS_DIVACAPI=m
+CONFIG_ISDN_DIVAS_USERIDI=m
+CONFIG_ISDN_DIVAS_MAINT=m
+CONFIG_ISDN_DRV_GIGASET=m
+CONFIG_GIGASET_CAPI=y
+# CONFIG_GIGASET_I4L is not set
+# CONFIG_GIGASET_DUMMYLL is not set
+CONFIG_GIGASET_BASE=m
+CONFIG_GIGASET_M105=m
+CONFIG_GIGASET_M101=m
+# CONFIG_GIGASET_DEBUG is not set
+CONFIG_HYSDN=m
+CONFIG_HYSDN_CAPI=y
+CONFIG_MISDN=m
+CONFIG_MISDN_DSP=m
+CONFIG_MISDN_L1OIP=m
+
+#
+# mISDN hardware drivers
+#
+CONFIG_MISDN_HFCPCI=m
+CONFIG_MISDN_HFCMULTI=m
+CONFIG_MISDN_HFCUSB=m
+CONFIG_MISDN_AVMFRITZ=m
+CONFIG_MISDN_SPEEDFAX=m
+CONFIG_MISDN_INFINEON=m
+CONFIG_MISDN_W6692=m
+CONFIG_MISDN_NETJET=m
+CONFIG_MISDN_IPAC=m
+CONFIG_MISDN_ISAR=m
+CONFIG_ISDN_HDLC=m
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+CONFIG_INPUT_FF_MEMLESS=m
+CONFIG_INPUT_POLLDEV=m
+CONFIG_INPUT_SPARSEKMAP=m
+CONFIG_INPUT_MATRIXKMAP=m
+
+#
+# Userland interfaces
+#
+CONFIG_INPUT_MOUSEDEV=y
+CONFIG_INPUT_MOUSEDEV_PSAUX=y
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+CONFIG_INPUT_JOYDEV=m
+CONFIG_INPUT_EVDEV=m
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ADP5588=m
+CONFIG_KEYBOARD_ADP5589=m
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_QT1070=m
+CONFIG_KEYBOARD_QT2160=m
+# CONFIG_KEYBOARD_LKKBD is not set
+# CONFIG_KEYBOARD_GPIO is not set
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+CONFIG_KEYBOARD_TCA6416=m
+CONFIG_KEYBOARD_TCA8418=m
+CONFIG_KEYBOARD_MATRIX=m
+# CONFIG_KEYBOARD_LM8323 is not set
+CONFIG_KEYBOARD_LM8333=m
+# CONFIG_KEYBOARD_MAX7359 is not set
+CONFIG_KEYBOARD_MCS=m
+CONFIG_KEYBOARD_MPR121=m
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_PS2_ALPS=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_LIFEBOOK=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+CONFIG_MOUSE_PS2_ELANTECH=y
+CONFIG_MOUSE_PS2_SENTELIC=y
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
+CONFIG_MOUSE_PS2_OLPC=y
+CONFIG_MOUSE_SERIAL=y
+CONFIG_MOUSE_APPLETOUCH=m
+CONFIG_MOUSE_BCM5974=m
+CONFIG_MOUSE_INPORT=m
+# CONFIG_MOUSE_ATIXL is not set
+CONFIG_MOUSE_LOGIBM=m
+CONFIG_MOUSE_PC110PAD=m
+CONFIG_MOUSE_VSXXXAA=m
+# CONFIG_MOUSE_GPIO is not set
+CONFIG_MOUSE_SYNAPTICS_I2C=m
+CONFIG_MOUSE_SYNAPTICS_USB=m
+CONFIG_INPUT_JOYSTICK=y
+CONFIG_JOYSTICK_ANALOG=m
+CONFIG_JOYSTICK_A3D=m
+CONFIG_JOYSTICK_ADI=m
+CONFIG_JOYSTICK_COBRA=m
+CONFIG_JOYSTICK_GF2K=m
+CONFIG_JOYSTICK_GRIP=m
+CONFIG_JOYSTICK_GRIP_MP=m
+CONFIG_JOYSTICK_GUILLEMOT=m
+CONFIG_JOYSTICK_INTERACT=m
+CONFIG_JOYSTICK_SIDEWINDER=m
+CONFIG_JOYSTICK_TMDC=m
+CONFIG_JOYSTICK_IFORCE=m
+CONFIG_JOYSTICK_IFORCE_USB=y
+CONFIG_JOYSTICK_IFORCE_232=y
+CONFIG_JOYSTICK_WARRIOR=m
+CONFIG_JOYSTICK_MAGELLAN=m
+CONFIG_JOYSTICK_SPACEORB=m
+CONFIG_JOYSTICK_SPACEBALL=m
+CONFIG_JOYSTICK_STINGER=m
+CONFIG_JOYSTICK_TWIDJOY=m
+CONFIG_JOYSTICK_ZHENHUA=m
+CONFIG_JOYSTICK_DB9=m
+CONFIG_JOYSTICK_GAMECON=m
+CONFIG_JOYSTICK_TURBOGRAFX=m
+CONFIG_JOYSTICK_AS5011=m
+CONFIG_JOYSTICK_JOYDUMP=m
+CONFIG_JOYSTICK_XPAD=m
+CONFIG_JOYSTICK_XPAD_FF=y
+CONFIG_JOYSTICK_XPAD_LEDS=y
+CONFIG_JOYSTICK_WALKERA0701=m
+CONFIG_INPUT_TABLET=y
+CONFIG_TABLET_USB_ACECAD=m
+CONFIG_TABLET_USB_AIPTEK=m
+CONFIG_TABLET_USB_GTCO=m
+CONFIG_TABLET_USB_HANWANG=m
+CONFIG_TABLET_USB_KBTAB=m
+CONFIG_TABLET_USB_WACOM=m
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_AD7879=m
+CONFIG_TOUCHSCREEN_AD7879_I2C=m
+CONFIG_TOUCHSCREEN_ATMEL_MXT=m
+CONFIG_TOUCHSCREEN_AUO_PIXCIR=m
+CONFIG_TOUCHSCREEN_BU21013=m
+CONFIG_TOUCHSCREEN_CY8CTMG110=m
+CONFIG_TOUCHSCREEN_CYTTSP_CORE=m
+CONFIG_TOUCHSCREEN_CYTTSP_I2C=m
+CONFIG_TOUCHSCREEN_DYNAPRO=m
+CONFIG_TOUCHSCREEN_HAMPSHIRE=m
+CONFIG_TOUCHSCREEN_EETI=m
+CONFIG_TOUCHSCREEN_EGALAX=m
+CONFIG_TOUCHSCREEN_FUJITSU=m
+CONFIG_TOUCHSCREEN_ILI210X=m
+CONFIG_TOUCHSCREEN_GUNZE=m
+CONFIG_TOUCHSCREEN_ELO=m
+CONFIG_TOUCHSCREEN_WACOM_W8001=m
+CONFIG_TOUCHSCREEN_WACOM_I2C=m
+CONFIG_TOUCHSCREEN_MAX11801=m
+CONFIG_TOUCHSCREEN_MCS5000=m
+CONFIG_TOUCHSCREEN_MMS114=m
+CONFIG_TOUCHSCREEN_MTOUCH=m
+CONFIG_TOUCHSCREEN_INEXIO=m
+CONFIG_TOUCHSCREEN_MK712=m
+CONFIG_TOUCHSCREEN_HTCPEN=m
+CONFIG_TOUCHSCREEN_PENMOUNT=m
+CONFIG_TOUCHSCREEN_EDT_FT5X06=m
+CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
+CONFIG_TOUCHSCREEN_TOUCHWIN=m
+CONFIG_TOUCHSCREEN_UCB1400=m
+CONFIG_TOUCHSCREEN_PIXCIR=m
+CONFIG_TOUCHSCREEN_WM97XX=m
+CONFIG_TOUCHSCREEN_WM9705=y
+CONFIG_TOUCHSCREEN_WM9712=y
+CONFIG_TOUCHSCREEN_WM9713=y
+CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
+CONFIG_TOUCHSCREEN_MC13783=m
+CONFIG_TOUCHSCREEN_USB_EGALAX=y
+CONFIG_TOUCHSCREEN_USB_PANJIT=y
+CONFIG_TOUCHSCREEN_USB_3M=y
+CONFIG_TOUCHSCREEN_USB_ITM=y
+CONFIG_TOUCHSCREEN_USB_ETURBO=y
+CONFIG_TOUCHSCREEN_USB_GUNZE=y
+CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y
+CONFIG_TOUCHSCREEN_USB_IRTOUCH=y
+CONFIG_TOUCHSCREEN_USB_IDEALTEK=y
+CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y
+CONFIG_TOUCHSCREEN_USB_GOTOP=y
+CONFIG_TOUCHSCREEN_USB_JASTEC=y
+CONFIG_TOUCHSCREEN_USB_ELO=y
+CONFIG_TOUCHSCREEN_USB_E2I=y
+CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y
+CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y
+CONFIG_TOUCHSCREEN_USB_NEXIO=y
+CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y
+CONFIG_TOUCHSCREEN_TOUCHIT213=m
+CONFIG_TOUCHSCREEN_TSC_SERIO=m
+CONFIG_TOUCHSCREEN_TSC2007=m
+CONFIG_TOUCHSCREEN_ST1232=m
+CONFIG_TOUCHSCREEN_TPS6507X=m
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_AD714X=m
+CONFIG_INPUT_AD714X_I2C=m
+CONFIG_INPUT_BMA150=m
+CONFIG_INPUT_PCSPKR=m
+CONFIG_INPUT_MC13783_PWRBUTTON=m
+CONFIG_INPUT_MMA8450=m
+CONFIG_INPUT_MPU3050=m
+CONFIG_INPUT_APANEL=m
+CONFIG_INPUT_GP2A=m
+# CONFIG_INPUT_GPIO_TILT_POLLED is not set
+CONFIG_INPUT_WISTRON_BTNS=m
+CONFIG_INPUT_ATLAS_BTNS=m
+CONFIG_INPUT_ATI_REMOTE2=m
+CONFIG_INPUT_KEYSPAN_REMOTE=m
+CONFIG_INPUT_KXTJ9=m
+# CONFIG_INPUT_KXTJ9_POLLED_MODE is not set
+CONFIG_INPUT_POWERMATE=m
+CONFIG_INPUT_YEALINK=m
+CONFIG_INPUT_CM109=m
+CONFIG_INPUT_UINPUT=m
+CONFIG_INPUT_PCF50633_PMU=m
+CONFIG_INPUT_PCF8574=m
+CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
+CONFIG_INPUT_ADXL34X=m
+CONFIG_INPUT_ADXL34X_I2C=m
+CONFIG_INPUT_CMA3000=m
+CONFIG_INPUT_CMA3000_I2C=m
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=m
+CONFIG_SERIO_CT82C710=m
+CONFIG_SERIO_PARKBD=m
+CONFIG_SERIO_PCIPS2=m
+CONFIG_SERIO_LIBPS2=y
+CONFIG_SERIO_RAW=m
+CONFIG_SERIO_ALTERA_PS2=m
+CONFIG_SERIO_PS2MULT=m
+CONFIG_GAMEPORT=m
+CONFIG_GAMEPORT_NS558=m
+CONFIG_GAMEPORT_L4=m
+CONFIG_GAMEPORT_EMU10K1=m
+CONFIG_GAMEPORT_FM801=m
+
+#
+# Character devices
+#
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_CONSOLE_SLEEP=y
+CONFIG_HW_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
+# CONFIG_LEGACY_PTYS is not set
+CONFIG_SERIAL_NONSTANDARD=y
+CONFIG_ROCKETPORT=m
+CONFIG_CYCLADES=m
+# CONFIG_CYZ_INTR is not set
+# CONFIG_MOXA_INTELLIO is not set
+# CONFIG_MOXA_SMARTIO is not set
+CONFIG_SYNCLINK=m
+CONFIG_SYNCLINKMP=m
+# CONFIG_SYNCLINK_GT is not set
+CONFIG_NOZOMI=m
+# CONFIG_ISI is not set
+CONFIG_N_HDLC=m
+CONFIG_N_GSM=m
+CONFIG_TRACE_ROUTER=m
+CONFIG_TRACE_SINK=m
+# CONFIG_STALDRV is not set
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_SERIAL_8250_PCI=y
+CONFIG_SERIAL_8250_PNP=y
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=32
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+CONFIG_SERIAL_8250_DW=m
+
+#
+# Non-8250 serial port support
+#
+CONFIG_SERIAL_MFD_HSU=m
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+CONFIG_SERIAL_JSM=m
+CONFIG_SERIAL_OF_PLATFORM=m
+# CONFIG_SERIAL_TIMBERDALE is not set
+CONFIG_SERIAL_ALTERA_JTAGUART=m
+CONFIG_SERIAL_ALTERA_UART=m
+CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4
+CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200
+CONFIG_SERIAL_PCH_UART=m
+CONFIG_SERIAL_XILINX_PS_UART=m
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+CONFIG_PPDEV=m
+CONFIG_HVC_DRIVER=y
+CONFIG_VIRTIO_CONSOLE=y
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+CONFIG_HW_RANDOM=y
+CONFIG_HW_RANDOM_TIMERIOMEM=m
+CONFIG_HW_RANDOM_INTEL=m
+CONFIG_HW_RANDOM_AMD=m
+CONFIG_HW_RANDOM_GEODE=m
+CONFIG_HW_RANDOM_VIA=m
+CONFIG_HW_RANDOM_VIRTIO=m
+CONFIG_NVRAM=m
+CONFIG_DTLK=m
+CONFIG_R3964=m
+CONFIG_APPLICOM=m
+CONFIG_SONYPI=m
+
+#
+# PCMCIA character devices
+#
+CONFIG_SYNCLINK_CS=m
+CONFIG_CARDMAN_4000=m
+CONFIG_CARDMAN_4040=m
+CONFIG_IPWIRELESS=m
+CONFIG_MWAVE=m
+CONFIG_PC8736x_GPIO=m
+CONFIG_NSC_GPIO=m
+# CONFIG_RAW_DRIVER is not set
+CONFIG_HPET=y
+CONFIG_HPET_MMAP=y
+CONFIG_HANGCHECK_TIMER=m
+CONFIG_TCG_TPM=m
+CONFIG_TCG_TIS=m
+CONFIG_TCG_NSC=m
+CONFIG_TCG_ATMEL=m
+CONFIG_TCG_INFINEON=m
+CONFIG_TELCLOCK=m
+CONFIG_I2C=m
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=m
+# CONFIG_I2C_MUX is not set
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_SMBUS=m
+CONFIG_I2C_ALGOBIT=m
+CONFIG_I2C_ALGOPCA=m
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# PC SMBus host controller drivers
+#
+CONFIG_I2C_ALI1535=m
+CONFIG_I2C_ALI1563=m
+CONFIG_I2C_ALI15X3=m
+CONFIG_I2C_AMD756=m
+CONFIG_I2C_AMD756_S4882=m
+CONFIG_I2C_AMD8111=m
+CONFIG_I2C_I801=m
+CONFIG_I2C_ISCH=m
+CONFIG_I2C_PIIX4=m
+CONFIG_I2C_NFORCE2=m
+CONFIG_I2C_NFORCE2_S4985=m
+CONFIG_I2C_SIS5595=m
+CONFIG_I2C_SIS630=m
+CONFIG_I2C_SIS96X=m
+CONFIG_I2C_VIA=m
+CONFIG_I2C_VIAPRO=m
+
+#
+# ACPI drivers
+#
+CONFIG_I2C_SCMI=m
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+CONFIG_I2C_DESIGNWARE_CORE=m
+CONFIG_I2C_DESIGNWARE_PCI=m
+CONFIG_I2C_EG20T=m
+# CONFIG_I2C_GPIO is not set
+CONFIG_I2C_INTEL_MID=m
+CONFIG_I2C_OCORES=m
+CONFIG_I2C_PCA_PLATFORM=m
+CONFIG_I2C_PXA=m
+CONFIG_I2C_PXA_PCI=y
+CONFIG_I2C_SIMTEC=m
+CONFIG_I2C_XILINX=m
+
+#
+# External I2C/SMBus adapter drivers
+#
+CONFIG_I2C_DIOLAN_U2C=m
+CONFIG_I2C_PARPORT=m
+CONFIG_I2C_PARPORT_LIGHT=m
+CONFIG_I2C_TAOS_EVM=m
+CONFIG_I2C_TINY_USB=m
+
+#
+# Other I2C/SMBus bus drivers
+#
+CONFIG_I2C_PCA_ISA=m
+# CONFIG_I2C_STUB is not set
+CONFIG_SCx200_ACB=m
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# CONFIG_SPI is not set
+# CONFIG_HSI is not set
+
+#
+# PPS support
+#
+CONFIG_PPS=m
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+CONFIG_PPS_CLIENT_KTIMER=m
+CONFIG_PPS_CLIENT_LDISC=m
+CONFIG_PPS_CLIENT_PARPORT=m
+CONFIG_PPS_CLIENT_GPIO=m
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+CONFIG_PTP_1588_CLOCK=m
+CONFIG_DP83640_PHY=m
+CONFIG_PTP_1588_CLOCK_PCH=m
+CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
+CONFIG_GPIOLIB=y
+CONFIG_OF_GPIO=y
+# CONFIG_DEBUG_GPIO is not set
+CONFIG_GPIO_SYSFS=y
+
+#
+# Memory mapped GPIO drivers:
+#
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_IT8761E is not set
+CONFIG_GPIO_SCH=m
+CONFIG_GPIO_ICH=m
+# CONFIG_GPIO_VX855 is not set
+
+#
+# I2C GPIO expanders:
+#
+CONFIG_GPIO_ARIZONA=m
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_ADP5588 is not set
+
+#
+# PCI GPIO expanders:
+#
+CONFIG_GPIO_CS5535=y
+CONFIG_GPIO_AMD8111=m
+# CONFIG_GPIO_LANGWELL is not set
+# CONFIG_GPIO_PCH is not set
+# CONFIG_GPIO_ML_IOH is not set
+# CONFIG_GPIO_SODAVILLE is not set
+# CONFIG_GPIO_RDC321X is not set
+
+#
+# SPI GPIO expanders:
+#
+# CONFIG_GPIO_MCP23S08 is not set
+
+#
+# AC97 GPIO expanders:
+#
+CONFIG_GPIO_UCB1400=y
+
+#
+# MODULbus GPIO expanders:
+#
+# CONFIG_W1 is not set
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+CONFIG_PDA_POWER=m
+CONFIG_TEST_POWER=m
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+CONFIG_BATTERY_OLPC=m
+# CONFIG_BATTERY_SBS is not set
+# CONFIG_BATTERY_BQ27x00 is not set
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_PCF50633 is not set
+# CONFIG_CHARGER_ISP1704 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_SMB347 is not set
+CONFIG_POWER_AVS=y
+CONFIG_HWMON=y
+CONFIG_HWMON_VID=m
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
+CONFIG_SENSORS_ABITUGURU=m
+CONFIG_SENSORS_ABITUGURU3=m
+CONFIG_SENSORS_AD7414=m
+CONFIG_SENSORS_AD7418=m
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1029=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_ADM9240=m
+CONFIG_SENSORS_ADT7411=m
+CONFIG_SENSORS_ADT7462=m
+CONFIG_SENSORS_ADT7470=m
+CONFIG_SENSORS_ADT7475=m
+CONFIG_SENSORS_ASC7621=m
+CONFIG_SENSORS_K8TEMP=m
+CONFIG_SENSORS_K10TEMP=m
+CONFIG_SENSORS_FAM15H_POWER=m
+CONFIG_SENSORS_ASB100=m
+CONFIG_SENSORS_ATXP1=m
+CONFIG_SENSORS_DS620=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_I5K_AMB=m
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_F71882FG=m
+CONFIG_SENSORS_F75375S=m
+CONFIG_SENSORS_FSCHMD=m
+CONFIG_SENSORS_G760A=m
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+# CONFIG_SENSORS_GPIO_FAN is not set
+CONFIG_SENSORS_HIH6130=m
+CONFIG_SENSORS_CORETEMP=m
+CONFIG_SENSORS_IBMAEM=m
+CONFIG_SENSORS_IBMPEX=m
+CONFIG_SENSORS_IT87=m
+CONFIG_SENSORS_JC42=m
+CONFIG_SENSORS_LINEAGE=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM73=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_LM93=m
+CONFIG_SENSORS_LTC4151=m
+CONFIG_SENSORS_LTC4215=m
+CONFIG_SENSORS_LTC4245=m
+CONFIG_SENSORS_LTC4261=m
+CONFIG_SENSORS_LM95241=m
+CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_MAX16065=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_MAX1668=m
+CONFIG_SENSORS_MAX6639=m
+CONFIG_SENSORS_MAX6642=m
+CONFIG_SENSORS_MAX6650=m
+CONFIG_SENSORS_MCP3021=m
+CONFIG_SENSORS_NTC_THERMISTOR=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PC87427=m
+CONFIG_SENSORS_PCF8591=m
+CONFIG_PMBUS=m
+CONFIG_SENSORS_PMBUS=m
+CONFIG_SENSORS_ADM1275=m
+CONFIG_SENSORS_LM25066=m
+CONFIG_SENSORS_LTC2978=m
+CONFIG_SENSORS_MAX16064=m
+CONFIG_SENSORS_MAX34440=m
+CONFIG_SENSORS_MAX8688=m
+CONFIG_SENSORS_UCD9000=m
+CONFIG_SENSORS_UCD9200=m
+CONFIG_SENSORS_ZL6100=m
+CONFIG_SENSORS_SHT15=m
+CONFIG_SENSORS_SHT21=m
+CONFIG_SENSORS_SIS5595=m
+CONFIG_SENSORS_SMM665=m
+CONFIG_SENSORS_DME1737=m
+CONFIG_SENSORS_EMC1403=m
+CONFIG_SENSORS_EMC2103=m
+CONFIG_SENSORS_EMC6W201=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47M192=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_SCH56XX_COMMON=m
+CONFIG_SENSORS_SCH5627=m
+CONFIG_SENSORS_SCH5636=m
+CONFIG_SENSORS_ADS1015=m
+CONFIG_SENSORS_ADS7828=m
+CONFIG_SENSORS_AMC6821=m
+CONFIG_SENSORS_INA2XX=m
+CONFIG_SENSORS_THMC50=m
+CONFIG_SENSORS_TMP102=m
+CONFIG_SENSORS_TMP401=m
+CONFIG_SENSORS_TMP421=m
+CONFIG_SENSORS_VIA_CPUTEMP=m
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_VT1211=m
+CONFIG_SENSORS_VT8231=m
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83791D=m
+CONFIG_SENSORS_W83792D=m
+CONFIG_SENSORS_W83793=m
+CONFIG_SENSORS_W83795=m
+# CONFIG_SENSORS_W83795_FANCTRL is not set
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83L786NG=m
+CONFIG_SENSORS_W83627HF=m
+CONFIG_SENSORS_W83627EHF=m
+CONFIG_SENSORS_APPLESMC=m
+CONFIG_SENSORS_MC13783_ADC=m
+
+#
+# ACPI drivers
+#
+CONFIG_SENSORS_ACPI_POWER=m
+CONFIG_SENSORS_ATK0110=m
+CONFIG_THERMAL=y
+CONFIG_THERMAL_HWMON=y
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_CORE=y
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+
+#
+# Watchdog Device Drivers
+#
+CONFIG_SOFT_WATCHDOG=m
+CONFIG_ACQUIRE_WDT=m
+CONFIG_ADVANTECH_WDT=m
+CONFIG_ALIM1535_WDT=m
+CONFIG_ALIM7101_WDT=m
+CONFIG_F71808E_WDT=m
+CONFIG_SP5100_TCO=m
+CONFIG_GEODE_WDT=m
+CONFIG_SC520_WDT=m
+CONFIG_SBC_FITPC2_WATCHDOG=m
+CONFIG_EUROTECH_WDT=m
+CONFIG_IB700_WDT=m
+CONFIG_IBMASR=m
+CONFIG_WAFER_WDT=m
+CONFIG_I6300ESB_WDT=m
+CONFIG_IE6XX_WDT=m
+CONFIG_ITCO_WDT=m
+CONFIG_ITCO_VENDOR_SUPPORT=y
+CONFIG_IT8712F_WDT=m
+CONFIG_IT87_WDT=m
+CONFIG_HP_WATCHDOG=m
+CONFIG_HPWDT_NMI_DECODING=y
+CONFIG_SC1200_WDT=m
+CONFIG_PC87413_WDT=m
+CONFIG_NV_TCO=m
+CONFIG_60XX_WDT=m
+CONFIG_SBC8360_WDT=m
+CONFIG_SBC7240_WDT=m
+CONFIG_CPU5_WDT=m
+CONFIG_SMSC_SCH311X_WDT=m
+CONFIG_SMSC37B787_WDT=m
+CONFIG_VIA_WDT=m
+CONFIG_W83627HF_WDT=m
+CONFIG_W83697HF_WDT=m
+CONFIG_W83697UG_WDT=m
+CONFIG_W83877F_WDT=m
+CONFIG_W83977F_WDT=m
+CONFIG_MACHZ_WDT=m
+CONFIG_SBC_EPX_C3_WATCHDOG=m
+
+#
+# ISA-based Watchdog Cards
+#
+CONFIG_PCWATCHDOG=m
+CONFIG_MIXCOMWD=m
+CONFIG_WDT=m
+
+#
+# PCI-based Watchdog Cards
+#
+CONFIG_PCIPCWATCHDOG=m
+CONFIG_WDTPCI=m
+
+#
+# USB-based Watchdog Cards
+#
+CONFIG_USBPCWATCHDOG=m
+CONFIG_SSB_POSSIBLE=y
+
+#
+# Sonics Silicon Backplane
+#
+CONFIG_SSB=m
+CONFIG_SSB_SPROM=y
+CONFIG_SSB_BLOCKIO=y
+CONFIG_SSB_PCIHOST_POSSIBLE=y
+CONFIG_SSB_PCIHOST=y
+CONFIG_SSB_B43_PCI_BRIDGE=y
+CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
+CONFIG_SSB_PCMCIAHOST=y
+CONFIG_SSB_SDIOHOST_POSSIBLE=y
+CONFIG_SSB_SDIOHOST=y
+# CONFIG_SSB_DEBUG is not set
+CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
+CONFIG_SSB_DRIVER_PCICORE=y
+CONFIG_BCMA_POSSIBLE=y
+
+#
+# Broadcom specific AMBA
+#
+CONFIG_BCMA=m
+CONFIG_BCMA_BLOCKIO=y
+CONFIG_BCMA_HOST_PCI_POSSIBLE=y
+CONFIG_BCMA_HOST_PCI=y
+CONFIG_BCMA_DRIVER_GMAC_CMN=y
+# CONFIG_BCMA_DEBUG is not set
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_CORE=y
+CONFIG_MFD_SM501=m
+CONFIG_MFD_SM501_GPIO=y
+CONFIG_HTC_PASIC3=m
+CONFIG_UCB1400_CORE=m
+CONFIG_MFD_LM3533=m
+# CONFIG_TPS6105X is not set
+CONFIG_TPS65010=m
+CONFIG_TPS6507X=m
+CONFIG_MFD_TPS65217=m
+# CONFIG_MFD_TMIO is not set
+CONFIG_MFD_ARIZONA=y
+CONFIG_MFD_ARIZONA_I2C=m
+CONFIG_MFD_WM5102=y
+CONFIG_MFD_WM5110=y
+CONFIG_MFD_PCF50633=m
+CONFIG_PCF50633_ADC=m
+CONFIG_PCF50633_GPIO=m
+CONFIG_MFD_MC13783=m
+CONFIG_MFD_MC13XXX=m
+CONFIG_MFD_MC13XXX_I2C=m
+CONFIG_ABX500_CORE=y
+CONFIG_MFD_CS5535=m
+# CONFIG_MFD_TIMBERDALE is not set
+CONFIG_LPC_SCH=m
+CONFIG_LPC_ICH=m
+CONFIG_MFD_RDC321X=m
+# CONFIG_MFD_JANZ_CMODIO is not set
+CONFIG_MFD_VX855=m
+CONFIG_MFD_WL1273_CORE=m
+# CONFIG_REGULATOR is not set
+CONFIG_MEDIA_SUPPORT=m
+
+#
+# Multimedia core support
+#
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
+CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
+CONFIG_MEDIA_RADIO_SUPPORT=y
+CONFIG_MEDIA_RC_SUPPORT=y
+CONFIG_MEDIA_CONTROLLER=y
+CONFIG_VIDEO_DEV=m
+CONFIG_VIDEO_V4L2_COMMON=m
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
+CONFIG_DVB_CORE=m
+CONFIG_DVB_NET=y
+
+#
+# Media drivers
+#
+CONFIG_VIDEO_SAA7146=m
+CONFIG_VIDEO_SAA7146_VV=m
+CONFIG_RC_CORE=m
+CONFIG_RC_MAP=m
+CONFIG_RC_DECODERS=y
+CONFIG_LIRC=m
+CONFIG_IR_LIRC_CODEC=m
+CONFIG_IR_NEC_DECODER=m
+CONFIG_IR_RC5_DECODER=m
+CONFIG_IR_RC6_DECODER=m
+CONFIG_IR_JVC_DECODER=m
+CONFIG_IR_SONY_DECODER=m
+CONFIG_IR_RC5_SZ_DECODER=m
+CONFIG_IR_SANYO_DECODER=m
+CONFIG_IR_MCE_KBD_DECODER=m
+CONFIG_RC_DEVICES=y
+CONFIG_RC_ATI_REMOTE=m
+CONFIG_IR_ENE=m
+CONFIG_IR_IMON=m
+CONFIG_IR_MCEUSB=m
+CONFIG_IR_ITE_CIR=m
+CONFIG_IR_FINTEK=m
+CONFIG_IR_NUVOTON=m
+CONFIG_IR_REDRAT3=m
+CONFIG_IR_STREAMZAP=m
+CONFIG_IR_WINBOND_CIR=m
+CONFIG_IR_IGUANA=m
+CONFIG_RC_LOOPBACK=m
+CONFIG_IR_GPIO_CIR=m
+CONFIG_MEDIA_ATTACH=y
+CONFIG_MEDIA_TUNER=m
+# CONFIG_MEDIA_TUNER_CUSTOMISE is not set
+CONFIG_MEDIA_TUNER_SIMPLE=m
+CONFIG_MEDIA_TUNER_TDA8290=m
+CONFIG_MEDIA_TUNER_TDA827X=m
+CONFIG_MEDIA_TUNER_TDA18271=m
+CONFIG_MEDIA_TUNER_TDA9887=m
+CONFIG_MEDIA_TUNER_TEA5761=m
+CONFIG_MEDIA_TUNER_TEA5767=m
+CONFIG_MEDIA_TUNER_MT20XX=m
+CONFIG_MEDIA_TUNER_MT2060=m
+CONFIG_MEDIA_TUNER_MT2063=m
+CONFIG_MEDIA_TUNER_MT2266=m
+CONFIG_MEDIA_TUNER_MT2131=m
+CONFIG_MEDIA_TUNER_QT1010=m
+CONFIG_MEDIA_TUNER_XC2028=m
+CONFIG_MEDIA_TUNER_XC5000=m
+CONFIG_MEDIA_TUNER_XC4000=m
+CONFIG_MEDIA_TUNER_MXL5005S=m
+CONFIG_MEDIA_TUNER_MXL5007T=m
+CONFIG_MEDIA_TUNER_MC44S803=m
+CONFIG_MEDIA_TUNER_MAX2165=m
+CONFIG_MEDIA_TUNER_TDA18218=m
+CONFIG_MEDIA_TUNER_FC0011=m
+CONFIG_MEDIA_TUNER_FC0012=m
+CONFIG_MEDIA_TUNER_FC0013=m
+CONFIG_MEDIA_TUNER_TDA18212=m
+CONFIG_MEDIA_TUNER_TUA9001=m
+CONFIG_VIDEO_V4L2=m
+CONFIG_VIDEOBUF_GEN=m
+CONFIG_VIDEOBUF_DMA_SG=m
+CONFIG_VIDEOBUF_VMALLOC=m
+CONFIG_VIDEOBUF_DVB=m
+CONFIG_VIDEO_BTCX=m
+CONFIG_VIDEO_TVEEPROM=m
+CONFIG_VIDEO_TUNER=m
+CONFIG_V4L2_MEM2MEM_DEV=m
+CONFIG_VIDEOBUF2_CORE=m
+CONFIG_VIDEOBUF2_MEMOPS=m
+CONFIG_VIDEOBUF2_DMA_CONTIG=m
+CONFIG_VIDEOBUF2_VMALLOC=m
+CONFIG_VIDEO_CAPTURE_DRIVERS=y
+# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+# CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set
+CONFIG_VIDEO_IR_I2C=m
+
+#
+# Encoders, decoders, sensors and other helper chips
+#
+
+#
+# Audio decoders, processors and mixers
+#
+CONFIG_VIDEO_TVAUDIO=m
+CONFIG_VIDEO_TDA7432=m
+CONFIG_VIDEO_TDA9840=m
+CONFIG_VIDEO_TEA6415C=m
+CONFIG_VIDEO_TEA6420=m
+CONFIG_VIDEO_MSP3400=m
+CONFIG_VIDEO_CS5345=m
+CONFIG_VIDEO_CS53L32A=m
+CONFIG_VIDEO_TLV320AIC23B=m
+CONFIG_VIDEO_WM8775=m
+CONFIG_VIDEO_WM8739=m
+CONFIG_VIDEO_VP27SMPX=m
+
+#
+# RDS decoders
+#
+CONFIG_VIDEO_SAA6588=m
+
+#
+# Video decoders
+#
+CONFIG_VIDEO_ADV7180=m
+CONFIG_VIDEO_ADV7183=m
+CONFIG_VIDEO_BT819=m
+CONFIG_VIDEO_BT856=m
+CONFIG_VIDEO_BT866=m
+CONFIG_VIDEO_KS0127=m
+CONFIG_VIDEO_SAA7110=m
+CONFIG_VIDEO_SAA711X=m
+CONFIG_VIDEO_SAA7191=m
+CONFIG_VIDEO_TVP514X=m
+CONFIG_VIDEO_TVP5150=m
+CONFIG_VIDEO_TVP7002=m
+CONFIG_VIDEO_VPX3220=m
+
+#
+# Video and audio decoders
+#
+CONFIG_VIDEO_SAA717X=m
+CONFIG_VIDEO_CX25840=m
+
+#
+# MPEG video encoders
+#
+CONFIG_VIDEO_CX2341X=m
+
+#
+# Video encoders
+#
+CONFIG_VIDEO_SAA7127=m
+CONFIG_VIDEO_SAA7185=m
+CONFIG_VIDEO_ADV7170=m
+CONFIG_VIDEO_ADV7175=m
+CONFIG_VIDEO_ADV7343=m
+CONFIG_VIDEO_ADV7393=m
+CONFIG_VIDEO_AK881X=m
+
+#
+# Camera sensor devices
+#
+CONFIG_VIDEO_APTINA_PLL=m
+CONFIG_VIDEO_OV7670=m
+CONFIG_VIDEO_VS6624=m
+CONFIG_VIDEO_MT9M032=m
+CONFIG_VIDEO_MT9P031=m
+CONFIG_VIDEO_MT9T001=m
+CONFIG_VIDEO_MT9V011=m
+CONFIG_VIDEO_MT9V032=m
+CONFIG_VIDEO_TCM825X=m
+CONFIG_VIDEO_SR030PC30=m
+CONFIG_VIDEO_NOON010PC30=m
+CONFIG_VIDEO_M5MOLS=m
+CONFIG_VIDEO_S5K6AA=m
+
+#
+# Flash devices
+#
+CONFIG_VIDEO_ADP1653=m
+CONFIG_VIDEO_AS3645A=m
+
+#
+# Video improvement chips
+#
+CONFIG_VIDEO_UPD64031A=m
+CONFIG_VIDEO_UPD64083=m
+
+#
+# Miscelaneous helper chips
+#
+CONFIG_VIDEO_THS7303=m
+CONFIG_VIDEO_M52790=m
+CONFIG_VIDEO_VIVI=m
+CONFIG_V4L_USB_DRIVERS=y
+
+#
+# Webcam devices
+#
+CONFIG_USB_VIDEO_CLASS=m
+CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
+CONFIG_USB_GSPCA=m
+CONFIG_USB_M5602=m
+CONFIG_USB_STV06XX=m
+CONFIG_USB_GL860=m
+CONFIG_USB_GSPCA_BENQ=m
+CONFIG_USB_GSPCA_CONEX=m
+CONFIG_USB_GSPCA_CPIA1=m
+CONFIG_USB_GSPCA_ETOMS=m
+CONFIG_USB_GSPCA_FINEPIX=m
+CONFIG_USB_GSPCA_JEILINJ=m
+CONFIG_USB_GSPCA_JL2005BCD=m
+CONFIG_USB_GSPCA_KINECT=m
+CONFIG_USB_GSPCA_KONICA=m
+CONFIG_USB_GSPCA_MARS=m
+CONFIG_USB_GSPCA_MR97310A=m
+CONFIG_USB_GSPCA_NW80X=m
+CONFIG_USB_GSPCA_OV519=m
+CONFIG_USB_GSPCA_OV534=m
+CONFIG_USB_GSPCA_OV534_9=m
+CONFIG_USB_GSPCA_PAC207=m
+CONFIG_USB_GSPCA_PAC7302=m
+CONFIG_USB_GSPCA_PAC7311=m
+CONFIG_USB_GSPCA_SE401=m
+CONFIG_USB_GSPCA_SN9C2028=m
+CONFIG_USB_GSPCA_SN9C20X=m
+CONFIG_USB_GSPCA_SONIXB=m
+CONFIG_USB_GSPCA_SONIXJ=m
+CONFIG_USB_GSPCA_SPCA500=m
+CONFIG_USB_GSPCA_SPCA501=m
+CONFIG_USB_GSPCA_SPCA505=m
+CONFIG_USB_GSPCA_SPCA506=m
+CONFIG_USB_GSPCA_SPCA508=m
+CONFIG_USB_GSPCA_SPCA561=m
+CONFIG_USB_GSPCA_SPCA1528=m
+CONFIG_USB_GSPCA_SQ905=m
+CONFIG_USB_GSPCA_SQ905C=m
+CONFIG_USB_GSPCA_SQ930X=m
+CONFIG_USB_GSPCA_STK014=m
+CONFIG_USB_GSPCA_STV0680=m
+CONFIG_USB_GSPCA_SUNPLUS=m
+CONFIG_USB_GSPCA_T613=m
+CONFIG_USB_GSPCA_TOPRO=m
+CONFIG_USB_GSPCA_TV8532=m
+CONFIG_USB_GSPCA_VC032X=m
+CONFIG_USB_GSPCA_VICAM=m
+CONFIG_USB_GSPCA_XIRLINK_CIT=m
+CONFIG_USB_GSPCA_ZC3XX=m
+CONFIG_USB_PWC=m
+# CONFIG_USB_PWC_DEBUG is not set
+CONFIG_USB_PWC_INPUT_EVDEV=y
+CONFIG_VIDEO_CPIA2=m
+CONFIG_USB_ZR364XX=m
+CONFIG_USB_STKWEBCAM=m
+CONFIG_USB_S2255=m
+CONFIG_USB_SN9C102=m
+
+#
+# Webcam and/or TV USB devices
+#
+CONFIG_VIDEO_EM28XX=m
+CONFIG_VIDEO_EM28XX_ALSA=m
+CONFIG_VIDEO_EM28XX_DVB=m
+CONFIG_VIDEO_EM28XX_RC=m
+
+#
+# TV USB devices
+#
+CONFIG_VIDEO_AU0828=m
+CONFIG_VIDEO_PVRUSB2=m
+CONFIG_VIDEO_PVRUSB2_SYSFS=y
+CONFIG_VIDEO_PVRUSB2_DVB=y
+# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
+CONFIG_VIDEO_HDPVR=m
+CONFIG_VIDEO_TLG2300=m
+CONFIG_VIDEO_CX231XX=m
+CONFIG_VIDEO_CX231XX_RC=y
+CONFIG_VIDEO_CX231XX_ALSA=m
+CONFIG_VIDEO_CX231XX_DVB=m
+CONFIG_VIDEO_TM6000=m
+CONFIG_VIDEO_TM6000_ALSA=m
+CONFIG_VIDEO_TM6000_DVB=m
+CONFIG_VIDEO_USBVISION=m
+CONFIG_V4L_PCI_DRIVERS=y
+CONFIG_VIDEO_BT848=m
+CONFIG_VIDEO_BT848_DVB=y
+CONFIG_VIDEO_CX18=m
+CONFIG_VIDEO_CX18_ALSA=m
+CONFIG_VIDEO_CX23885=m
+CONFIG_MEDIA_ALTERA_CI=m
+CONFIG_VIDEO_CX25821=m
+CONFIG_VIDEO_CX25821_ALSA=m
+CONFIG_VIDEO_CX88=m
+CONFIG_VIDEO_CX88_ALSA=m
+CONFIG_VIDEO_CX88_BLACKBIRD=m
+CONFIG_VIDEO_CX88_DVB=m
+CONFIG_VIDEO_CX88_VP3054=m
+CONFIG_VIDEO_CX88_MPEG=m
+CONFIG_VIDEO_HEXIUM_GEMINI=m
+CONFIG_VIDEO_HEXIUM_ORION=m
+CONFIG_VIDEO_IVTV=m
+CONFIG_VIDEO_FB_IVTV=m
+CONFIG_VIDEO_MEYE=m
+CONFIG_VIDEO_MXB=m
+CONFIG_VIDEO_SAA7134=m
+CONFIG_VIDEO_SAA7134_ALSA=m
+CONFIG_VIDEO_SAA7134_RC=y
+CONFIG_VIDEO_SAA7134_DVB=m
+CONFIG_VIDEO_SAA7164=m
+CONFIG_VIDEO_ZORAN=m
+CONFIG_VIDEO_ZORAN_DC30=m
+CONFIG_VIDEO_ZORAN_ZR36060=m
+CONFIG_VIDEO_ZORAN_BUZ=m
+CONFIG_VIDEO_ZORAN_DC10=m
+CONFIG_VIDEO_ZORAN_LML33=m
+CONFIG_VIDEO_ZORAN_LML33R10=m
+CONFIG_VIDEO_ZORAN_AVS6EYES=m
+# CONFIG_V4L_ISA_PARPORT_DRIVERS is not set
+# CONFIG_V4L_PLATFORM_DRIVERS is not set
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_VIDEO_MEM2MEM_TESTDEV=m
+CONFIG_RADIO_ADAPTERS=y
+CONFIG_RADIO_SI470X=y
+CONFIG_USB_SI470X=m
+CONFIG_I2C_SI470X=m
+CONFIG_USB_MR800=m
+CONFIG_USB_DSBR=m
+CONFIG_RADIO_MAXIRADIO=m
+CONFIG_RADIO_SHARK=m
+CONFIG_RADIO_SHARK2=m
+CONFIG_I2C_SI4713=m
+CONFIG_RADIO_SI4713=m
+CONFIG_USB_KEENE=m
+CONFIG_RADIO_TEA5764=m
+CONFIG_RADIO_SAA7706H=m
+CONFIG_RADIO_TEF6862=m
+CONFIG_RADIO_WL1273=m
+
+#
+# Texas Instruments WL128x FM driver (ST based)
+#
+CONFIG_RADIO_WL128X=m
+# CONFIG_V4L_RADIO_ISA_DRIVERS is not set
+CONFIG_DVB_MAX_ADAPTERS=8
+# CONFIG_DVB_DYNAMIC_MINORS is not set
+CONFIG_DVB_CAPTURE_DRIVERS=y
+
+#
+# Supported SAA7146 based PCI Adapters
+#
+CONFIG_TTPCI_EEPROM=m
+CONFIG_DVB_AV7110=m
+CONFIG_DVB_AV7110_OSD=y
+CONFIG_DVB_BUDGET_CORE=m
+CONFIG_DVB_BUDGET=m
+CONFIG_DVB_BUDGET_CI=m
+CONFIG_DVB_BUDGET_AV=m
+CONFIG_DVB_BUDGET_PATCH=m
+
+#
+# Supported USB Adapters
+#
+CONFIG_DVB_USB=m
+# CONFIG_DVB_USB_DEBUG is not set
+CONFIG_DVB_USB_A800=m
+CONFIG_DVB_USB_DIBUSB_MB=m
+CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
+CONFIG_DVB_USB_DIBUSB_MC=m
+CONFIG_DVB_USB_DIB0700=m
+CONFIG_DVB_USB_UMT_010=m
+CONFIG_DVB_USB_CXUSB=m
+CONFIG_DVB_USB_M920X=m
+CONFIG_DVB_USB_GL861=m
+CONFIG_DVB_USB_AU6610=m
+CONFIG_DVB_USB_DIGITV=m
+CONFIG_DVB_USB_VP7045=m
+CONFIG_DVB_USB_VP702X=m
+CONFIG_DVB_USB_GP8PSK=m
+CONFIG_DVB_USB_NOVA_T_USB2=m
+CONFIG_DVB_USB_TTUSB2=m
+CONFIG_DVB_USB_DTT200U=m
+CONFIG_DVB_USB_OPERA1=m
+CONFIG_DVB_USB_AF9005=m
+CONFIG_DVB_USB_AF9005_REMOTE=m
+CONFIG_DVB_USB_PCTV452E=m
+CONFIG_DVB_USB_DW2102=m
+CONFIG_DVB_USB_CINERGY_T2=m
+CONFIG_DVB_USB_ANYSEE=m
+CONFIG_DVB_USB_DTV5100=m
+CONFIG_DVB_USB_AF9015=m
+CONFIG_DVB_USB_CE6230=m
+CONFIG_DVB_USB_FRIIO=m
+CONFIG_DVB_USB_EC168=m
+CONFIG_DVB_USB_AZ6007=m
+CONFIG_DVB_USB_AZ6027=m
+CONFIG_DVB_USB_LME2510=m
+CONFIG_DVB_USB_TECHNISAT_USB2=m
+CONFIG_DVB_USB_IT913X=m
+CONFIG_DVB_USB_MXL111SF=m
+CONFIG_DVB_USB_RTL28XXU=m
+CONFIG_DVB_USB_AF9035=m
+CONFIG_DVB_TTUSB_BUDGET=m
+CONFIG_DVB_TTUSB_DEC=m
+CONFIG_SMS_SIANO_MDTV=m
+
+#
+# Siano module components
+#
+CONFIG_SMS_USB_DRV=m
+CONFIG_SMS_SDIO_DRV=m
+
+#
+# Supported FlexCopII (B2C2) Adapters
+#
+CONFIG_DVB_B2C2_FLEXCOP=m
+CONFIG_DVB_B2C2_FLEXCOP_PCI=m
+CONFIG_DVB_B2C2_FLEXCOP_USB=m
+# CONFIG_DVB_B2C2_FLEXCOP_DEBUG is not set
+
+#
+# Supported BT878 Adapters
+#
+CONFIG_DVB_BT8XX=m
+
+#
+# Supported Pluto2 Adapters
+#
+CONFIG_DVB_PLUTO2=m
+
+#
+# Supported SDMC DM1105 Adapters
+#
+CONFIG_DVB_DM1105=m
+
+#
+# Supported FireWire (IEEE 1394) Adapters
+#
+CONFIG_DVB_FIREDTV=m
+CONFIG_DVB_FIREDTV_INPUT=y
+
+#
+# Supported Earthsoft PT1 Adapters
+#
+CONFIG_DVB_PT1=m
+
+#
+# Supported Mantis Adapters
+#
+CONFIG_MANTIS_CORE=m
+CONFIG_DVB_MANTIS=m
+CONFIG_DVB_HOPPER=m
+
+#
+# Supported nGene Adapters
+#
+CONFIG_DVB_NGENE=m
+
+#
+# Supported ddbridge ('Octopus') Adapters
+#
+CONFIG_DVB_DDBRIDGE=m
+
+#
+# Supported DVB Frontends
+#
+
+#
+# Multistandard (satellite) frontends
+#
+CONFIG_DVB_STB0899=m
+CONFIG_DVB_STB6100=m
+CONFIG_DVB_STV090x=m
+CONFIG_DVB_STV6110x=m
+
+#
+# Multistandard (cable + terrestrial) frontends
+#
+CONFIG_DVB_DRXK=m
+CONFIG_DVB_TDA18271C2DD=m
+
+#
+# DVB-S (satellite) frontends
+#
+CONFIG_DVB_CX24110=m
+CONFIG_DVB_CX24123=m
+CONFIG_DVB_MT312=m
+CONFIG_DVB_ZL10036=m
+CONFIG_DVB_ZL10039=m
+CONFIG_DVB_S5H1420=m
+CONFIG_DVB_STV0288=m
+CONFIG_DVB_STB6000=m
+CONFIG_DVB_STV0299=m
+CONFIG_DVB_STV6110=m
+CONFIG_DVB_STV0900=m
+CONFIG_DVB_TDA8083=m
+CONFIG_DVB_TDA10086=m
+CONFIG_DVB_TDA8261=m
+CONFIG_DVB_VES1X93=m
+CONFIG_DVB_TUNER_ITD1000=m
+CONFIG_DVB_TUNER_CX24113=m
+CONFIG_DVB_TDA826X=m
+CONFIG_DVB_TUA6100=m
+CONFIG_DVB_CX24116=m
+CONFIG_DVB_SI21XX=m
+CONFIG_DVB_DS3000=m
+CONFIG_DVB_MB86A16=m
+CONFIG_DVB_TDA10071=m
+
+#
+# DVB-T (terrestrial) frontends
+#
+CONFIG_DVB_SP8870=m
+CONFIG_DVB_SP887X=m
+CONFIG_DVB_CX22700=m
+CONFIG_DVB_CX22702=m
+CONFIG_DVB_DRXD=m
+CONFIG_DVB_L64781=m
+CONFIG_DVB_TDA1004X=m
+CONFIG_DVB_NXT6000=m
+CONFIG_DVB_MT352=m
+CONFIG_DVB_ZL10353=m
+CONFIG_DVB_DIB3000MB=m
+CONFIG_DVB_DIB3000MC=m
+CONFIG_DVB_DIB7000M=m
+CONFIG_DVB_DIB7000P=m
+CONFIG_DVB_TDA10048=m
+CONFIG_DVB_AF9013=m
+CONFIG_DVB_EC100=m
+CONFIG_DVB_STV0367=m
+CONFIG_DVB_CXD2820R=m
+CONFIG_DVB_RTL2830=m
+CONFIG_DVB_RTL2832=m
+
+#
+# DVB-C (cable) frontends
+#
+CONFIG_DVB_VES1820=m
+CONFIG_DVB_TDA10021=m
+CONFIG_DVB_TDA10023=m
+CONFIG_DVB_STV0297=m
+
+#
+# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
+#
+CONFIG_DVB_NXT200X=m
+CONFIG_DVB_OR51211=m
+CONFIG_DVB_OR51132=m
+CONFIG_DVB_BCM3510=m
+CONFIG_DVB_LGDT330X=m
+CONFIG_DVB_LGDT3305=m
+CONFIG_DVB_LG2160=m
+CONFIG_DVB_S5H1409=m
+CONFIG_DVB_AU8522=m
+CONFIG_DVB_AU8522_DTV=m
+CONFIG_DVB_AU8522_V4L=m
+CONFIG_DVB_S5H1411=m
+
+#
+# ISDB-T (terrestrial) frontends
+#
+CONFIG_DVB_S921=m
+CONFIG_DVB_DIB8000=m
+CONFIG_DVB_MB86A20S=m
+
+#
+# Digital terrestrial only tuners/PLL
+#
+CONFIG_DVB_PLL=m
+CONFIG_DVB_TUNER_DIB0070=m
+CONFIG_DVB_TUNER_DIB0090=m
+
+#
+# SEC control devices for DVB-S
+#
+CONFIG_DVB_LNBP21=m
+CONFIG_DVB_LNBP22=m
+CONFIG_DVB_ISL6405=m
+CONFIG_DVB_ISL6421=m
+CONFIG_DVB_ISL6423=m
+CONFIG_DVB_A8293=m
+CONFIG_DVB_LGS8GXX=m
+CONFIG_DVB_ATBM8830=m
+CONFIG_DVB_TDA665x=m
+CONFIG_DVB_IX2505V=m
+CONFIG_DVB_IT913X_FE=m
+CONFIG_DVB_M88RS2000=m
+CONFIG_DVB_AF9033=m
+
+#
+# Tools to develop new frontends
+#
+# CONFIG_DVB_DUMMY_FE is not set
+
+#
+# Graphics support
+#
+CONFIG_AGP=m
+CONFIG_AGP_ALI=m
+CONFIG_AGP_ATI=m
+CONFIG_AGP_AMD=m
+CONFIG_AGP_AMD64=m
+CONFIG_AGP_INTEL=m
+CONFIG_AGP_NVIDIA=m
+CONFIG_AGP_SIS=m
+CONFIG_AGP_SWORKS=m
+CONFIG_AGP_VIA=m
+CONFIG_AGP_EFFICEON=m
+CONFIG_VGA_ARB=y
+CONFIG_VGA_ARB_MAX_GPUS=16
+CONFIG_VGA_SWITCHEROO=y
+CONFIG_DRM=m
+CONFIG_DRM_USB=m
+CONFIG_DRM_KMS_HELPER=m
+CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+CONFIG_DRM_TTM=m
+CONFIG_DRM_TDFX=m
+CONFIG_DRM_R128=m
+CONFIG_DRM_RADEON=m
+CONFIG_DRM_RADEON_KMS=y
+CONFIG_DRM_NOUVEAU=m
+CONFIG_DRM_NOUVEAU_BACKLIGHT=y
+CONFIG_DRM_NOUVEAU_DEBUG=y
+
+#
+# I2C encoder or helper chips
+#
+CONFIG_DRM_I2C_CH7006=m
+CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_I915=m
+CONFIG_DRM_I915_KMS=y
+CONFIG_DRM_MGA=m
+CONFIG_DRM_SIS=m
+CONFIG_DRM_VIA=m
+CONFIG_DRM_SAVAGE=m
+CONFIG_DRM_VMWGFX=m
+CONFIG_DRM_VMWGFX_FBCON=y
+CONFIG_DRM_GMA500=m
+CONFIG_DRM_GMA600=y
+CONFIG_DRM_GMA3600=y
+CONFIG_DRM_UDL=m
+CONFIG_DRM_AST=m
+CONFIG_DRM_MGAG200=m
+CONFIG_DRM_CIRRUS_QEMU=m
+CONFIG_STUB_POULSBO=m
+CONFIG_VGASTATE=m
+CONFIG_VIDEO_OUTPUT_CONTROL=m
+CONFIG_FB=y
+CONFIG_FIRMWARE_EDID=y
+CONFIG_FB_DDC=m
+CONFIG_FB_BOOT_VESA_SUPPORT=y
+CONFIG_FB_CFB_FILLRECT=y
+CONFIG_FB_CFB_COPYAREA=y
+CONFIG_FB_CFB_IMAGEBLIT=y
+# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
+CONFIG_FB_SYS_FILLRECT=m
+CONFIG_FB_SYS_COPYAREA=m
+CONFIG_FB_SYS_IMAGEBLIT=m
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_SYS_FOPS=m
+# CONFIG_FB_WMT_GE_ROPS is not set
+CONFIG_FB_DEFERRED_IO=y
+# CONFIG_FB_SVGALIB is not set
+# CONFIG_FB_MACMODES is not set
+CONFIG_FB_BACKLIGHT=y
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+
+#
+# Frame buffer hardware drivers
+#
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ARC is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_VGA16=m
+CONFIG_FB_UVESA=m
+CONFIG_FB_VESA=y
+CONFIG_FB_EFI=y
+# CONFIG_FB_N411 is not set
+# CONFIG_FB_HGA is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
+# CONFIG_FB_I740 is not set
+CONFIG_FB_I810=m
+CONFIG_FB_I810_GTF=y
+CONFIG_FB_I810_I2C=y
+# CONFIG_FB_LE80578 is not set
+# CONFIG_FB_MATROX is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+CONFIG_FB_VIA=m
+CONFIG_FB_VIA_DIRECT_PROCFS=y
+CONFIG_FB_VIA_X_COMPATIBILITY=y
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+CONFIG_FB_VOODOO1=m
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_GEODE is not set
+# CONFIG_FB_TMIO is not set
+# CONFIG_FB_SM501 is not set
+# CONFIG_FB_SMSCUFX is not set
+CONFIG_FB_UDL=m
+CONFIG_FB_VIRTUAL=m
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_BROADSHEET is not set
+# CONFIG_FB_AUO_K190X is not set
+# CONFIG_EXYNOS_VIDEO is not set
+CONFIG_BACKLIGHT_LCD_SUPPORT=y
+CONFIG_LCD_CLASS_DEVICE=m
+CONFIG_LCD_PLATFORM=m
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+# CONFIG_BACKLIGHT_GENERIC is not set
+CONFIG_BACKLIGHT_LM3533=m
+CONFIG_BACKLIGHT_PROGEAR=m
+CONFIG_BACKLIGHT_APPLE=m
+# CONFIG_BACKLIGHT_SAHARA is not set
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+CONFIG_BACKLIGHT_PCF50633=m
+# CONFIG_BACKLIGHT_LP855X is not set
+# CONFIG_BACKLIGHT_OT200 is not set
+
+#
+# Console display driver support
+#
+CONFIG_VGA_CONSOLE=y
+# CONFIG_VGACON_SOFT_SCROLLBACK is not set
+# CONFIG_MDA_CONSOLE is not set
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
+CONFIG_FONTS=y
+# CONFIG_FONT_8x8 is not set
+CONFIG_FONT_8x16=y
+# CONFIG_FONT_6x11 is not set
+# CONFIG_FONT_7x14 is not set
+# CONFIG_FONT_PEARL_8x8 is not set
+# CONFIG_FONT_ACORN_8x8 is not set
+# CONFIG_FONT_MINI_4x6 is not set
+# CONFIG_FONT_SUN8x16 is not set
+# CONFIG_FONT_SUN12x22 is not set
+# CONFIG_FONT_10x18 is not set
+CONFIG_FONT_AUTOSELECT=y
+# CONFIG_LOGO is not set
+CONFIG_SOUND=m
+CONFIG_SOUND_OSS_CORE=y
+# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_HWDEP=m
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_JACK=y
+CONFIG_SND_SEQUENCER=m
+CONFIG_SND_SEQ_DUMMY=m
+CONFIG_SND_OSSEMUL=y
+CONFIG_SND_MIXER_OSS=m
+CONFIG_SND_PCM_OSS=m
+CONFIG_SND_PCM_OSS_PLUGINS=y
+CONFIG_SND_SEQUENCER_OSS=y
+CONFIG_SND_HRTIMER=m
+CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_SUPPORT_OLD_API=y
+CONFIG_SND_VERBOSE_PROCFS=y
+# CONFIG_SND_VERBOSE_PRINTK is not set
+# CONFIG_SND_DEBUG is not set
+CONFIG_SND_VMASTER=y
+CONFIG_SND_KCTL_JACK=y
+CONFIG_SND_DMA_SGBUF=y
+CONFIG_SND_RAWMIDI_SEQ=m
+CONFIG_SND_OPL3_LIB_SEQ=m
+CONFIG_SND_OPL4_LIB_SEQ=m
+CONFIG_SND_SBAWE_SEQ=m
+CONFIG_SND_EMU10K1_SEQ=m
+CONFIG_SND_MPU401_UART=m
+CONFIG_SND_OPL3_LIB=m
+CONFIG_SND_OPL4_LIB=m
+CONFIG_SND_VX_LIB=m
+CONFIG_SND_AC97_CODEC=m
+CONFIG_SND_DRIVERS=y
+# CONFIG_SND_PCSP is not set
+CONFIG_SND_DUMMY=m
+CONFIG_SND_ALOOP=m
+CONFIG_SND_VIRMIDI=m
+CONFIG_SND_MTPAV=m
+CONFIG_SND_MTS64=m
+CONFIG_SND_SERIAL_U16550=m
+CONFIG_SND_MPU401=m
+CONFIG_SND_PORTMAN2X4=m
+CONFIG_SND_AC97_POWER_SAVE=y
+CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0
+CONFIG_SND_WSS_LIB=m
+CONFIG_SND_SB_COMMON=m
+CONFIG_SND_SB8_DSP=m
+CONFIG_SND_SB16_DSP=m
+CONFIG_SND_ISA=y
+CONFIG_SND_ADLIB=m
+CONFIG_SND_AD1816A=m
+CONFIG_SND_AD1848=m
+CONFIG_SND_ALS100=m
+CONFIG_SND_AZT1605=m
+CONFIG_SND_AZT2316=m
+CONFIG_SND_AZT2320=m
+CONFIG_SND_CMI8330=m
+CONFIG_SND_CS4231=m
+CONFIG_SND_CS4236=m
+CONFIG_SND_ES1688=m
+CONFIG_SND_ES18XX=m
+CONFIG_SND_SC6000=m
+CONFIG_SND_GUSCLASSIC=m
+CONFIG_SND_GUSEXTREME=m
+CONFIG_SND_GUSMAX=m
+CONFIG_SND_INTERWAVE=m
+CONFIG_SND_INTERWAVE_STB=m
+CONFIG_SND_JAZZ16=m
+CONFIG_SND_OPL3SA2=m
+CONFIG_SND_OPTI92X_AD1848=m
+CONFIG_SND_OPTI92X_CS4231=m
+CONFIG_SND_OPTI93X=m
+CONFIG_SND_MIRO=m
+CONFIG_SND_SB8=m
+CONFIG_SND_SB16=m
+CONFIG_SND_SBAWE=m
+CONFIG_SND_SB16_CSP=y
+CONFIG_SND_SSCAPE=m
+CONFIG_SND_WAVEFRONT=m
+CONFIG_SND_MSND_PINNACLE=m
+CONFIG_SND_MSND_CLASSIC=m
+CONFIG_SND_TEA575X=m
+CONFIG_SND_PCI=y
+CONFIG_SND_AD1889=m
+CONFIG_SND_ALS300=m
+CONFIG_SND_ALS4000=m
+CONFIG_SND_ALI5451=m
+CONFIG_SND_ASIHPI=m
+CONFIG_SND_ATIIXP=m
+CONFIG_SND_ATIIXP_MODEM=m
+CONFIG_SND_AU8810=m
+CONFIG_SND_AU8820=m
+CONFIG_SND_AU8830=m
+CONFIG_SND_AW2=m
+CONFIG_SND_AZT3328=m
+CONFIG_SND_BT87X=m
+# CONFIG_SND_BT87X_OVERCLOCK is not set
+CONFIG_SND_CA0106=m
+CONFIG_SND_CMIPCI=m
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
+CONFIG_SND_CS4281=m
+CONFIG_SND_CS46XX=m
+CONFIG_SND_CS46XX_NEW_DSP=y
+CONFIG_SND_CS5530=m
+CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_CTXFI=m
+CONFIG_SND_DARLA20=m
+CONFIG_SND_GINA20=m
+CONFIG_SND_LAYLA20=m
+CONFIG_SND_DARLA24=m
+CONFIG_SND_GINA24=m
+CONFIG_SND_LAYLA24=m
+CONFIG_SND_MONA=m
+CONFIG_SND_MIA=m
+CONFIG_SND_ECHO3G=m
+CONFIG_SND_INDIGO=m
+CONFIG_SND_INDIGOIO=m
+CONFIG_SND_INDIGODJ=m
+CONFIG_SND_INDIGOIOX=m
+CONFIG_SND_INDIGODJX=m
+CONFIG_SND_EMU10K1=m
+CONFIG_SND_EMU10K1X=m
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+CONFIG_SND_ES1938=m
+CONFIG_SND_ES1968=m
+CONFIG_SND_ES1968_INPUT=y
+CONFIG_SND_ES1968_RADIO=y
+CONFIG_SND_FM801=m
+CONFIG_SND_FM801_TEA575X_BOOL=y
+CONFIG_SND_HDA_INTEL=m
+CONFIG_SND_HDA_PREALLOC_SIZE=4096
+CONFIG_SND_HDA_HWDEP=y
+CONFIG_SND_HDA_RECONFIG=y
+CONFIG_SND_HDA_INPUT_BEEP=y
+CONFIG_SND_HDA_INPUT_BEEP_MODE=1
+CONFIG_SND_HDA_INPUT_JACK=y
+CONFIG_SND_HDA_PATCH_LOADER=y
+CONFIG_SND_HDA_CODEC_REALTEK=y
+CONFIG_SND_HDA_CODEC_ANALOG=y
+CONFIG_SND_HDA_CODEC_SIGMATEL=y
+CONFIG_SND_HDA_CODEC_VIA=y
+CONFIG_SND_HDA_CODEC_HDMI=y
+CONFIG_SND_HDA_CODEC_CIRRUS=y
+CONFIG_SND_HDA_CODEC_CONEXANT=y
+CONFIG_SND_HDA_CODEC_CA0110=y
+CONFIG_SND_HDA_CODEC_CA0132=y
+CONFIG_SND_HDA_CODEC_CMEDIA=y
+CONFIG_SND_HDA_CODEC_SI3054=y
+CONFIG_SND_HDA_GENERIC=y
+CONFIG_SND_HDA_POWER_SAVE=y
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
+CONFIG_SND_HDSP=m
+CONFIG_SND_HDSPM=m
+CONFIG_SND_ICE1712=m
+CONFIG_SND_ICE1724=m
+CONFIG_SND_INTEL8X0=m
+CONFIG_SND_INTEL8X0M=m
+CONFIG_SND_KORG1212=m
+CONFIG_SND_LOLA=m
+CONFIG_SND_LX6464ES=m
+CONFIG_SND_MAESTRO3=m
+CONFIG_SND_MAESTRO3_INPUT=y
+CONFIG_SND_MIXART=m
+CONFIG_SND_NM256=m
+CONFIG_SND_PCXHR=m
+CONFIG_SND_RIPTIDE=m
+CONFIG_SND_RME32=m
+CONFIG_SND_RME96=m
+CONFIG_SND_RME9652=m
+CONFIG_SND_SIS7019=m
+CONFIG_SND_SONICVIBES=m
+CONFIG_SND_TRIDENT=m
+CONFIG_SND_VIA82XX=m
+CONFIG_SND_VIA82XX_MODEM=m
+CONFIG_SND_VIRTUOSO=m
+CONFIG_SND_VX222=m
+CONFIG_SND_YMFPCI=m
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_USX2Y=m
+CONFIG_SND_USB_CAIAQ=m
+CONFIG_SND_USB_CAIAQ_INPUT=y
+CONFIG_SND_USB_US122L=m
+CONFIG_SND_USB_6FIRE=m
+CONFIG_SND_FIREWIRE=y
+CONFIG_SND_FIREWIRE_LIB=m
+CONFIG_SND_FIREWIRE_SPEAKERS=m
+CONFIG_SND_ISIGHT=m
+CONFIG_SND_PCMCIA=y
+CONFIG_SND_VXPOCKET=m
+CONFIG_SND_PDAUDIOCF=m
+# CONFIG_SND_SOC is not set
+# CONFIG_SOUND_PRIME is not set
+CONFIG_AC97_BUS=m
+
+#
+# HID support
+#
+CONFIG_HID=m
+CONFIG_HIDRAW=y
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=m
+
+#
+# Special HID drivers
+#
+CONFIG_HID_A4TECH=m
+CONFIG_HID_ACRUX=m
+CONFIG_HID_ACRUX_FF=y
+CONFIG_HID_APPLE=m
+CONFIG_HID_AUREAL=m
+CONFIG_HID_BELKIN=m
+CONFIG_HID_CHERRY=m
+CONFIG_HID_CHICONY=m
+CONFIG_HID_PRODIKEYS=m
+CONFIG_HID_CYPRESS=m
+CONFIG_HID_DRAGONRISE=m
+CONFIG_DRAGONRISE_FF=y
+CONFIG_HID_EMS_FF=m
+CONFIG_HID_ELECOM=m
+CONFIG_HID_EZKEY=m
+CONFIG_HID_HOLTEK=m
+CONFIG_HOLTEK_FF=y
+CONFIG_HID_KEYTOUCH=m
+CONFIG_HID_KYE=m
+CONFIG_HID_UCLOGIC=m
+CONFIG_HID_WALTOP=m
+CONFIG_HID_GYRATION=m
+CONFIG_HID_TWINHAN=m
+CONFIG_HID_KENSINGTON=m
+CONFIG_HID_LCPOWER=m
+CONFIG_HID_LENOVO_TPKBD=m
+CONFIG_HID_LOGITECH=m
+CONFIG_HID_LOGITECH_DJ=m
+CONFIG_LOGITECH_FF=y
+CONFIG_LOGIRUMBLEPAD2_FF=y
+CONFIG_LOGIG940_FF=y
+CONFIG_LOGIWHEELS_FF=y
+CONFIG_HID_MAGICMOUSE=m
+CONFIG_HID_MICROSOFT=m
+CONFIG_HID_MONTEREY=m
+CONFIG_HID_MULTITOUCH=m
+CONFIG_HID_NTRIG=m
+CONFIG_HID_ORTEK=m
+CONFIG_HID_PANTHERLORD=m
+CONFIG_PANTHERLORD_FF=y
+CONFIG_HID_PETALYNX=m
+CONFIG_HID_PICOLCD=m
+CONFIG_HID_PICOLCD_FB=y
+CONFIG_HID_PICOLCD_BACKLIGHT=y
+CONFIG_HID_PICOLCD_LCD=y
+CONFIG_HID_PICOLCD_LEDS=y
+CONFIG_HID_PRIMAX=m
+CONFIG_HID_ROCCAT=m
+CONFIG_HID_SAITEK=m
+CONFIG_HID_SAMSUNG=m
+CONFIG_HID_SONY=m
+CONFIG_HID_SPEEDLINK=m
+CONFIG_HID_SUNPLUS=m
+CONFIG_HID_GREENASIA=m
+CONFIG_GREENASIA_FF=y
+CONFIG_HID_HYPERV_MOUSE=m
+CONFIG_HID_SMARTJOYPLUS=m
+CONFIG_SMARTJOYPLUS_FF=y
+CONFIG_HID_TIVO=m
+CONFIG_HID_TOPSEED=m
+CONFIG_HID_THRUSTMASTER=m
+CONFIG_THRUSTMASTER_FF=y
+CONFIG_HID_WACOM=m
+CONFIG_HID_WIIMOTE=m
+CONFIG_HID_WIIMOTE_EXT=y
+CONFIG_HID_ZEROPLUS=m
+CONFIG_ZEROPLUS_FF=y
+CONFIG_HID_ZYDACRON=m
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=m
+CONFIG_HID_PID=y
+CONFIG_USB_HIDDEV=y
+CONFIG_USB_ARCH_HAS_OHCI=y
+CONFIG_USB_ARCH_HAS_EHCI=y
+CONFIG_USB_ARCH_HAS_XHCI=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=m
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=m
+# CONFIG_USB_DEBUG is not set
+# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DYNAMIC_MINORS=y
+CONFIG_USB_SUSPEND=y
+# CONFIG_USB_OTG is not set
+# CONFIG_USB_DWC3 is not set
+CONFIG_USB_MON=m
+CONFIG_USB_WUSB=m
+CONFIG_USB_WUSB_CBAF=m
+# CONFIG_USB_WUSB_CBAF_DEBUG is not set
+
+#
+# USB Host Controller Drivers
+#
+CONFIG_USB_C67X00_HCD=m
+CONFIG_USB_XHCI_HCD=m
+# CONFIG_USB_XHCI_HCD_DEBUGGING is not set
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_OXU210HP_HCD=m
+CONFIG_USB_ISP116X_HCD=m
+CONFIG_USB_ISP1760_HCD=m
+CONFIG_USB_ISP1362_HCD=m
+CONFIG_USB_OHCI_HCD=m
+# CONFIG_USB_OHCI_HCD_SSB is not set
+# CONFIG_USB_OHCI_HCD_PLATFORM is not set
+# CONFIG_USB_EHCI_HCD_PLATFORM is not set
+# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
+# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_U132_HCD=m
+CONFIG_USB_SL811_HCD=m
+# CONFIG_USB_SL811_HCD_ISO is not set
+CONFIG_USB_SL811_CS=m
+CONFIG_USB_R8A66597_HCD=m
+CONFIG_USB_RENESAS_USBHS_HCD=m
+CONFIG_USB_WHCI_HCD=m
+CONFIG_USB_HWA_HCD=m
+# CONFIG_USB_HCD_BCMA is not set
+# CONFIG_USB_HCD_SSB is not set
+CONFIG_USB_MUSB_HDRC=m
+CONFIG_USB_MUSB_TUSB6010=m
+CONFIG_MUSB_PIO_ONLY=y
+CONFIG_USB_CHIPIDEA=m
+CONFIG_USB_CHIPIDEA_UDC=y
+CONFIG_USB_CHIPIDEA_HOST=y
+# CONFIG_USB_CHIPIDEA_DEBUG is not set
+CONFIG_USB_RENESAS_USBHS=m
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_ACM=m
+CONFIG_USB_PRINTER=m
+CONFIG_USB_WDM=m
+CONFIG_USB_TMC=m
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=m
+# CONFIG_USB_STORAGE_DEBUG is not set
+CONFIG_USB_STORAGE_REALTEK=m
+CONFIG_REALTEK_AUTOPM=y
+CONFIG_USB_STORAGE_DATAFAB=m
+CONFIG_USB_STORAGE_FREECOM=m
+CONFIG_USB_STORAGE_ISD200=m
+CONFIG_USB_STORAGE_USBAT=m
+CONFIG_USB_STORAGE_SDDR09=m
+CONFIG_USB_STORAGE_SDDR55=m
+CONFIG_USB_STORAGE_JUMPSHOT=m
+CONFIG_USB_STORAGE_ALAUDA=m
+CONFIG_USB_STORAGE_ONETOUCH=m
+CONFIG_USB_STORAGE_KARMA=m
+CONFIG_USB_STORAGE_CYPRESS_ATACB=m
+CONFIG_USB_STORAGE_ENE_UB6250=m
+CONFIG_USB_UAS=m
+# CONFIG_USB_LIBUSUAL is not set
+
+#
+# USB Imaging devices
+#
+CONFIG_USB_MDC800=m
+CONFIG_USB_MICROTEK=m
+
+#
+# USB port drivers
+#
+CONFIG_USB_USS720=m
+CONFIG_USB_SERIAL=m
+CONFIG_USB_EZUSB=y
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_AIRCABLE=m
+CONFIG_USB_SERIAL_ARK3116=m
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_CH341=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+CONFIG_USB_SERIAL_EMPEG=m
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_FUNSOFT=m
+CONFIG_USB_SERIAL_VISOR=m
+CONFIG_USB_SERIAL_IPAQ=m
+CONFIG_USB_SERIAL_IR=m
+CONFIG_USB_SERIAL_EDGEPORT=m
+CONFIG_USB_SERIAL_EDGEPORT_TI=m
+CONFIG_USB_SERIAL_F81232=m
+CONFIG_USB_SERIAL_GARMIN=m
+CONFIG_USB_SERIAL_IPW=m
+CONFIG_USB_SERIAL_IUU=m
+CONFIG_USB_SERIAL_KEYSPAN_PDA=m
+CONFIG_USB_SERIAL_KEYSPAN=m
+CONFIG_USB_SERIAL_KEYSPAN_MPR=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19=y
+CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
+CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
+CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
+CONFIG_USB_SERIAL_KLSI=m
+CONFIG_USB_SERIAL_KOBIL_SCT=m
+CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_METRO=m
+CONFIG_USB_SERIAL_MOS7720=m
+CONFIG_USB_SERIAL_MOS7715_PARPORT=y
+CONFIG_USB_SERIAL_MOS7840=m
+CONFIG_USB_SERIAL_MOTOROLA=m
+CONFIG_USB_SERIAL_NAVMAN=m
+CONFIG_USB_SERIAL_PL2303=m
+CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_QCAUX=m
+CONFIG_USB_SERIAL_QUALCOMM=m
+CONFIG_USB_SERIAL_SPCP8X5=m
+CONFIG_USB_SERIAL_HP4X=m
+CONFIG_USB_SERIAL_SAFE=m
+# CONFIG_USB_SERIAL_SAFE_PADDED is not set
+CONFIG_USB_SERIAL_SIEMENS_MPI=m
+CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+CONFIG_USB_SERIAL_SYMBOL=m
+CONFIG_USB_SERIAL_TI=m
+CONFIG_USB_SERIAL_CYBERJACK=m
+CONFIG_USB_SERIAL_XIRCOM=m
+CONFIG_USB_SERIAL_WWAN=m
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_SERIAL_OMNINET=m
+CONFIG_USB_SERIAL_OPTICON=m
+CONFIG_USB_SERIAL_VIVOPAY_SERIAL=m
+CONFIG_USB_SERIAL_ZIO=m
+CONFIG_USB_SERIAL_SSU100=m
+CONFIG_USB_SERIAL_QT2=m
+# CONFIG_USB_SERIAL_DEBUG is not set
+
+#
+# USB Miscellaneous drivers
+#
+CONFIG_USB_EMI62=m
+CONFIG_USB_EMI26=m
+CONFIG_USB_ADUTUX=m
+CONFIG_USB_SEVSEG=m
+CONFIG_USB_RIO500=m
+CONFIG_USB_LEGOTOWER=m
+CONFIG_USB_LCD=m
+CONFIG_USB_LED=m
+CONFIG_USB_CYPRESS_CY7C63=m
+CONFIG_USB_CYTHERM=m
+CONFIG_USB_IDMOUSE=m
+CONFIG_USB_FTDI_ELAN=m
+CONFIG_USB_APPLEDISPLAY=m
+CONFIG_USB_SISUSBVGA=m
+# CONFIG_USB_SISUSBVGA_CON is not set
+CONFIG_USB_LD=m
+CONFIG_USB_TRANCEVIBRATOR=m
+CONFIG_USB_IOWARRIOR=m
+CONFIG_USB_TEST=m
+CONFIG_USB_ISIGHTFW=m
+CONFIG_USB_YUREX=m
+
+#
+# USB Physical Layer drivers
+#
+CONFIG_USB_ISP1301=m
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+CONFIG_USB_CXACRU=m
+CONFIG_USB_UEAGLEATM=m
+CONFIG_USB_XUSBATM=m
+CONFIG_USB_GADGET=m
+# CONFIG_USB_GADGET_DEBUG is not set
+# CONFIG_USB_GADGET_DEBUG_FILES is not set
+# CONFIG_USB_GADGET_DEBUG_FS is not set
+CONFIG_USB_GADGET_VBUS_DRAW=2
+CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
+
+#
+# USB Peripheral Controller
+#
+CONFIG_USB_FUSB300=m
+CONFIG_USB_R8A66597=m
+CONFIG_USB_RENESAS_USBHS_UDC=m
+CONFIG_USB_MV_UDC=m
+CONFIG_USB_GADGET_MUSB_HDRC=m
+CONFIG_USB_M66592=m
+CONFIG_USB_AMD5536UDC=m
+CONFIG_USB_NET2272=m
+CONFIG_USB_NET2272_DMA=y
+CONFIG_USB_NET2280=m
+CONFIG_USB_GOKU=m
+CONFIG_USB_EG20T=m
+CONFIG_USB_DUMMY_HCD=m
+CONFIG_USB_GADGET_DUALSPEED=y
+CONFIG_USB_GADGET_SUPERSPEED=y
+# CONFIG_USB_ZERO is not set
+CONFIG_USB_AUDIO=m
+# CONFIG_GADGET_UAC1 is not set
+CONFIG_USB_ETH=m
+CONFIG_USB_ETH_RNDIS=y
+# CONFIG_USB_ETH_EEM is not set
+CONFIG_USB_G_NCM=m
+CONFIG_USB_GADGETFS=m
+CONFIG_USB_FUNCTIONFS=m
+CONFIG_USB_FUNCTIONFS_ETH=y
+CONFIG_USB_FUNCTIONFS_RNDIS=y
+CONFIG_USB_FUNCTIONFS_GENERIC=y
+CONFIG_USB_FILE_STORAGE=m
+# CONFIG_USB_FILE_STORAGE_TEST is not set
+# CONFIG_USB_MASS_STORAGE is not set
+CONFIG_USB_GADGET_TARGET=m
+CONFIG_USB_G_SERIAL=m
+CONFIG_USB_MIDI_GADGET=m
+CONFIG_USB_G_PRINTER=m
+# CONFIG_USB_CDC_COMPOSITE is not set
+# CONFIG_USB_G_NOKIA is not set
+# CONFIG_USB_G_ACM_MS is not set
+# CONFIG_USB_G_MULTI is not set
+CONFIG_USB_G_HID=m
+CONFIG_USB_G_DBGP=m
+# CONFIG_USB_G_DBGP_PRINTK is not set
+CONFIG_USB_G_DBGP_SERIAL=y
+CONFIG_USB_G_WEBCAM=m
+
+#
+# OTG and related infrastructure
+#
+CONFIG_USB_OTG_UTILS=y
+# CONFIG_USB_GPIO_VBUS is not set
+CONFIG_NOP_USB_XCEIV=m
+CONFIG_UWB=m
+CONFIG_UWB_HWA=m
+CONFIG_UWB_WHCI=m
+CONFIG_UWB_I1480U=m
+CONFIG_MMC=m
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_UNSAFE_RESUME is not set
+# CONFIG_MMC_CLKGATE is not set
+
+#
+# MMC/SD/SDIO Card Drivers
+#
+CONFIG_MMC_BLOCK=m
+CONFIG_MMC_BLOCK_MINORS=8
+CONFIG_MMC_BLOCK_BOUNCE=y
+CONFIG_SDIO_UART=m
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_SDHCI_PCI=m
+CONFIG_MMC_RICOH_MMC=y
+CONFIG_MMC_SDHCI_PLTFM=m
+CONFIG_MMC_WBSD=m
+CONFIG_MMC_TIFM_SD=m
+CONFIG_MMC_SDRICOH_CS=m
+CONFIG_MMC_CB710=m
+CONFIG_MMC_VIA_SDMMC=m
+CONFIG_MMC_VUB300=m
+CONFIG_MMC_USHC=m
+CONFIG_MEMSTICK=m
+# CONFIG_MEMSTICK_DEBUG is not set
+
+#
+# MemoryStick drivers
+#
+# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
+CONFIG_MSPRO_BLOCK=m
+
+#
+# MemoryStick Host Controller Drivers
+#
+CONFIG_MEMSTICK_TIFM_MS=m
+CONFIG_MEMSTICK_JMICRON_38X=m
+CONFIG_MEMSTICK_R592=m
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+
+#
+# LED drivers
+#
+CONFIG_LEDS_LM3530=m
+CONFIG_LEDS_LM3533=m
+CONFIG_LEDS_PCA9532=m
+# CONFIG_LEDS_PCA9532_GPIO is not set
+# CONFIG_LEDS_GPIO is not set
+CONFIG_LEDS_LP3944=m
+CONFIG_LEDS_LP5521=m
+CONFIG_LEDS_LP5523=m
+CONFIG_LEDS_CLEVO_MAIL=m
+CONFIG_LEDS_PCA955X=m
+CONFIG_LEDS_PCA9633=m
+CONFIG_LEDS_BD2802=m
+CONFIG_LEDS_INTEL_SS4200=m
+CONFIG_LEDS_LT3593=m
+CONFIG_LEDS_DELL_NETBOOKS=m
+CONFIG_LEDS_MC13783=m
+CONFIG_LEDS_TCA6507=m
+CONFIG_LEDS_LM3556=m
+CONFIG_LEDS_OT200=m
+CONFIG_LEDS_BLINKM=m
+CONFIG_LEDS_TRIGGERS=y
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGER_TIMER=m
+CONFIG_LEDS_TRIGGER_ONESHOT=m
+CONFIG_LEDS_TRIGGER_HEARTBEAT=m
+CONFIG_LEDS_TRIGGER_BACKLIGHT=m
+CONFIG_LEDS_TRIGGER_GPIO=m
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+CONFIG_LEDS_TRIGGER_TRANSIENT=m
+CONFIG_ACCESSIBILITY=y
+CONFIG_A11Y_BRAILLE_CONSOLE=y
+# CONFIG_INFINIBAND is not set
+CONFIG_EDAC=y
+
+#
+# Reporting subsystems
+#
+CONFIG_EDAC_LEGACY_SYSFS=y
+# CONFIG_EDAC_DEBUG is not set
+CONFIG_EDAC_DECODE_MCE=m
+CONFIG_EDAC_MCE_INJ=m
+CONFIG_EDAC_MM_EDAC=m
+CONFIG_EDAC_AMD76X=m
+CONFIG_EDAC_E7XXX=m
+CONFIG_EDAC_E752X=m
+CONFIG_EDAC_I82875P=m
+CONFIG_EDAC_I82975X=m
+CONFIG_EDAC_I3000=m
+CONFIG_EDAC_I3200=m
+CONFIG_EDAC_X38=m
+CONFIG_EDAC_I5400=m
+CONFIG_EDAC_I7CORE=m
+CONFIG_EDAC_I82860=m
+CONFIG_EDAC_R82600=m
+CONFIG_EDAC_I5000=m
+CONFIG_EDAC_I5100=m
+CONFIG_EDAC_I7300=m
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+CONFIG_RTC_INTF_DEV_UIE_EMUL=y
+CONFIG_RTC_DRV_TEST=m
+
+#
+# I2C RTC drivers
+#
+CONFIG_RTC_DRV_DS1307=m
+CONFIG_RTC_DRV_DS1374=m
+CONFIG_RTC_DRV_DS1672=m
+CONFIG_RTC_DRV_DS3232=m
+CONFIG_RTC_DRV_MAX6900=m
+CONFIG_RTC_DRV_RS5C372=m
+CONFIG_RTC_DRV_ISL1208=m
+CONFIG_RTC_DRV_ISL12022=m
+CONFIG_RTC_DRV_X1205=m
+CONFIG_RTC_DRV_PCF8563=m
+CONFIG_RTC_DRV_PCF8583=m
+CONFIG_RTC_DRV_M41T80=m
+CONFIG_RTC_DRV_M41T80_WDT=y
+CONFIG_RTC_DRV_BQ32K=m
+CONFIG_RTC_DRV_S35390A=m
+CONFIG_RTC_DRV_FM3130=m
+CONFIG_RTC_DRV_RX8581=m
+CONFIG_RTC_DRV_RX8025=m
+CONFIG_RTC_DRV_EM3027=m
+CONFIG_RTC_DRV_RV3029C2=m
+
+#
+# SPI RTC drivers
+#
+
+#
+# Platform RTC drivers
+#
+CONFIG_RTC_DRV_CMOS=y
+CONFIG_RTC_DRV_DS1286=m
+CONFIG_RTC_DRV_DS1511=m
+CONFIG_RTC_DRV_DS1553=m
+CONFIG_RTC_DRV_DS1742=m
+CONFIG_RTC_DRV_STK17TA8=m
+CONFIG_RTC_DRV_M48T86=m
+CONFIG_RTC_DRV_M48T35=m
+CONFIG_RTC_DRV_M48T59=m
+CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_BQ4802=m
+CONFIG_RTC_DRV_RP5C01=m
+CONFIG_RTC_DRV_V3020=m
+CONFIG_RTC_DRV_PCF50633=m
+
+#
+# on-CPU RTC drivers
+#
+CONFIG_RTC_DRV_MC13XXX=m
+CONFIG_DMADEVICES=y
+# CONFIG_DMADEVICES_DEBUG is not set
+
+#
+# DMA Devices
+#
+CONFIG_INTEL_MID_DMAC=m
+CONFIG_INTEL_IOATDMA=m
+CONFIG_TIMB_DMA=m
+CONFIG_PCH_DMA=m
+CONFIG_DMA_ENGINE=y
+
+#
+# DMA Clients
+#
+CONFIG_NET_DMA=y
+CONFIG_ASYNC_TX_DMA=y
+# CONFIG_DMATEST is not set
+CONFIG_DCA=m
+CONFIG_AUXDISPLAY=y
+CONFIG_KS0108=m
+CONFIG_KS0108_PORT=0x378
+CONFIG_KS0108_DELAY=2
+CONFIG_CFAG12864B=m
+CONFIG_CFAG12864B_RATE=20
+CONFIG_UIO=m
+CONFIG_UIO_CIF=m
+CONFIG_UIO_PDRV=m
+CONFIG_UIO_PDRV_GENIRQ=m
+CONFIG_UIO_AEC=m
+CONFIG_UIO_SERCOS3=m
+CONFIG_UIO_PCI_GENERIC=m
+CONFIG_UIO_NETX=m
+# CONFIG_VFIO is not set
+CONFIG_VIRTIO=y
+CONFIG_VIRTIO_RING=y
+
+#
+# Virtio drivers
+#
+CONFIG_VIRTIO_PCI=m
+CONFIG_VIRTIO_BALLOON=m
+CONFIG_VIRTIO_MMIO=m
+CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
+
+#
+# Microsoft Hyper-V guest support
+#
+CONFIG_HYPERV=m
+CONFIG_HYPERV_UTILS=m
+CONFIG_STAGING=y
+CONFIG_ET131X=m
+CONFIG_SLICOSS=m
+CONFIG_USBIP_CORE=m
+CONFIG_USBIP_VHCI_HCD=m
+CONFIG_USBIP_HOST=m
+# CONFIG_USBIP_DEBUG is not set
+CONFIG_W35UND=m
+CONFIG_PRISM2_USB=m
+CONFIG_ECHO=m
+CONFIG_COMEDI=m
+# CONFIG_COMEDI_DEBUG is not set
+CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048
+CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480
+CONFIG_COMEDI_MISC_DRIVERS=y
+CONFIG_COMEDI_KCOMEDILIB=m
+CONFIG_COMEDI_BOND=m
+CONFIG_COMEDI_TEST=m
+CONFIG_COMEDI_PARPORT=m
+CONFIG_COMEDI_SERIAL2002=m
+CONFIG_COMEDI_SKEL=m
+CONFIG_COMEDI_ISA_DRIVERS=y
+CONFIG_COMEDI_ACL7225B=m
+CONFIG_COMEDI_PCL711=m
+CONFIG_COMEDI_PCL724=m
+CONFIG_COMEDI_PCL725=m
+CONFIG_COMEDI_PCL726=m
+CONFIG_COMEDI_PCL730=m
+CONFIG_COMEDI_PCL812=m
+CONFIG_COMEDI_PCL816=m
+CONFIG_COMEDI_PCL818=m
+CONFIG_COMEDI_PCM3724=m
+CONFIG_COMEDI_PCM3730=m
+CONFIG_COMEDI_AMPLC_DIO200_ISA=m
+CONFIG_COMEDI_AMPLC_PC236_ISA=m
+CONFIG_COMEDI_AMPLC_PC263_ISA=m
+CONFIG_COMEDI_RTI800=m
+CONFIG_COMEDI_RTI802=m
+CONFIG_COMEDI_DAS16M1=m
+CONFIG_COMEDI_DAS08_ISA=m
+CONFIG_COMEDI_DAS16=m
+CONFIG_COMEDI_DAS800=m
+CONFIG_COMEDI_DAS1800=m
+CONFIG_COMEDI_DAS6402=m
+CONFIG_COMEDI_DT2801=m
+CONFIG_COMEDI_DT2811=m
+CONFIG_COMEDI_DT2814=m
+CONFIG_COMEDI_DT2815=m
+CONFIG_COMEDI_DT2817=m
+CONFIG_COMEDI_DT282X=m
+CONFIG_COMEDI_DMM32AT=m
+CONFIG_COMEDI_FL512=m
+CONFIG_COMEDI_AIO_AIO12_8=m
+CONFIG_COMEDI_AIO_IIRO_16=m
+CONFIG_COMEDI_C6XDIGIO=m
+CONFIG_COMEDI_MPC624=m
+CONFIG_COMEDI_ADQ12B=m
+CONFIG_COMEDI_NI_AT_A2150=m
+CONFIG_COMEDI_NI_AT_AO=m
+CONFIG_COMEDI_NI_ATMIO=m
+CONFIG_COMEDI_NI_ATMIO16D=m
+CONFIG_COMEDI_PCMAD=m
+CONFIG_COMEDI_PCMDA12=m
+CONFIG_COMEDI_PCMMIO=m
+CONFIG_COMEDI_PCMUIO=m
+CONFIG_COMEDI_MULTIQ3=m
+CONFIG_COMEDI_POC=m
+CONFIG_COMEDI_PCI_DRIVERS=y
+CONFIG_COMEDI_ADDI_APCI_035=m
+CONFIG_COMEDI_ADDI_APCI_1032=m
+CONFIG_COMEDI_ADDI_APCI_1500=m
+CONFIG_COMEDI_ADDI_APCI_1516=m
+CONFIG_COMEDI_ADDI_APCI_1564=m
+CONFIG_COMEDI_ADDI_APCI_16XX=m
+CONFIG_COMEDI_ADDI_APCI_2016=m
+CONFIG_COMEDI_ADDI_APCI_2032=m
+CONFIG_COMEDI_ADDI_APCI_2200=m
+CONFIG_COMEDI_ADDI_APCI_3001=m
+CONFIG_COMEDI_ADDI_APCI_3120=m
+CONFIG_COMEDI_ADDI_APCI_3501=m
+CONFIG_COMEDI_ADDI_APCI_3XXX=m
+CONFIG_COMEDI_ADL_PCI6208=m
+CONFIG_COMEDI_ADL_PCI7230=m
+CONFIG_COMEDI_ADL_PCI7296=m
+CONFIG_COMEDI_ADL_PCI7432=m
+CONFIG_COMEDI_ADL_PCI8164=m
+CONFIG_COMEDI_ADL_PCI9111=m
+CONFIG_COMEDI_ADL_PCI9118=m
+CONFIG_COMEDI_ADV_PCI1710=m
+CONFIG_COMEDI_ADV_PCI1723=m
+CONFIG_COMEDI_ADV_PCI_DIO=m
+CONFIG_COMEDI_AMPLC_DIO200_PCI=m
+CONFIG_COMEDI_AMPLC_PC236_PCI=m
+CONFIG_COMEDI_AMPLC_PC263_PCI=m
+CONFIG_COMEDI_AMPLC_PCI224=m
+CONFIG_COMEDI_AMPLC_PCI230=m
+CONFIG_COMEDI_CONTEC_PCI_DIO=m
+CONFIG_COMEDI_DAS08_PCI=m
+CONFIG_COMEDI_DT3000=m
+CONFIG_COMEDI_DYNA_PCI10XX=m
+CONFIG_COMEDI_UNIOXX5=m
+CONFIG_COMEDI_GSC_HPDI=m
+CONFIG_COMEDI_ICP_MULTI=m
+CONFIG_COMEDI_II_PCI20KC=m
+CONFIG_COMEDI_DAQBOARD2000=m
+CONFIG_COMEDI_JR3_PCI=m
+CONFIG_COMEDI_KE_COUNTER=m
+CONFIG_COMEDI_CB_PCIDAS64=m
+CONFIG_COMEDI_CB_PCIDAS=m
+CONFIG_COMEDI_CB_PCIDDA=m
+CONFIG_COMEDI_CB_PCIDIO=m
+# CONFIG_COMEDI_CB_PCIMDAS is not set
+CONFIG_COMEDI_CB_PCIMDDA=m
+CONFIG_COMEDI_ME4000=m
+CONFIG_COMEDI_ME_DAQ=m
+CONFIG_COMEDI_NI_6527=m
+CONFIG_COMEDI_NI_65XX=m
+CONFIG_COMEDI_NI_660X=m
+CONFIG_COMEDI_NI_670X=m
+CONFIG_COMEDI_NI_LABPC=m
+CONFIG_COMEDI_NI_PCIDIO=m
+CONFIG_COMEDI_NI_PCIMIO=m
+CONFIG_COMEDI_RTD520=m
+CONFIG_COMEDI_S526=m
+CONFIG_COMEDI_S626=m
+CONFIG_COMEDI_SSV_DNP=m
+CONFIG_COMEDI_MITE=m
+CONFIG_COMEDI_NI_TIOCMD=m
+CONFIG_COMEDI_PCMCIA_DRIVERS=y
+CONFIG_COMEDI_CB_DAS16_CS=m
+CONFIG_COMEDI_DAS08_CS=m
+CONFIG_COMEDI_NI_DAQ_700_CS=m
+CONFIG_COMEDI_NI_DAQ_DIO24_CS=m
+CONFIG_COMEDI_NI_LABPC_CS=m
+CONFIG_COMEDI_NI_MIO_CS=m
+CONFIG_COMEDI_QUATECH_DAQP_CS=m
+CONFIG_COMEDI_USB_DRIVERS=y
+CONFIG_COMEDI_DT9812=m
+CONFIG_COMEDI_USBDUX=m
+CONFIG_COMEDI_USBDUXFAST=m
+CONFIG_COMEDI_USBDUXSIGMA=m
+CONFIG_COMEDI_VMK80XX=m
+CONFIG_COMEDI_8255=m
+CONFIG_COMEDI_FC=m
+CONFIG_COMEDI_AMPLC_DIO200=m
+CONFIG_COMEDI_AMPLC_PC236=m
+CONFIG_COMEDI_AMPLC_PC263=m
+CONFIG_COMEDI_DAS08=m
+CONFIG_COMEDI_NI_TIO=m
+# CONFIG_FB_OLPC_DCON is not set
+CONFIG_ASUS_OLED=m
+# CONFIG_PANEL is not set
+CONFIG_R8187SE=m
+CONFIG_RTL8192U=m
+CONFIG_RTLLIB=m
+CONFIG_RTLLIB_CRYPTO_CCMP=m
+CONFIG_RTLLIB_CRYPTO_TKIP=m
+CONFIG_RTLLIB_CRYPTO_WEP=m
+CONFIG_RTL8192E=m
+CONFIG_R8712U=m
+CONFIG_RTS_PSTOR=m
+# CONFIG_RTS_PSTOR_DEBUG is not set
+CONFIG_RTS5139=m
+# CONFIG_RTS5139_DEBUG is not set
+# CONFIG_TRANZPORT is not set
+CONFIG_IDE_PHISON=m
+CONFIG_LINE6_USB=m
+# CONFIG_LINE6_USB_DEBUG is not set
+# CONFIG_LINE6_USB_DUMP_CTRL is not set
+# CONFIG_LINE6_USB_DUMP_MIDI is not set
+# CONFIG_LINE6_USB_DUMP_PCM is not set
+# CONFIG_LINE6_USB_RAW is not set
+# CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set
+CONFIG_USB_SERIAL_QUATECH2=m
+CONFIG_VT6655=m
+CONFIG_VT6656=m
+CONFIG_DX_SEP=m
+CONFIG_ZRAM=m
+# CONFIG_ZRAM_DEBUG is not set
+CONFIG_ZCACHE=y
+CONFIG_ZSMALLOC=y
+CONFIG_WLAGS49_H2=m
+CONFIG_WLAGS49_H25=m
+CONFIG_FB_SM7XX=m
+CONFIG_CRYSTALHD=m
+CONFIG_FB_XGI=m
+CONFIG_ACPI_QUICKSTART=m
+CONFIG_USB_ENESTORAGE=m
+CONFIG_BCM_WIMAX=m
+CONFIG_FT1000=m
+CONFIG_FT1000_USB=m
+CONFIG_FT1000_PCMCIA=m
+
+#
+# Speakup console speech
+#
+CONFIG_SPEAKUP=m
+CONFIG_SPEAKUP_SYNTH_ACNTSA=m
+CONFIG_SPEAKUP_SYNTH_ACNTPC=m
+CONFIG_SPEAKUP_SYNTH_APOLLO=m
+CONFIG_SPEAKUP_SYNTH_AUDPTR=m
+CONFIG_SPEAKUP_SYNTH_BNS=m
+CONFIG_SPEAKUP_SYNTH_DECTLK=m
+CONFIG_SPEAKUP_SYNTH_DECEXT=m
+CONFIG_SPEAKUP_SYNTH_DECPC=m
+CONFIG_SPEAKUP_SYNTH_DTLK=m
+CONFIG_SPEAKUP_SYNTH_KEYPC=m
+CONFIG_SPEAKUP_SYNTH_LTLK=m
+CONFIG_SPEAKUP_SYNTH_SOFT=m
+CONFIG_SPEAKUP_SYNTH_SPKOUT=m
+CONFIG_SPEAKUP_SYNTH_TXPRT=m
+CONFIG_SPEAKUP_SYNTH_DUMMY=m
+CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m
+CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m
+CONFIG_STAGING_MEDIA=y
+CONFIG_DVB_AS102=m
+CONFIG_DVB_CXD2099=m
+CONFIG_VIDEO_DT3155=m
+CONFIG_DT3155_CCIR=y
+CONFIG_DT3155_STREAMING=y
+CONFIG_EASYCAP=m
+# CONFIG_EASYCAP_DEBUG is not set
+CONFIG_VIDEO_GO7007=m
+CONFIG_VIDEO_GO7007_USB=m
+# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set
+CONFIG_VIDEO_GO7007_OV7640=m
+CONFIG_VIDEO_GO7007_SAA7113=m
+CONFIG_VIDEO_GO7007_SAA7115=m
+CONFIG_VIDEO_GO7007_TW9903=m
+CONFIG_VIDEO_GO7007_UDA1342=m
+CONFIG_VIDEO_GO7007_SONY_TUNER=m
+CONFIG_VIDEO_GO7007_TW2804=m
+CONFIG_SOLO6X10=m
+CONFIG_LIRC_STAGING=y
+CONFIG_LIRC_BT829=m
+CONFIG_LIRC_IGORPLUGUSB=m
+CONFIG_LIRC_IMON=m
+CONFIG_LIRC_PARALLEL=m
+CONFIG_LIRC_SASEM=m
+CONFIG_LIRC_SERIAL=m
+CONFIG_LIRC_SERIAL_TRANSMITTER=y
+CONFIG_LIRC_SIR=m
+CONFIG_LIRC_TTUSBIR=m
+CONFIG_LIRC_ZILOG=m
+
+#
+# Android
+#
+# CONFIG_ANDROID is not set
+# CONFIG_PHONE is not set
+CONFIG_USB_WPAN_HCD=m
+CONFIG_IPACK_BUS=m
+CONFIG_BOARD_TPCI200=m
+CONFIG_SERIAL_IPOCTAL=m
+CONFIG_WIMAX_GDM72XX=m
+CONFIG_WIMAX_GDM72XX_QOS=y
+CONFIG_WIMAX_GDM72XX_K_MODE=y
+CONFIG_WIMAX_GDM72XX_WIMAX2=y
+CONFIG_WIMAX_GDM72XX_USB=y
+# CONFIG_WIMAX_GDM72XX_SDIO is not set
+CONFIG_WIMAX_GDM72XX_USB_PM=y
+CONFIG_CSR_WIFI=m
+CONFIG_X86_PLATFORM_DEVICES=y
+CONFIG_ACER_WMI=m
+CONFIG_ACERHDF=m
+CONFIG_ASUS_LAPTOP=m
+CONFIG_DELL_LAPTOP=m
+CONFIG_DELL_WMI=m
+CONFIG_DELL_WMI_AIO=m
+CONFIG_FUJITSU_LAPTOP=m
+# CONFIG_FUJITSU_LAPTOP_DEBUG is not set
+CONFIG_FUJITSU_TABLET=m
+CONFIG_AMILO_RFKILL=m
+CONFIG_TC1100_WMI=m
+CONFIG_HP_ACCEL=m
+CONFIG_HP_WMI=m
+CONFIG_MSI_LAPTOP=m
+CONFIG_PANASONIC_LAPTOP=m
+CONFIG_COMPAL_LAPTOP=m
+CONFIG_SONY_LAPTOP=m
+# CONFIG_SONYPI_COMPAT is not set
+CONFIG_IDEAPAD_LAPTOP=m
+CONFIG_THINKPAD_ACPI=m
+CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y
+# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set
+# CONFIG_THINKPAD_ACPI_DEBUG is not set
+# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
+CONFIG_THINKPAD_ACPI_VIDEO=y
+CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
+CONFIG_SENSORS_HDAPS=m
+CONFIG_INTEL_MENLOW=m
+CONFIG_EEEPC_LAPTOP=m
+CONFIG_ASUS_WMI=m
+CONFIG_ASUS_NB_WMI=m
+CONFIG_EEEPC_WMI=m
+CONFIG_ACPI_WMI=m
+CONFIG_MSI_WMI=m
+CONFIG_TOPSTAR_LAPTOP=m
+CONFIG_ACPI_TOSHIBA=m
+CONFIG_TOSHIBA_BT_RFKILL=m
+CONFIG_ACPI_CMPC=m
+CONFIG_INTEL_IPS=m
+CONFIG_IBM_RTL=m
+CONFIG_XO1_RFKILL=m
+CONFIG_XO15_EBOOK=m
+CONFIG_SAMSUNG_LAPTOP=m
+CONFIG_MXM_WMI=m
+CONFIG_INTEL_OAKTRAIL=m
+CONFIG_SAMSUNG_Q10=m
+CONFIG_APPLE_GMUX=m
+
+#
+# Hardware Spinlock drivers
+#
+CONFIG_CLKSRC_I8253=y
+CONFIG_CLKEVT_I8253=y
+CONFIG_I8253_LOCK=y
+CONFIG_CLKBLD_I8253=y
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+CONFIG_OF_IOMMU=y
+CONFIG_DMAR_TABLE=y
+CONFIG_INTEL_IOMMU=y
+# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
+CONFIG_INTEL_IOMMU_FLOPPY_WA=y
+
+#
+# Remoteproc drivers (EXPERIMENTAL)
+#
+
+#
+# Rpmsg drivers (EXPERIMENTAL)
+#
+CONFIG_VIRT_DRIVERS=y
+# CONFIG_PM_DEVFREQ is not set
+CONFIG_EXTCON=m
+
+#
+# Extcon Device Drivers
+#
+CONFIG_EXTCON_GPIO=m
+CONFIG_EXTCON_ARIZONA=m
+CONFIG_MEMORY=y
+# CONFIG_IIO is not set
+# CONFIG_VME_BUS is not set
+# CONFIG_PWM is not set
+
+#
+# Firmware Drivers
+#
+CONFIG_EDD=m
+# CONFIG_EDD_OFF is not set
+CONFIG_FIRMWARE_MEMMAP=y
+CONFIG_EFI_VARS=m
+CONFIG_DELL_RBU=m
+CONFIG_DCDBAS=m
+CONFIG_DMIID=y
+CONFIG_DMI_SYSFS=m
+CONFIG_ISCSI_IBFT_FIND=y
+CONFIG_ISCSI_IBFT=m
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+#
+# File systems
+#
+CONFIG_DCACHE_WORD_ACCESS=y
+# CONFIG_EXT2_FS is not set
+# CONFIG_EXT3_FS is not set
+CONFIG_EXT4_FS=m
+CONFIG_EXT4_USE_FOR_EXT23=y
+CONFIG_EXT4_FS_XATTR=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD2=m
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=m
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+CONFIG_REISERFS_PROC_INFO=y
+CONFIG_REISERFS_FS_XATTR=y
+CONFIG_REISERFS_FS_POSIX_ACL=y
+CONFIG_REISERFS_FS_SECURITY=y
+CONFIG_JFS_FS=m
+CONFIG_JFS_POSIX_ACL=y
+CONFIG_JFS_SECURITY=y
+# CONFIG_JFS_DEBUG is not set
+CONFIG_JFS_STATISTICS=y
+CONFIG_XFS_FS=m
+CONFIG_XFS_QUOTA=y
+CONFIG_XFS_POSIX_ACL=y
+CONFIG_XFS_RT=y
+# CONFIG_XFS_DEBUG is not set
+CONFIG_GFS2_FS=m
+CONFIG_GFS2_FS_LOCKING_DLM=y
+CONFIG_OCFS2_FS=m
+CONFIG_OCFS2_FS_O2CB=m
+CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
+CONFIG_OCFS2_FS_STATS=y
+# CONFIG_OCFS2_DEBUG_MASKLOG is not set
+# CONFIG_OCFS2_DEBUG_FS is not set
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
+CONFIG_NILFS2_FS=m
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
+CONFIG_FILE_LOCKING=y
+CONFIG_FSNOTIFY=y
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
+CONFIG_QUOTA=y
+CONFIG_QUOTA_NETLINK_INTERFACE=y
+# CONFIG_PRINT_QUOTA_WARNING is not set
+# CONFIG_QUOTA_DEBUG is not set
+CONFIG_QUOTA_TREE=m
+CONFIG_QFMT_V1=m
+CONFIG_QFMT_V2=m
+CONFIG_QUOTACTL=y
+CONFIG_AUTOFS4_FS=y
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+CONFIG_GENERIC_ACL=y
+
+#
+# Caches
+#
+CONFIG_FSCACHE=m
+CONFIG_FSCACHE_STATS=y
+CONFIG_FSCACHE_HISTOGRAM=y
+# CONFIG_FSCACHE_DEBUG is not set
+# CONFIG_FSCACHE_OBJECT_LIST is not set
+CONFIG_CACHEFILES=m
+# CONFIG_CACHEFILES_DEBUG is not set
+# CONFIG_CACHEFILES_HISTOGRAM is not set
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+CONFIG_UDF_FS=m
+CONFIG_UDF_NLS=y
+
+#
+# DOS/FAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
+CONFIG_NTFS_FS=m
+# CONFIG_NTFS_DEBUG is not set
+CONFIG_NTFS_RW=y
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+CONFIG_PROC_SYSCTL=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
+CONFIG_HUGETLBFS=y
+CONFIG_HUGETLB_PAGE=y
+CONFIG_CONFIGFS_FS=m
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ADFS_FS is not set
+CONFIG_AFFS_FS=m
+CONFIG_ECRYPT_FS=m
+CONFIG_HFS_FS=m
+CONFIG_HFSPLUS_FS=m
+CONFIG_BEFS_FS=m
+# CONFIG_BEFS_DEBUG is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+CONFIG_JFFS2_FS=m
+CONFIG_JFFS2_FS_DEBUG=0
+CONFIG_JFFS2_FS_WRITEBUFFER=y
+# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
+# CONFIG_JFFS2_SUMMARY is not set
+CONFIG_JFFS2_FS_XATTR=y
+CONFIG_JFFS2_FS_POSIX_ACL=y
+CONFIG_JFFS2_FS_SECURITY=y
+# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
+CONFIG_JFFS2_ZLIB=y
+# CONFIG_JFFS2_LZO is not set
+CONFIG_JFFS2_RTIME=y
+# CONFIG_JFFS2_RUBIN is not set
+CONFIG_UBIFS_FS=m
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_LOGFS=m
+CONFIG_CRAMFS=m
+CONFIG_SQUASHFS=m
+CONFIG_SQUASHFS_XATTR=y
+CONFIG_SQUASHFS_ZLIB=y
+CONFIG_SQUASHFS_LZO=y
+CONFIG_SQUASHFS_XZ=y
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+CONFIG_MINIX_FS=m
+CONFIG_OMFS_FS=m
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+CONFIG_PSTORE=y
+# CONFIG_PSTORE_CONSOLE is not set
+# CONFIG_PSTORE_FTRACE is not set
+CONFIG_PSTORE_RAM=m
+# CONFIG_SYSV_FS is not set
+CONFIG_UFS_FS=m
+# CONFIG_UFS_FS_WRITE is not set
+# CONFIG_UFS_DEBUG is not set
+CONFIG_EXOFS_FS=m
+# CONFIG_EXOFS_DEBUG is not set
+CONFIG_ORE=m
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=m
+CONFIG_NFS_V2=m
+CONFIG_NFS_V3=m
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=m
+# CONFIG_NFS_SWAP is not set
+# CONFIG_NFS_V4_1 is not set
+CONFIG_NFS_FSCACHE=y
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFSD=m
+CONFIG_NFSD_V2_ACL=y
+CONFIG_NFSD_V3=y
+CONFIG_NFSD_V3_ACL=y
+CONFIG_NFSD_V4=y
+# CONFIG_NFSD_FAULT_INJECTION is not set
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_ACL_SUPPORT=m
+CONFIG_NFS_COMMON=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+CONFIG_RPCSEC_GSS_KRB5=m
+# CONFIG_SUNRPC_DEBUG is not set
+CONFIG_CEPH_FS=m
+CONFIG_CIFS=m
+CONFIG_CIFS_STATS=y
+# CONFIG_CIFS_STATS2 is not set
+CONFIG_CIFS_WEAK_PW_HASH=y
+CONFIG_CIFS_UPCALL=y
+CONFIG_CIFS_XATTR=y
+CONFIG_CIFS_POSIX=y
+# CONFIG_CIFS_DEBUG2 is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_FSCACHE=y
+CONFIG_CIFS_ACL=y
+CONFIG_NCP_FS=m
+# CONFIG_NCPFS_PACKET_SIGNING is not set
+# CONFIG_NCPFS_IOCTL_LOCKING is not set
+# CONFIG_NCPFS_STRONG is not set
+CONFIG_NCPFS_NFS_NS=y
+CONFIG_NCPFS_OS2_NS=y
+CONFIG_NCPFS_SMALLDOS=y
+CONFIG_NCPFS_NLS=y
+# CONFIG_NCPFS_EXTRAS is not set
+CONFIG_CODA_FS=m
+CONFIG_AFS_FS=m
+# CONFIG_AFS_DEBUG is not set
+CONFIG_AFS_FSCACHE=y
+CONFIG_9P_FS=m
+CONFIG_9P_FSCACHE=y
+CONFIG_9P_FS_POSIX_ACL=y
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="utf8"
+CONFIG_NLS_CODEPAGE_437=m
+CONFIG_NLS_CODEPAGE_737=m
+CONFIG_NLS_CODEPAGE_775=m
+CONFIG_NLS_CODEPAGE_850=m
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+CONFIG_NLS_CODEPAGE_857=m
+CONFIG_NLS_CODEPAGE_860=m
+CONFIG_NLS_CODEPAGE_861=m
+CONFIG_NLS_CODEPAGE_862=m
+CONFIG_NLS_CODEPAGE_863=m
+CONFIG_NLS_CODEPAGE_864=m
+CONFIG_NLS_CODEPAGE_865=m
+CONFIG_NLS_CODEPAGE_866=m
+CONFIG_NLS_CODEPAGE_869=m
+CONFIG_NLS_CODEPAGE_936=m
+CONFIG_NLS_CODEPAGE_950=m
+CONFIG_NLS_CODEPAGE_932=m
+CONFIG_NLS_CODEPAGE_949=m
+CONFIG_NLS_CODEPAGE_874=m
+CONFIG_NLS_ISO8859_8=m
+CONFIG_NLS_CODEPAGE_1250=m
+CONFIG_NLS_CODEPAGE_1251=m
+CONFIG_NLS_ASCII=m
+CONFIG_NLS_ISO8859_1=y
+CONFIG_NLS_ISO8859_2=m
+CONFIG_NLS_ISO8859_3=m
+CONFIG_NLS_ISO8859_4=m
+CONFIG_NLS_ISO8859_5=m
+CONFIG_NLS_ISO8859_6=m
+CONFIG_NLS_ISO8859_7=m
+CONFIG_NLS_ISO8859_9=m
+CONFIG_NLS_ISO8859_13=m
+CONFIG_NLS_ISO8859_14=m
+CONFIG_NLS_ISO8859_15=m
+CONFIG_NLS_KOI8_R=m
+CONFIG_NLS_KOI8_U=m
+CONFIG_NLS_MAC_ROMAN=m
+CONFIG_NLS_MAC_CELTIC=m
+CONFIG_NLS_MAC_CENTEURO=m
+CONFIG_NLS_MAC_CROATIAN=m
+CONFIG_NLS_MAC_CYRILLIC=m
+CONFIG_NLS_MAC_GAELIC=m
+CONFIG_NLS_MAC_GREEK=m
+CONFIG_NLS_MAC_ICELAND=m
+CONFIG_NLS_MAC_INUIT=m
+CONFIG_NLS_MAC_ROMANIAN=m
+CONFIG_NLS_MAC_TURKISH=m
+CONFIG_NLS_UTF8=m
+CONFIG_DLM=m
+# CONFIG_DLM_DEBUG is not set
+
+#
+# Kernel hacking
+#
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_PRINTK_TIME=y
+CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
+CONFIG_ENABLE_WARN_DEPRECATED=y
+# CONFIG_ENABLE_MUST_CHECK is not set
+CONFIG_FRAME_WARN=1024
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_STRIP_ASM_SYMS=y
+# CONFIG_READABLE_ASM is not set
+CONFIG_UNUSED_SYMBOLS=y
+CONFIG_DEBUG_FS=y
+# CONFIG_HEADERS_CHECK is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_DEBUG_KERNEL=y
+# CONFIG_DEBUG_SHIRQ is not set
+CONFIG_LOCKUP_DETECTOR=y
+CONFIG_HARDLOCKUP_DETECTOR=y
+# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
+CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0
+# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
+CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_DETECT_HUNG_TASK=y
+CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
+# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
+CONFIG_SCHED_DEBUG=y
+CONFIG_SCHEDSTATS=y
+CONFIG_TIMER_STATS=y
+# CONFIG_DEBUG_OBJECTS is not set
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_SLUB_STATS is not set
+# CONFIG_DEBUG_KMEMLEAK is not set
+# CONFIG_DEBUG_PREEMPT is not set
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_RT_MUTEX_TESTER is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+CONFIG_DEBUG_MUTEXES=y
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_SPARSE_RCU_POINTER is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_ATOMIC_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_DEBUG_KOBJECT is not set
+# CONFIG_DEBUG_HIGHMEM is not set
+CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_DEBUG_INFO is not set
+# CONFIG_DEBUG_VM is not set
+# CONFIG_DEBUG_VIRTUAL is not set
+# CONFIG_DEBUG_WRITECOUNT is not set
+CONFIG_DEBUG_MEMORY_INIT=y
+# CONFIG_DEBUG_LIST is not set
+# CONFIG_TEST_LIST_SORT is not set
+# CONFIG_DEBUG_SG is not set
+# CONFIG_DEBUG_NOTIFIERS is not set
+# CONFIG_DEBUG_CREDENTIALS is not set
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+# CONFIG_BOOT_PRINTK_DELAY is not set
+# CONFIG_RCU_TORTURE_TEST is not set
+CONFIG_RCU_CPU_STALL_TIMEOUT=60
+# CONFIG_RCU_CPU_STALL_VERBOSE is not set
+# CONFIG_RCU_CPU_STALL_INFO is not set
+# CONFIG_RCU_TRACE is not set
+# CONFIG_KPROBES_SANITY_TEST is not set
+# CONFIG_BACKTRACE_SELF_TEST is not set
+# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
+# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
+# CONFIG_DEBUG_PER_CPU_MAPS is not set
+CONFIG_LKDTM=m
+# CONFIG_NOTIFIER_ERROR_INJECTION is not set
+# CONFIG_FAULT_INJECTION is not set
+# CONFIG_DEBUG_PAGEALLOC is not set
+CONFIG_USER_STACKTRACE_SUPPORT=y
+CONFIG_NOP_TRACER=y
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
+CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_TRACER_MAX_TRACE=y
+CONFIG_RING_BUFFER=y
+CONFIG_EVENT_TRACING=y
+CONFIG_EVENT_POWER_TRACING_DEPRECATED=y
+CONFIG_CONTEXT_SWITCH_TRACER=y
+CONFIG_RING_BUFFER_ALLOW_SWAP=y
+CONFIG_TRACING=y
+CONFIG_GENERIC_TRACER=y
+CONFIG_TRACING_SUPPORT=y
+CONFIG_FTRACE=y
+CONFIG_FUNCTION_TRACER=y
+CONFIG_FUNCTION_GRAPH_TRACER=y
+# CONFIG_IRQSOFF_TRACER is not set
+# CONFIG_PREEMPT_TRACER is not set
+CONFIG_SCHED_TRACER=y
+CONFIG_FTRACE_SYSCALLS=y
+CONFIG_BRANCH_PROFILE_NONE=y
+# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
+# CONFIG_PROFILE_ALL_BRANCHES is not set
+CONFIG_STACK_TRACER=y
+CONFIG_BLK_DEV_IO_TRACE=y
+CONFIG_KPROBE_EVENT=y
+CONFIG_UPROBE_EVENT=y
+CONFIG_PROBE_EVENTS=y
+CONFIG_DYNAMIC_FTRACE=y
+CONFIG_FUNCTION_PROFILER=y
+CONFIG_FTRACE_MCOUNT_RECORD=y
+# CONFIG_FTRACE_STARTUP_TEST is not set
+CONFIG_MMIOTRACE=y
+# CONFIG_MMIOTRACE_TEST is not set
+CONFIG_RING_BUFFER_BENCHMARK=m
+# CONFIG_DYNAMIC_DEBUG is not set
+# CONFIG_DMA_API_DEBUG is not set
+# CONFIG_ATOMIC64_SELFTEST is not set
+CONFIG_ASYNC_RAID6_TEST=m
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_ARCH_KGDB=y
+# CONFIG_KGDB is not set
+CONFIG_HAVE_ARCH_KMEMCHECK=y
+CONFIG_TEST_KSTRTOX=m
+CONFIG_STRICT_DEVMEM=y
+CONFIG_X86_VERBOSE_BOOTUP=y
+CONFIG_EARLY_PRINTK=y
+# CONFIG_EARLY_PRINTK_DBGP is not set
+# CONFIG_DEBUG_STACKOVERFLOW is not set
+# CONFIG_X86_PTDUMP is not set
+# CONFIG_DEBUG_NX_TEST is not set
+CONFIG_DOUBLEFAULT=y
+# CONFIG_DEBUG_TLBFLUSH is not set
+# CONFIG_IOMMU_STRESS is not set
+CONFIG_HAVE_MMIOTRACE_SUPPORT=y
+# CONFIG_X86_DECODER_SELFTEST is not set
+CONFIG_IO_DELAY_TYPE_0X80=0
+CONFIG_IO_DELAY_TYPE_0XED=1
+CONFIG_IO_DELAY_TYPE_UDELAY=2
+CONFIG_IO_DELAY_TYPE_NONE=3
+CONFIG_IO_DELAY_0X80=y
+# CONFIG_IO_DELAY_0XED is not set
+# CONFIG_IO_DELAY_UDELAY is not set
+# CONFIG_IO_DELAY_NONE is not set
+CONFIG_DEFAULT_IO_DELAY_TYPE=0
+# CONFIG_DEBUG_BOOT_PARAMS is not set
+# CONFIG_CPA_DEBUG is not set
+# CONFIG_OPTIMIZE_INLINING is not set
+# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
+# CONFIG_DEBUG_NMI_SELFTEST is not set
+
+#
+# Security options
+#
+
+#
+# Grsecurity
+#
+CONFIG_ARCH_TRACK_EXEC_LIMIT=y
+CONFIG_PAX_USERCOPY_SLABS=y
+CONFIG_GRKERNSEC=y
+# CONFIG_GRKERNSEC_CONFIG_AUTO is not set
+CONFIG_GRKERNSEC_CONFIG_CUSTOM=y
+CONFIG_GRKERNSEC_PROC_GID=9999
+CONFIG_GRKERNSEC_TPE_TRUSTED_GID=9999
+CONFIG_GRKERNSEC_SYMLINKOWN_GID=33
+
+#
+# Customize Configuration
+#
+
+#
+# PaX
+#
+CONFIG_PAX=y
+
+#
+# PaX Control
+#
+# CONFIG_PAX_SOFTMODE is not set
+# CONFIG_PAX_EI_PAX is not set
+CONFIG_PAX_PT_PAX_FLAGS=y
+CONFIG_PAX_XATTR_PAX_FLAGS=y
+# CONFIG_PAX_NO_ACL_FLAGS is not set
+CONFIG_PAX_HAVE_ACL_FLAGS=y
+# CONFIG_PAX_HOOK_ACL_FLAGS is not set
+
+#
+# Non-executable pages
+#
+CONFIG_PAX_NOEXEC=y
+CONFIG_PAX_PAGEEXEC=y
+CONFIG_PAX_SEGMEXEC=y
+CONFIG_PAX_EMUTRAMP=y
+CONFIG_PAX_MPROTECT=y
+# CONFIG_PAX_MPROTECT_COMPAT is not set
+CONFIG_PAX_ELFRELOCS=y
+CONFIG_PAX_KERNEXEC=y
+CONFIG_PAX_KERNEXEC_PLUGIN_METHOD=""
+CONFIG_PAX_KERNEXEC_MODULE_TEXT=4
+
+#
+# Address Space Layout Randomization
+#
+CONFIG_PAX_ASLR=y
+CONFIG_PAX_RANDKSTACK=y
+CONFIG_PAX_RANDUSTACK=y
+CONFIG_PAX_RANDMMAP=y
+
+#
+# Miscellaneous hardening features
+#
+CONFIG_PAX_MEMORY_STACKLEAK=y
+CONFIG_PAX_MEMORY_UDEREF=y
+CONFIG_PAX_REFCOUNT=y
+CONFIG_PAX_USERCOPY=y
+# CONFIG_PAX_SIZE_OVERFLOW is not set
+# CONFIG_PAX_LATENT_ENTROPY is not set
+
+#
+# Memory Protections
+#
+CONFIG_GRKERNSEC_KMEM=y
+CONFIG_GRKERNSEC_VM86=y
+# CONFIG_GRKERNSEC_IO is not set
+CONFIG_GRKERNSEC_JIT_HARDEN=y
+CONFIG_GRKERNSEC_PROC_MEMMAP=y
+CONFIG_GRKERNSEC_BRUTE=y
+CONFIG_GRKERNSEC_MODHARDEN=y
+CONFIG_GRKERNSEC_HIDESYM=y
+CONFIG_GRKERNSEC_KERN_LOCKOUT=y
+
+#
+# Role Based Access Control Options
+#
+# CONFIG_GRKERNSEC_NO_RBAC is not set
+CONFIG_GRKERNSEC_ACL_HIDEKERN=y
+CONFIG_GRKERNSEC_ACL_MAXTRIES=3
+CONFIG_GRKERNSEC_ACL_TIMEOUT=30
+
+#
+# Filesystem Protections
+#
+CONFIG_GRKERNSEC_PROC=y
+# CONFIG_GRKERNSEC_PROC_USER is not set
+CONFIG_GRKERNSEC_PROC_USERGROUP=y
+CONFIG_GRKERNSEC_PROC_ADD=y
+CONFIG_GRKERNSEC_LINK=y
+CONFIG_GRKERNSEC_SYMLINKOWN=y
+CONFIG_GRKERNSEC_FIFO=y
+CONFIG_GRKERNSEC_SYSFS_RESTRICT=y
+CONFIG_GRKERNSEC_ROFS=y
+CONFIG_GRKERNSEC_CHROOT=y
+CONFIG_GRKERNSEC_CHROOT_MOUNT=y
+CONFIG_GRKERNSEC_CHROOT_DOUBLE=y
+CONFIG_GRKERNSEC_CHROOT_PIVOT=y
+CONFIG_GRKERNSEC_CHROOT_CHDIR=y
+CONFIG_GRKERNSEC_CHROOT_CHMOD=y
+CONFIG_GRKERNSEC_CHROOT_FCHDIR=y
+CONFIG_GRKERNSEC_CHROOT_MKNOD=y
+CONFIG_GRKERNSEC_CHROOT_SHMAT=y
+CONFIG_GRKERNSEC_CHROOT_UNIX=y
+CONFIG_GRKERNSEC_CHROOT_FINDTASK=y
+CONFIG_GRKERNSEC_CHROOT_NICE=y
+CONFIG_GRKERNSEC_CHROOT_SYSCTL=y
+CONFIG_GRKERNSEC_CHROOT_CAPS=y
+
+#
+# Kernel Auditing
+#
+# CONFIG_GRKERNSEC_AUDIT_GROUP is not set
+# CONFIG_GRKERNSEC_EXECLOG is not set
+CONFIG_GRKERNSEC_RESLOG=y
+# CONFIG_GRKERNSEC_CHROOT_EXECLOG is not set
+CONFIG_GRKERNSEC_AUDIT_PTRACE=y
+# CONFIG_GRKERNSEC_AUDIT_CHDIR is not set
+CONFIG_GRKERNSEC_AUDIT_MOUNT=y
+CONFIG_GRKERNSEC_SIGNAL=y
+CONFIG_GRKERNSEC_FORKFAIL=y
+CONFIG_GRKERNSEC_TIME=y
+CONFIG_GRKERNSEC_PROC_IPADDR=y
+CONFIG_GRKERNSEC_RWXMAP_LOG=y
+# CONFIG_GRKERNSEC_AUDIT_TEXTREL is not set
+
+#
+# Executable Protections
+#
+CONFIG_GRKERNSEC_DMESG=y
+CONFIG_GRKERNSEC_HARDEN_PTRACE=y
+CONFIG_GRKERNSEC_PTRACE_READEXEC=y
+CONFIG_GRKERNSEC_SETXID=y
+CONFIG_GRKERNSEC_TPE=y
+CONFIG_GRKERNSEC_TPE_ALL=y
+CONFIG_GRKERNSEC_TPE_INVERT=y
+CONFIG_GRKERNSEC_TPE_GID=9999
+
+#
+# Network Protections
+#
+CONFIG_GRKERNSEC_RANDNET=y
+CONFIG_GRKERNSEC_BLACKHOLE=y
+# CONFIG_GRKERNSEC_SOCKET is not set
+
+#
+# Sysctl Support
+#
+CONFIG_GRKERNSEC_SYSCTL=y
+# CONFIG_GRKERNSEC_SYSCTL_DISTRO is not set
+CONFIG_GRKERNSEC_SYSCTL_ON=y
+
+#
+# Logging Options
+#
+CONFIG_GRKERNSEC_FLOODTIME=10
+CONFIG_GRKERNSEC_FLOODBURST=6
+CONFIG_KEYS=y
+CONFIG_TRUSTED_KEYS=m
+CONFIG_ENCRYPTED_KEYS=m
+# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
+CONFIG_SECURITY=y
+CONFIG_SECURITYFS=y
+CONFIG_SECURITY_NETWORK=y
+# CONFIG_SECURITY_NETWORK_XFRM is not set
+CONFIG_SECURITY_PATH=y
+# CONFIG_INTEL_TXT is not set
+# CONFIG_SECURITY_SELINUX is not set
+# CONFIG_SECURITY_SMACK is not set
+CONFIG_SECURITY_TOMOYO=y
+CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048
+CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024
+# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set
+CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init"
+CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init"
+CONFIG_SECURITY_APPARMOR=y
+CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=0
+# CONFIG_IMA is not set
+# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
+# CONFIG_DEFAULT_SECURITY_APPARMOR is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_DEFAULT_SECURITY=""
+CONFIG_XOR_BLOCKS=m
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
+CONFIG_ASYNC_PQ=m
+CONFIG_ASYNC_RAID6_RECOV=m
+CONFIG_ASYNC_TX_DISABLE_PQ_VAL_DMA=y
+CONFIG_ASYNC_TX_DISABLE_XOR_VAL_DMA=y
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_BLKCIPHER=m
+CONFIG_CRYPTO_BLKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=m
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_PCOMP=m
+CONFIG_CRYPTO_PCOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+CONFIG_CRYPTO_USER=m
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+CONFIG_CRYPTO_GF128MUL=m
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_PCRYPT=m
+CONFIG_CRYPTO_WORKQUEUE=y
+CONFIG_CRYPTO_CRYPTD=m
+CONFIG_CRYPTO_AUTHENC=m
+CONFIG_CRYPTO_TEST=m
+CONFIG_CRYPTO_ABLK_HELPER_X86=m
+CONFIG_CRYPTO_GLUE_HELPER_X86=m
+
+#
+# Authenticated Encryption with Associated Data
+#
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_SEQIV=m
+
+#
+# Block modes
+#
+CONFIG_CRYPTO_CBC=m
+CONFIG_CRYPTO_CTR=m
+CONFIG_CRYPTO_CTS=m
+CONFIG_CRYPTO_ECB=m
+CONFIG_CRYPTO_LRW=m
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_XTS=m
+
+#
+# Hash modes
+#
+CONFIG_CRYPTO_HMAC=m
+CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
+
+#
+# Digest
+#
+CONFIG_CRYPTO_CRC32C=m
+CONFIG_CRYPTO_CRC32C_INTEL=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=m
+CONFIG_CRYPTO_MICHAEL_MIC=m
+CONFIG_CRYPTO_RMD128=m
+CONFIG_CRYPTO_RMD160=m
+CONFIG_CRYPTO_RMD256=m
+CONFIG_CRYPTO_RMD320=m
+CONFIG_CRYPTO_SHA1=m
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=m
+CONFIG_CRYPTO_TGR192=m
+CONFIG_CRYPTO_WP512=m
+
+#
+# Ciphers
+#
+CONFIG_CRYPTO_AES=m
+CONFIG_CRYPTO_AES_586=m
+CONFIG_CRYPTO_AES_NI_INTEL=m
+CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_ARC4=m
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_BLOWFISH_COMMON=m
+CONFIG_CRYPTO_CAMELLIA=m
+CONFIG_CRYPTO_CAST5=m
+CONFIG_CRYPTO_CAST6=m
+CONFIG_CRYPTO_DES=m
+CONFIG_CRYPTO_FCRYPT=m
+CONFIG_CRYPTO_KHAZAD=m
+CONFIG_CRYPTO_SALSA20=m
+CONFIG_CRYPTO_SALSA20_586=m
+CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_SERPENT_SSE2_586=m
+CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+CONFIG_CRYPTO_TWOFISH_586=m
+
+#
+# Compression
+#
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_ZLIB=m
+CONFIG_CRYPTO_LZO=y
+
+#
+# Random Number Generation
+#
+CONFIG_CRYPTO_ANSI_CPRNG=m
+CONFIG_CRYPTO_USER_API=m
+CONFIG_CRYPTO_USER_API_HASH=m
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+CONFIG_CRYPTO_HW=y
+CONFIG_CRYPTO_DEV_PADLOCK=m
+CONFIG_CRYPTO_DEV_PADLOCK_AES=m
+CONFIG_CRYPTO_DEV_PADLOCK_SHA=m
+CONFIG_CRYPTO_DEV_GEODE=m
+CONFIG_CRYPTO_DEV_HIFN_795X=m
+CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y
+CONFIG_HAVE_KVM=y
+CONFIG_HAVE_KVM_IRQCHIP=y
+CONFIG_HAVE_KVM_EVENTFD=y
+CONFIG_KVM_APIC_ARCHITECTURE=y
+CONFIG_KVM_MMIO=y
+CONFIG_KVM_ASYNC_PF=y
+CONFIG_HAVE_KVM_MSI=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=m
+CONFIG_KVM_INTEL=m
+CONFIG_KVM_AMD=m
+CONFIG_KVM_MMU_AUDIT=y
+CONFIG_VHOST_NET=m
+CONFIG_TCM_VHOST=m
+CONFIG_LGUEST=m
+CONFIG_BINARY_PRINTF=y
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=m
+CONFIG_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_FIND_FIRST_BIT=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GENERIC_IOMAP=y
+CONFIG_GENERIC_IO=y
+CONFIG_CRC_CCITT=m
+CONFIG_CRC16=m
+CONFIG_CRC_T10DIF=m
+CONFIG_CRC_ITU_T=m
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+CONFIG_CRC7=m
+CONFIG_LIBCRC32C=m
+CONFIG_CRC8=m
+CONFIG_AUDIT_GENERIC=y
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_XZ_DEC=y
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_IA64=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_BCJ=y
+# CONFIG_XZ_DEC_TEST is not set
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_DECOMPRESS_BZIP2=y
+CONFIG_DECOMPRESS_LZMA=y
+CONFIG_DECOMPRESS_XZ=y
+CONFIG_DECOMPRESS_LZO=y
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_REED_SOLOMON=m
+CONFIG_REED_SOLOMON_ENC8=y
+CONFIG_REED_SOLOMON_DEC8=y
+CONFIG_REED_SOLOMON_DEC16=y
+CONFIG_BCH=m
+CONFIG_BCH_CONST_PARAMS=y
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
+CONFIG_BTREE=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
+CONFIG_CHECK_SIGNATURE=y
+CONFIG_CPU_RMAP=y
+CONFIG_DQL=y
+CONFIG_NLATTR=y
+CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
+CONFIG_LRU_CACHE=m
+CONFIG_AVERAGE=y
+CONFIG_CORDIC=m
+CONFIG_DDR=y
diff --git a/kernels/linux-libre-grsec/config.x86_64 b/kernels/linux-libre-grsec/config.x86_64
new file mode 100644
index 000000000..2652b500b
--- /dev/null
+++ b/kernels/linux-libre-grsec/config.x86_64
@@ -0,0 +1,5943 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/x86_64 3.6.1-2 Kernel Configuration
+#
+CONFIG_64BIT=y
+# CONFIG_X86_32 is not set
+CONFIG_X86_64=y
+CONFIG_X86=y
+CONFIG_INSTRUCTION_DECODER=y
+CONFIG_OUTPUT_FORMAT="elf64-x86-64"
+CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_MMU=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_NEED_SG_DMA_LENGTH=y
+CONFIG_GENERIC_ISA_DMA=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_GPIO=y
+CONFIG_ARCH_MAY_HAVE_PC_FDC=y
+# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
+CONFIG_RWSEM_XCHGADD_ALGORITHM=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_ARCH_HAS_CPU_RELAX=y
+CONFIG_ARCH_HAS_DEFAULT_IDLE=y
+CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
+CONFIG_ARCH_HAS_CPU_AUTOPROBE=y
+CONFIG_HAVE_SETUP_PER_CPU_AREA=y
+CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
+CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+CONFIG_ZONE_DMA32=y
+CONFIG_AUDIT_ARCH=y
+CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_HAVE_INTEL_TXT=y
+CONFIG_X86_64_SMP=y
+CONFIG_X86_HT=y
+CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11"
+CONFIG_ARCH_CPU_PROBE_RELEASE=y
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
+CONFIG_HAVE_IRQ_WORK=y
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_EXTABLE_SORT=y
+
+#
+# General setup
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_CROSS_COMPILE=""
+CONFIG_LOCALVERSION="LIBRE-GRSEC"
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_HAVE_KERNEL_GZIP=y
+CONFIG_HAVE_KERNEL_BZIP2=y
+CONFIG_HAVE_KERNEL_LZMA=y
+CONFIG_HAVE_KERNEL_XZ=y
+CONFIG_HAVE_KERNEL_LZO=y
+CONFIG_KERNEL_GZIP=y
+# CONFIG_KERNEL_BZIP2 is not set
+# CONFIG_KERNEL_LZMA is not set
+# CONFIG_KERNEL_XZ is not set
+# CONFIG_KERNEL_LZO is not set
+CONFIG_DEFAULT_HOSTNAME="(none)"
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_BSD_PROCESS_ACCT_V3=y
+CONFIG_FHANDLE=y
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
+CONFIG_AUDIT=y
+CONFIG_AUDITSYSCALL=y
+CONFIG_AUDIT_WATCH=y
+CONFIG_AUDIT_TREE=y
+# CONFIG_AUDIT_LOGINUID_IMMUTABLE is not set
+CONFIG_HAVE_GENERIC_HARDIRQS=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_PENDING_IRQ=y
+CONFIG_IRQ_DOMAIN=y
+# CONFIG_IRQ_DOMAIN_DEBUG is not set
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+CONFIG_CLOCKSOURCE_WATCHDOG=y
+CONFIG_ARCH_CLOCKSOURCE_DATA=y
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
+CONFIG_GENERIC_CMOS_UPDATE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ=y
+CONFIG_HIGH_RES_TIMERS=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_PREEMPT_RCU=y
+CONFIG_PREEMPT_RCU=y
+CONFIG_RCU_FANOUT=64
+CONFIG_RCU_FANOUT_LEAF=16
+# CONFIG_RCU_FANOUT_EXACT is not set
+CONFIG_RCU_FAST_NO_HZ=y
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_RCU_BOOST is not set
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
+CONFIG_LOG_BUF_SHIFT=19
+CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
+CONFIG_CGROUPS=y
+# CONFIG_CGROUP_DEBUG is not set
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CPUSETS=y
+CONFIG_PROC_PID_CPUSET=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_RESOURCE_COUNTERS=y
+# CONFIG_MEMCG is not set
+# CONFIG_CGROUP_HUGETLB is not set
+# CONFIG_CGROUP_PERF is not set
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+CONFIG_RT_GROUP_SCHED=y
+CONFIG_BLK_CGROUP=y
+# CONFIG_DEBUG_BLK_CGROUP is not set
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_IPC_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+CONFIG_SCHED_AUTOGROUP=y
+# CONFIG_SYSFS_DEPRECATED is not set
+CONFIG_RELAY=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_RD_XZ=y
+CONFIG_RD_LZO=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
+# CONFIG_EXPERT is not set
+CONFIG_UID16=y
+# CONFIG_SYSCTL_SYSCALL is not set
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_ALL is not set
+CONFIG_HOTPLUG=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_PCSPKR_PLATFORM=y
+CONFIG_HAVE_PCSPKR_PLATFORM=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+# CONFIG_EMBEDDED is not set
+CONFIG_HAVE_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_PCI_QUIRKS=y
+CONFIG_SLUB_DEBUG=y
+# CONFIG_COMPAT_BRK is not set
+# CONFIG_SLAB is not set
+CONFIG_SLUB=y
+CONFIG_PROFILING=y
+CONFIG_TRACEPOINTS=y
+CONFIG_OPROFILE=m
+# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
+CONFIG_HAVE_OPROFILE=y
+CONFIG_OPROFILE_NMI_TIMER=y
+CONFIG_KPROBES=y
+CONFIG_JUMP_LABEL=y
+CONFIG_UPROBES=y
+CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
+CONFIG_KRETPROBES=y
+CONFIG_USER_RETURN_NOTIFIER=y
+CONFIG_HAVE_IOREMAP_PROT=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_OPTPROBES=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_USE_GENERIC_SMP_HELPERS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_DMA_API_DEBUG=y
+CONFIG_HAVE_HW_BREAKPOINT=y
+CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
+CONFIG_HAVE_USER_RETURN_NOTIFIER=y
+CONFIG_HAVE_PERF_EVENTS_NMI=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
+CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
+CONFIG_HAVE_CMPXCHG_LOCAL=y
+CONFIG_HAVE_CMPXCHG_DOUBLE=y
+CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
+CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_SECCOMP_FILTER=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_GCOV_KERNEL is not set
+# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+CONFIG_MODULE_FORCE_LOAD=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODULE_FORCE_UNLOAD=y
+CONFIG_MODVERSIONS=y
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_STOP_MACHINE=y
+CONFIG_BLOCK=y
+CONFIG_BLK_DEV_BSG=y
+CONFIG_BLK_DEV_BSGLIB=y
+# CONFIG_BLK_DEV_INTEGRITY is not set
+CONFIG_BLK_DEV_THROTTLING=y
+
+#
+# Partition Types
+#
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_OSF_PARTITION is not set
+# CONFIG_AMIGA_PARTITION is not set
+# CONFIG_ATARI_PARTITION is not set
+CONFIG_MAC_PARTITION=y
+CONFIG_MSDOS_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+# CONFIG_UNIXWARE_DISKLABEL is not set
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
+# CONFIG_SGI_PARTITION is not set
+# CONFIG_ULTRIX_PARTITION is not set
+# CONFIG_SUN_PARTITION is not set
+CONFIG_KARMA_PARTITION=y
+CONFIG_EFI_PARTITION=y
+# CONFIG_SYSV68_PARTITION is not set
+CONFIG_BLOCK_COMPAT=y
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+CONFIG_CFQ_GROUP_IOSCHED=y
+# CONFIG_DEFAULT_DEADLINE is not set
+CONFIG_DEFAULT_CFQ=y
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED="cfq"
+CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_PADATA=y
+# CONFIG_INLINE_SPIN_TRYLOCK is not set
+# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
+# CONFIG_INLINE_SPIN_LOCK is not set
+# CONFIG_INLINE_SPIN_LOCK_BH is not set
+# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
+# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
+CONFIG_UNINLINE_SPIN_UNLOCK=y
+# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
+# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
+# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
+# CONFIG_INLINE_READ_TRYLOCK is not set
+# CONFIG_INLINE_READ_LOCK is not set
+# CONFIG_INLINE_READ_LOCK_BH is not set
+# CONFIG_INLINE_READ_LOCK_IRQ is not set
+# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
+# CONFIG_INLINE_READ_UNLOCK is not set
+# CONFIG_INLINE_READ_UNLOCK_BH is not set
+# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
+# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
+# CONFIG_INLINE_WRITE_TRYLOCK is not set
+# CONFIG_INLINE_WRITE_LOCK is not set
+# CONFIG_INLINE_WRITE_LOCK_BH is not set
+# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
+# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
+# CONFIG_INLINE_WRITE_UNLOCK is not set
+# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
+# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
+# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
+# CONFIG_MUTEX_SPIN_ON_OWNER is not set
+CONFIG_FREEZER=y
+
+#
+# Processor type and features
+#
+CONFIG_ZONE_DMA=y
+CONFIG_SMP=y
+CONFIG_X86_X2APIC=y
+CONFIG_X86_MPPARSE=y
+# CONFIG_X86_EXTENDED_PLATFORM is not set
+CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
+CONFIG_SCHED_OMIT_FRAME_POINTER=y
+CONFIG_PARAVIRT_GUEST=y
+CONFIG_PARAVIRT_TIME_ACCOUNTING=y
+CONFIG_XEN=y
+CONFIG_XEN_DOM0=y
+CONFIG_XEN_PRIVILEGED_GUEST=y
+CONFIG_XEN_PVHVM=y
+CONFIG_XEN_MAX_DOMAIN_MEMORY=500
+CONFIG_XEN_SAVE_RESTORE=y
+# CONFIG_XEN_DEBUG_FS is not set
+CONFIG_KVM_CLOCK=y
+CONFIG_KVM_GUEST=y
+CONFIG_PARAVIRT=y
+# CONFIG_PARAVIRT_SPINLOCKS is not set
+CONFIG_PARAVIRT_CLOCK=y
+# CONFIG_PARAVIRT_DEBUG is not set
+CONFIG_NO_BOOTMEM=y
+# CONFIG_MEMTEST is not set
+# CONFIG_MK8 is not set
+# CONFIG_MPSC is not set
+# CONFIG_MCORE2 is not set
+# CONFIG_MATOM is not set
+CONFIG_GENERIC_CPU=y
+CONFIG_X86_INTERNODE_CACHE_SHIFT=6
+CONFIG_X86_CMPXCHG=y
+CONFIG_X86_L1_CACHE_SHIFT=6
+CONFIG_X86_XADD=y
+CONFIG_X86_WP_WORKS_OK=y
+CONFIG_X86_TSC=y
+CONFIG_X86_CMPXCHG64=y
+CONFIG_X86_CMOV=y
+CONFIG_X86_MINIMUM_CPU_FAMILY=64
+CONFIG_X86_DEBUGCTLMSR=y
+CONFIG_CPU_SUP_INTEL=y
+CONFIG_CPU_SUP_AMD=y
+CONFIG_CPU_SUP_CENTAUR=y
+CONFIG_HPET_TIMER=y
+CONFIG_HPET_EMULATE_RTC=y
+CONFIG_DMI=y
+CONFIG_GART_IOMMU=y
+CONFIG_CALGARY_IOMMU=y
+CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
+CONFIG_SWIOTLB=y
+CONFIG_IOMMU_HELPER=y
+# CONFIG_MAXSMP is not set
+CONFIG_NR_CPUS=64
+CONFIG_SCHED_SMT=y
+CONFIG_SCHED_MC=y
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+# CONFIG_PREEMPT_NONE is not set
+# CONFIG_PREEMPT_VOLUNTARY is not set
+CONFIG_PREEMPT=y
+CONFIG_PREEMPT_COUNT=y
+CONFIG_X86_LOCAL_APIC=y
+CONFIG_X86_IO_APIC=y
+CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
+CONFIG_X86_MCE=y
+CONFIG_X86_MCE_INTEL=y
+CONFIG_X86_MCE_AMD=y
+CONFIG_X86_MCE_THRESHOLD=y
+# CONFIG_X86_MCE_INJECT is not set
+CONFIG_X86_THERMAL_VECTOR=y
+CONFIG_I8K=m
+CONFIG_MICROCODE=m
+CONFIG_MICROCODE_INTEL=y
+CONFIG_MICROCODE_AMD=y
+CONFIG_MICROCODE_OLD_INTERFACE=y
+CONFIG_X86_MSR=m
+CONFIG_X86_CPUID=m
+CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
+CONFIG_DIRECT_GBPAGES=y
+CONFIG_NUMA=y
+CONFIG_AMD_NUMA=y
+CONFIG_X86_64_ACPI_NUMA=y
+CONFIG_NODES_SPAN_OTHER_NODES=y
+# CONFIG_NUMA_EMU is not set
+CONFIG_NODES_SHIFT=6
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_ARCH_SPARSEMEM_DEFAULT=y
+CONFIG_ARCH_SELECT_MEMORY_MODEL=y
+CONFIG_ARCH_MEMORY_PROBE=y
+CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
+CONFIG_SELECT_MEMORY_MODEL=y
+CONFIG_SPARSEMEM_MANUAL=y
+CONFIG_SPARSEMEM=y
+CONFIG_NEED_MULTIPLE_NODES=y
+CONFIG_HAVE_MEMORY_PRESENT=y
+CONFIG_SPARSEMEM_EXTREME=y
+CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
+CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y
+CONFIG_SPARSEMEM_VMEMMAP=y
+CONFIG_HAVE_MEMBLOCK=y
+CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
+CONFIG_ARCH_DISCARD_MEMBLOCK=y
+CONFIG_MEMORY_ISOLATION=y
+CONFIG_MEMORY_HOTPLUG=y
+CONFIG_MEMORY_HOTPLUG_SPARSE=y
+CONFIG_MEMORY_HOTREMOVE=y
+CONFIG_PAGEFLAGS_EXTENDED=y
+CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_COMPACTION=y
+CONFIG_MIGRATION=y
+CONFIG_PHYS_ADDR_T_64BIT=y
+CONFIG_ZONE_DMA_FLAG=1
+CONFIG_BOUNCE=y
+CONFIG_VIRT_TO_BUS=y
+CONFIG_MMU_NOTIFIER=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
+CONFIG_MEMORY_FAILURE=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
+# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
+CONFIG_CROSS_MEMORY_ATTACH=y
+CONFIG_CLEANCACHE=y
+CONFIG_FRONTSWAP=y
+CONFIG_X86_CHECK_BIOS_CORRUPTION=y
+CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
+CONFIG_X86_RESERVE_LOW=64
+CONFIG_MTRR=y
+CONFIG_MTRR_SANITIZER=y
+CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
+CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
+CONFIG_X86_PAT=y
+CONFIG_ARCH_USES_PG_UNCACHED=y
+CONFIG_ARCH_RANDOM=y
+CONFIG_EFI=y
+CONFIG_EFI_STUB=y
+CONFIG_SECCOMP=y
+CONFIG_CC_STACKPROTECTOR=y
+# CONFIG_HZ_100 is not set
+# CONFIG_HZ_250 is not set
+CONFIG_HZ_300=y
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=300
+CONFIG_SCHED_HRTICK=y
+CONFIG_KEXEC=y
+# CONFIG_CRASH_DUMP is not set
+CONFIG_KEXEC_JUMP=y
+CONFIG_PHYSICAL_START=0x1000000
+CONFIG_RELOCATABLE=y
+CONFIG_PHYSICAL_ALIGN=0x1000000
+CONFIG_HOTPLUG_CPU=y
+# CONFIG_CMDLINE_BOOL is not set
+CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
+CONFIG_USE_PERCPU_NUMA_NODE_ID=y
+
+#
+# Power management and ACPI options
+#
+CONFIG_ARCH_HIBERNATION_HEADER=y
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+CONFIG_HIBERNATE_CALLBACKS=y
+CONFIG_HIBERNATION=y
+CONFIG_PM_STD_PARTITION=""
+CONFIG_PM_SLEEP=y
+CONFIG_PM_SLEEP_SMP=y
+CONFIG_PM_AUTOSLEEP=y
+CONFIG_PM_WAKELOCKS=y
+CONFIG_PM_WAKELOCKS_LIMIT=100
+CONFIG_PM_WAKELOCKS_GC=y
+CONFIG_PM_RUNTIME=y
+CONFIG_PM=y
+CONFIG_PM_DEBUG=y
+CONFIG_PM_ADVANCED_DEBUG=y
+# CONFIG_PM_TEST_SUSPEND is not set
+CONFIG_PM_SLEEP_DEBUG=y
+# CONFIG_PM_TRACE_RTC is not set
+CONFIG_ACPI=y
+CONFIG_ACPI_SLEEP=y
+# CONFIG_ACPI_PROCFS is not set
+# CONFIG_ACPI_PROCFS_POWER is not set
+CONFIG_ACPI_EC_DEBUGFS=m
+# CONFIG_ACPI_PROC_EVENT is not set
+CONFIG_ACPI_AC=m
+CONFIG_ACPI_BATTERY=m
+CONFIG_ACPI_BUTTON=m
+CONFIG_ACPI_VIDEO=m
+CONFIG_ACPI_FAN=m
+CONFIG_ACPI_DOCK=y
+CONFIG_ACPI_PROCESSOR=m
+CONFIG_ACPI_IPMI=m
+CONFIG_ACPI_HOTPLUG_CPU=y
+CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
+CONFIG_ACPI_THERMAL=m
+CONFIG_ACPI_NUMA=y
+# CONFIG_ACPI_CUSTOM_DSDT is not set
+CONFIG_ACPI_BLACKLIST_YEAR=0
+# CONFIG_ACPI_DEBUG is not set
+CONFIG_ACPI_PCI_SLOT=m
+CONFIG_X86_PM_TIMER=y
+CONFIG_ACPI_CONTAINER=m
+CONFIG_ACPI_HOTPLUG_MEMORY=m
+CONFIG_ACPI_SBS=m
+CONFIG_ACPI_HED=y
+CONFIG_ACPI_CUSTOM_METHOD=m
+CONFIG_ACPI_BGRT=m
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_PCIEAER=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+CONFIG_ACPI_APEI_EINJ=m
+CONFIG_ACPI_APEI_ERST_DEBUG=m
+CONFIG_SFI=y
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_TABLE=y
+CONFIG_CPU_FREQ_STAT=m
+CONFIG_CPU_FREQ_STAT_DETAILS=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_USERSPACE=m
+CONFIG_CPU_FREQ_GOV_ONDEMAND=y
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
+
+#
+# x86 CPU frequency scaling drivers
+#
+CONFIG_X86_PCC_CPUFREQ=m
+CONFIG_X86_ACPI_CPUFREQ=m
+CONFIG_X86_POWERNOW_K8=m
+# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
+CONFIG_X86_P4_CLOCKMOD=m
+
+#
+# shared options
+#
+CONFIG_X86_SPEEDSTEP_LIB=m
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_GOV_LADDER=y
+CONFIG_CPU_IDLE_GOV_MENU=y
+# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set
+CONFIG_INTEL_IDLE=y
+
+#
+# Memory power savings
+#
+CONFIG_I7300_IDLE_IOAT_CHANNEL=y
+CONFIG_I7300_IDLE=m
+
+#
+# Bus options (PCI etc.)
+#
+CONFIG_PCI=y
+CONFIG_PCI_DIRECT=y
+CONFIG_PCI_MMCONFIG=y
+CONFIG_PCI_XEN=y
+CONFIG_PCI_DOMAINS=y
+# CONFIG_PCI_CNB20LE_QUIRK is not set
+CONFIG_PCIEPORTBUS=y
+CONFIG_HOTPLUG_PCI_PCIE=m
+CONFIG_PCIEAER=y
+# CONFIG_PCIE_ECRC is not set
+# CONFIG_PCIEAER_INJECT is not set
+CONFIG_PCIEASPM=y
+# CONFIG_PCIEASPM_DEBUG is not set
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+CONFIG_ARCH_SUPPORTS_MSI=y
+CONFIG_PCI_MSI=y
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
+CONFIG_PCI_STUB=m
+CONFIG_XEN_PCIDEV_FRONTEND=m
+CONFIG_HT_IRQ=y
+CONFIG_PCI_ATS=y
+CONFIG_PCI_IOV=y
+CONFIG_PCI_PRI=y
+CONFIG_PCI_PASID=y
+CONFIG_PCI_IOAPIC=y
+CONFIG_PCI_LABEL=y
+CONFIG_ISA_DMA_API=y
+CONFIG_AMD_NB=y
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_PCMCIA_LOAD_CIS=y
+CONFIG_CARDBUS=y
+
+#
+# PC-card bridges
+#
+CONFIG_YENTA=m
+CONFIG_YENTA_O2=y
+CONFIG_YENTA_RICOH=y
+CONFIG_YENTA_TI=y
+CONFIG_YENTA_ENE_TUNE=y
+CONFIG_YENTA_TOSHIBA=y
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_PCCARD_NONSTATIC=y
+CONFIG_HOTPLUG_PCI=m
+CONFIG_HOTPLUG_PCI_FAKE=m
+CONFIG_HOTPLUG_PCI_ACPI=m
+CONFIG_HOTPLUG_PCI_ACPI_IBM=m
+CONFIG_HOTPLUG_PCI_CPCI=y
+CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
+CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
+CONFIG_HOTPLUG_PCI_SHPC=m
+CONFIG_RAPIDIO=y
+CONFIG_RAPIDIO_TSI721=y
+CONFIG_RAPIDIO_DISC_TIMEOUT=30
+# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set
+CONFIG_RAPIDIO_DMA_ENGINE=y
+CONFIG_RAPIDIO_DEBUG=y
+CONFIG_RAPIDIO_TSI57X=y
+CONFIG_RAPIDIO_CPS_XX=y
+CONFIG_RAPIDIO_TSI568=y
+CONFIG_RAPIDIO_CPS_GEN2=y
+CONFIG_RAPIDIO_TSI500=y
+
+#
+# Executable file formats / Emulations
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_COMPAT_BINFMT_ELF=y
+CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+# CONFIG_HAVE_AOUT is not set
+CONFIG_BINFMT_MISC=y
+CONFIG_IA32_EMULATION=y
+CONFIG_IA32_AOUT=m
+CONFIG_X86_X32=y
+CONFIG_COMPAT=y
+CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
+CONFIG_SYSVIPC_COMPAT=y
+CONFIG_KEYS_COMPAT=y
+CONFIG_HAVE_TEXT_POKE_SMP=y
+CONFIG_X86_DEV_DMA_OPS=y
+CONFIG_NET=y
+CONFIG_COMPAT_NETLINK_MESSAGES=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+CONFIG_UNIX=y
+CONFIG_UNIX_DIAG=m
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=m
+CONFIG_XFRM_USER=m
+# CONFIG_XFRM_SUB_POLICY is not set
+# CONFIG_XFRM_MIGRATE is not set
+# CONFIG_XFRM_STATISTICS is not set
+CONFIG_XFRM_IPCOMP=m
+CONFIG_NET_KEY=m
+# CONFIG_NET_KEY_MIGRATE is not set
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_FIB_TRIE_STATS=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+CONFIG_IP_ROUTE_CLASSID=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IPGRE=m
+# CONFIG_NET_IPGRE_BROADCAST is not set
+CONFIG_IP_MROUTE=y
+# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+# CONFIG_ARPD is not set
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=m
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_XFRM_MODE_TRANSPORT=m
+CONFIG_INET_XFRM_MODE_TUNNEL=m
+CONFIG_INET_XFRM_MODE_BEET=m
+CONFIG_INET_LRO=y
+CONFIG_INET_DIAG=y
+CONFIG_INET_TCP_DIAG=y
+CONFIG_INET_UDP_DIAG=m
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=m
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="cubic"
+# CONFIG_TCP_MD5SIG is not set
+CONFIG_IPV6=y
+CONFIG_IPV6_PRIVACY=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=m
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_INET6_XFRM_MODE_TRANSPORT=m
+CONFIG_INET6_XFRM_MODE_TUNNEL=m
+CONFIG_INET6_XFRM_MODE_BEET=m
+CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
+CONFIG_IPV6_SIT=m
+CONFIG_IPV6_SIT_6RD=y
+CONFIG_IPV6_NDISC_NODETYPE=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+# CONFIG_IPV6_MROUTE is not set
+CONFIG_NETLABEL=y
+CONFIG_NETWORK_SECMARK=y
+CONFIG_NETWORK_PHY_TIMESTAMPING=y
+CONFIG_NETFILTER=y
+# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=y
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_SECMARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CT_PROTO_DCCP=m
+CONFIG_NF_CT_PROTO_GRE=m
+CONFIG_NF_CT_PROTO_SCTP=m
+CONFIG_NF_CT_PROTO_UDPLITE=m
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_BROADCAST=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=m
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_QUEUE_CT=y
+CONFIG_NETFILTER_TPROXY=m
+CONFIG_NETFILTER_XTABLES=m
+
+#
+# Xtables combined modules
+#
+CONFIG_NETFILTER_XT_MARK=m
+CONFIG_NETFILTER_XT_CONNMARK=m
+CONFIG_NETFILTER_XT_SET=m
+
+#
+# Xtables targets
+#
+CONFIG_NETFILTER_XT_TARGET_AUDIT=m
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
+CONFIG_NETFILTER_XT_TARGET_CT=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_HMARK=m
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_TEE=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_SECMARK=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+
+#
+# Xtables matches
+#
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_CPU=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+# CONFIG_NETFILTER_XT_MATCH_GRADM is not set
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_NFACCT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+CONFIG_IP_VS=m
+# CONFIG_IP_VS_IPV6 is not set
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+
+#
+# IPVS transport protocol load balancing support
+#
+CONFIG_IP_VS_PROTO_TCP=y
+CONFIG_IP_VS_PROTO_UDP=y
+CONFIG_IP_VS_PROTO_AH_ESP=y
+CONFIG_IP_VS_PROTO_ESP=y
+CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
+
+#
+# IPVS scheduler
+#
+CONFIG_IP_VS_RR=m
+CONFIG_IP_VS_WRR=m
+CONFIG_IP_VS_LC=m
+CONFIG_IP_VS_WLC=m
+CONFIG_IP_VS_LBLC=m
+CONFIG_IP_VS_LBLCR=m
+CONFIG_IP_VS_DH=m
+CONFIG_IP_VS_SH=m
+CONFIG_IP_VS_SED=m
+CONFIG_IP_VS_NQ=m
+
+#
+# IPVS SH scheduler
+#
+CONFIG_IP_VS_SH_TAB_BITS=8
+
+#
+# IPVS application helper
+#
+CONFIG_IP_VS_FTP=m
+CONFIG_IP_VS_NFCT=y
+CONFIG_IP_VS_PE_SIP=m
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_NF_CONNTRACK_IPV4=m
+# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set
+CONFIG_IP_NF_QUEUE=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_ULOG=m
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_NEEDED=y
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PROTO_DCCP=m
+CONFIG_NF_NAT_PROTO_GRE=m
+CONFIG_NF_NAT_PROTO_UDPLITE=m
+CONFIG_NF_NAT_PROTO_SCTP=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+CONFIG_IP_NF_SECURITY=m
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+
+#
+# IPv6: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV6=m
+CONFIG_NF_CONNTRACK_IPV6=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_TARGET_HL=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_RAW=m
+CONFIG_IP6_NF_SECURITY=m
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_IP6=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_ULOG=m
+CONFIG_BRIDGE_EBT_NFLOG=m
+CONFIG_IP_DCCP=m
+CONFIG_INET_DCCP_DIAG=m
+
+#
+# DCCP CCIDs Configuration (EXPERIMENTAL)
+#
+# CONFIG_IP_DCCP_CCID2_DEBUG is not set
+CONFIG_IP_DCCP_CCID3=y
+# CONFIG_IP_DCCP_CCID3_DEBUG is not set
+CONFIG_IP_DCCP_TFRC_LIB=y
+
+#
+# DCCP Kernel Hacking
+#
+# CONFIG_IP_DCCP_DEBUG is not set
+CONFIG_NET_DCCPPROBE=m
+CONFIG_IP_SCTP=m
+CONFIG_NET_SCTPPROBE=m
+# CONFIG_SCTP_DBG_MSG is not set
+# CONFIG_SCTP_DBG_OBJCNT is not set
+# CONFIG_SCTP_HMAC_NONE is not set
+CONFIG_SCTP_HMAC_SHA1=y
+# CONFIG_SCTP_HMAC_MD5 is not set
+# CONFIG_RDS is not set
+# CONFIG_TIPC is not set
+CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_L2TP=m
+# CONFIG_L2TP_DEBUGFS is not set
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=m
+CONFIG_L2TP_ETH=m
+CONFIG_STP=m
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+# CONFIG_NET_DSA is not set
+CONFIG_VLAN_8021Q=m
+# CONFIG_VLAN_8021Q_GVRP is not set
+# CONFIG_DECNET is not set
+CONFIG_LLC=m
+CONFIG_LLC2=m
+CONFIG_IPX=m
+# CONFIG_IPX_INTERN is not set
+CONFIG_ATALK=m
+CONFIG_DEV_APPLETALK=m
+CONFIG_IPDDP=m
+CONFIG_IPDDP_ENCAP=y
+CONFIG_IPDDP_DECAP=y
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_WAN_ROUTER is not set
+CONFIG_PHONET=m
+CONFIG_IEEE802154=m
+CONFIG_IEEE802154_6LOWPAN=m
+CONFIG_MAC802154=m
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
+CONFIG_NET_SCH_RED=m
+CONFIG_NET_SCH_SFB=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+CONFIG_NET_SCH_GRED=m
+CONFIG_NET_SCH_DSMARK=m
+CONFIG_NET_SCH_NETEM=m
+CONFIG_NET_SCH_DRR=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_CHOKE=m
+CONFIG_NET_SCH_QFQ=m
+CONFIG_NET_SCH_CODEL=m
+CONFIG_NET_SCH_FQ_CODEL=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_SCH_PLUG=m
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_TCINDEX=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+# CONFIG_CLS_U32_PERF is not set
+# CONFIG_CLS_U32_MARK is not set
+CONFIG_NET_CLS_RSVP=m
+CONFIG_NET_CLS_RSVP6=m
+CONFIG_NET_CLS_FLOW=m
+CONFIG_NET_CLS_CGROUP=y
+# CONFIG_NET_EMATCH is not set
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=m
+CONFIG_NET_ACT_GACT=m
+CONFIG_GACT_PROB=y
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_IPT=m
+CONFIG_NET_ACT_NAT=m
+CONFIG_NET_ACT_PEDIT=m
+CONFIG_NET_ACT_SIMP=m
+CONFIG_NET_ACT_SKBEDIT=m
+CONFIG_NET_ACT_CSUM=m
+CONFIG_NET_CLS_IND=y
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=y
+CONFIG_BATMAN_ADV=m
+CONFIG_BATMAN_ADV_BLA=y
+# CONFIG_BATMAN_ADV_DEBUG is not set
+CONFIG_OPENVSWITCH=m
+CONFIG_RPS=y
+CONFIG_RFS_ACCEL=y
+CONFIG_XPS=y
+CONFIG_NETPRIO_CGROUP=m
+CONFIG_BQL=y
+CONFIG_BPF_JIT=y
+
+#
+# Network testing
+#
+CONFIG_NET_PKTGEN=m
+CONFIG_NET_TCPPROBE=m
+CONFIG_NET_DROP_MONITOR=y
+CONFIG_HAMRADIO=y
+
+#
+# Packet Radio protocols
+#
+CONFIG_AX25=m
+CONFIG_AX25_DAMA_SLAVE=y
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+#
+# AX.25 network device drivers
+#
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_BAYCOM_PAR=m
+CONFIG_YAM=m
+# CONFIG_CAN is not set
+CONFIG_IRDA=m
+
+#
+# IrDA protocols
+#
+CONFIG_IRLAN=m
+CONFIG_IRNET=m
+CONFIG_IRCOMM=m
+CONFIG_IRDA_ULTRA=y
+
+#
+# IrDA options
+#
+CONFIG_IRDA_CACHE_LAST_LSAP=y
+CONFIG_IRDA_FAST_RR=y
+# CONFIG_IRDA_DEBUG is not set
+
+#
+# Infrared-port device drivers
+#
+
+#
+# SIR device drivers
+#
+CONFIG_IRTTY_SIR=m
+
+#
+# Dongle support
+#
+CONFIG_DONGLE=y
+CONFIG_ESI_DONGLE=m
+CONFIG_ACTISYS_DONGLE=m
+CONFIG_TEKRAM_DONGLE=m
+CONFIG_TOIM3232_DONGLE=m
+CONFIG_LITELINK_DONGLE=m
+CONFIG_MA600_DONGLE=m
+CONFIG_GIRBIL_DONGLE=m
+CONFIG_MCP2120_DONGLE=m
+CONFIG_OLD_BELKIN_DONGLE=m
+CONFIG_ACT200L_DONGLE=m
+CONFIG_KINGSUN_DONGLE=m
+CONFIG_KSDAZZLE_DONGLE=m
+CONFIG_KS959_DONGLE=m
+
+#
+# FIR device drivers
+#
+CONFIG_USB_IRDA=m
+CONFIG_SIGMATEL_FIR=m
+CONFIG_NSC_FIR=m
+CONFIG_WINBOND_FIR=m
+CONFIG_SMC_IRCC_FIR=m
+CONFIG_ALI_FIR=m
+CONFIG_VLSI_FIR=m
+CONFIG_VIA_FIR=m
+CONFIG_MCS_FIR=m
+CONFIG_BT=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+# CONFIG_BT_BNEP_MC_FILTER is not set
+# CONFIG_BT_BNEP_PROTO_FILTER is not set
+# CONFIG_BT_CMTP is not set
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIBTUSB=m
+CONFIG_BT_HCIBTSDIO=m
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIUART_ATH3K=y
+CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIUART_3WIRE=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIDTL1=m
+CONFIG_BT_HCIBT3C=m
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIVHCI=m
+CONFIG_BT_MRVL=m
+CONFIG_BT_MRVL_SDIO=m
+CONFIG_BT_ATH3K=m
+CONFIG_BT_WILINK=m
+CONFIG_AF_RXRPC=m
+# CONFIG_AF_RXRPC_DEBUG is not set
+CONFIG_RXKAD=m
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_WIRELESS_EXT=y
+CONFIG_WEXT_CORE=y
+CONFIG_WEXT_PROC=y
+CONFIG_WEXT_SPY=y
+CONFIG_WEXT_PRIV=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_REG_DEBUG is not set
+CONFIG_CFG80211_DEFAULT_PS=y
+# CONFIG_CFG80211_DEBUGFS is not set
+# CONFIG_CFG80211_INTERNAL_REGDB is not set
+CONFIG_CFG80211_WEXT=y
+CONFIG_LIB80211=m
+CONFIG_LIB80211_CRYPT_WEP=m
+CONFIG_LIB80211_CRYPT_CCMP=m
+CONFIG_LIB80211_CRYPT_TKIP=m
+# CONFIG_LIB80211_DEBUG is not set
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_MINSTREL_HT=y
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
+CONFIG_MAC80211_MESH=y
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_DEBUGFS is not set
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+CONFIG_WIMAX=m
+CONFIG_WIMAX_DEBUG_LEVEL=8
+CONFIG_RFKILL=m
+CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
+CONFIG_NET_9P=m
+CONFIG_NET_9P_VIRTIO=m
+# CONFIG_NET_9P_DEBUG is not set
+CONFIG_CAIF=m
+# CONFIG_CAIF_DEBUG is not set
+CONFIG_CAIF_NETDEV=m
+CONFIG_CAIF_USB=m
+CONFIG_CEPH_LIB=m
+# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
+# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
+CONFIG_NFC=m
+CONFIG_NFC_NCI=m
+CONFIG_NFC_HCI=m
+# CONFIG_NFC_SHDLC is not set
+# CONFIG_NFC_LLCP is not set
+
+#
+# Near Field Communication (NFC) devices
+#
+CONFIG_PN544_NFC=m
+CONFIG_NFC_PN533=m
+CONFIG_NFC_WILINK=m
+CONFIG_HAVE_BPF_JIT=y
+
+#
+# Device Drivers
+#
+
+#
+# Generic Driver Options
+#
+CONFIG_UEVENT_HELPER_PATH=""
+CONFIG_DEVTMPFS=y
+# CONFIG_DEVTMPFS_MOUNT is not set
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+CONFIG_FW_LOADER=y
+CONFIG_FIRMWARE_IN_KERNEL=y
+CONFIG_EXTRA_FIRMWARE=""
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
+CONFIG_SYS_HYPERVISOR=y
+# CONFIG_GENERIC_CPU_DEVICES is not set
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=m
+CONFIG_REGMAP_IRQ=y
+CONFIG_DMA_SHARED_BUFFER=y
+CONFIG_CONNECTOR=y
+CONFIG_PROC_EVENTS=y
+CONFIG_MTD=m
+CONFIG_MTD_TESTS=m
+CONFIG_MTD_REDBOOT_PARTS=m
+CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
+# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
+# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
+CONFIG_MTD_AR7_PARTS=m
+
+#
+# User Modules And Translation Layers
+#
+CONFIG_MTD_CHAR=m
+CONFIG_MTD_BLKDEVS=m
+CONFIG_MTD_BLOCK=m
+CONFIG_MTD_BLOCK_RO=m
+CONFIG_FTL=m
+CONFIG_NFTL=m
+CONFIG_NFTL_RW=y
+CONFIG_INFTL=m
+CONFIG_RFD_FTL=m
+CONFIG_SSFDC=m
+# CONFIG_SM_FTL is not set
+CONFIG_MTD_OOPS=m
+CONFIG_MTD_SWAP=m
+
+#
+# RAM/ROM/Flash chip drivers
+#
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+CONFIG_MTD_GEN_PROBE=m
+# CONFIG_MTD_CFI_ADV_OPTIONS is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+CONFIG_MTD_CFI_INTELEXT=m
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+CONFIG_MTD_CFI_UTIL=m
+CONFIG_MTD_RAM=m
+CONFIG_MTD_ROM=m
+CONFIG_MTD_ABSENT=m
+
+#
+# Mapping drivers for chip access
+#
+CONFIG_MTD_COMPLEX_MAPPINGS=y
+# CONFIG_MTD_PHYSMAP is not set
+CONFIG_MTD_SC520CDP=m
+CONFIG_MTD_NETSC520=m
+CONFIG_MTD_TS5500=m
+# CONFIG_MTD_SBC_GXX is not set
+# CONFIG_MTD_AMD76XROM is not set
+# CONFIG_MTD_ICHXROM is not set
+# CONFIG_MTD_ESB2ROM is not set
+# CONFIG_MTD_CK804XROM is not set
+CONFIG_MTD_SCB2_FLASH=m
+# CONFIG_MTD_NETtel is not set
+# CONFIG_MTD_L440GX is not set
+CONFIG_MTD_PCI=m
+# CONFIG_MTD_PCMCIA is not set
+# CONFIG_MTD_GPIO_ADDR is not set
+# CONFIG_MTD_INTEL_VR_NOR is not set
+CONFIG_MTD_PLATRAM=m
+# CONFIG_MTD_LATCH_ADDR is not set
+
+#
+# Self-contained MTD device drivers
+#
+CONFIG_MTD_PMC551=m
+# CONFIG_MTD_PMC551_BUGFIX is not set
+# CONFIG_MTD_PMC551_DEBUG is not set
+# CONFIG_MTD_SLRAM is not set
+CONFIG_MTD_PHRAM=m
+CONFIG_MTD_MTDRAM=m
+CONFIG_MTDRAM_TOTAL_SIZE=4096
+CONFIG_MTDRAM_ERASE_SIZE=128
+CONFIG_MTD_BLOCK2MTD=m
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOC2000 is not set
+# CONFIG_MTD_DOC2001 is not set
+# CONFIG_MTD_DOC2001PLUS is not set
+CONFIG_MTD_DOCG3=m
+CONFIG_BCH_CONST_M=14
+CONFIG_BCH_CONST_T=4
+CONFIG_MTD_NAND_ECC=m
+CONFIG_MTD_NAND_ECC_SMC=y
+CONFIG_MTD_NAND=m
+# CONFIG_MTD_NAND_VERIFY_WRITE is not set
+# CONFIG_MTD_NAND_ECC_BCH is not set
+CONFIG_MTD_SM_COMMON=m
+# CONFIG_MTD_NAND_MUSEUM_IDS is not set
+# CONFIG_MTD_NAND_DENALI is not set
+CONFIG_MTD_NAND_IDS=m
+CONFIG_MTD_NAND_RICOH=m
+CONFIG_MTD_NAND_DISKONCHIP=m
+# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set
+CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
+# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set
+CONFIG_MTD_NAND_DOCG4=m
+# CONFIG_MTD_NAND_CAFE is not set
+CONFIG_MTD_NAND_NANDSIM=m
+# CONFIG_MTD_NAND_PLATFORM is not set
+CONFIG_MTD_ALAUDA=m
+# CONFIG_MTD_ONENAND is not set
+
+#
+# LPDDR flash memory drivers
+#
+CONFIG_MTD_LPDDR=m
+CONFIG_MTD_QINFO_PROBE=m
+CONFIG_MTD_UBI=m
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_RESERVE=1
+# CONFIG_MTD_UBI_GLUEBI is not set
+CONFIG_PARPORT=m
+CONFIG_PARPORT_PC=m
+CONFIG_PARPORT_SERIAL=m
+CONFIG_PARPORT_PC_FIFO=y
+CONFIG_PARPORT_PC_SUPERIO=y
+CONFIG_PARPORT_PC_PCMCIA=m
+# CONFIG_PARPORT_GSC is not set
+CONFIG_PARPORT_AX88796=m
+CONFIG_PARPORT_1284=y
+CONFIG_PARPORT_NOT_PC=y
+CONFIG_PNP=y
+# CONFIG_PNP_DEBUG_MESSAGES is not set
+
+#
+# Protocols
+#
+CONFIG_PNPACPI=y
+CONFIG_BLK_DEV=y
+CONFIG_BLK_DEV_FD=m
+# CONFIG_PARIDE is not set
+CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
+CONFIG_BLK_CPQ_DA=m
+CONFIG_BLK_CPQ_CISS_DA=m
+# CONFIG_CISS_SCSI_TAPE is not set
+CONFIG_BLK_DEV_DAC960=m
+# CONFIG_BLK_DEV_UMEM is not set
+# CONFIG_BLK_DEV_COW_COMMON is not set
+CONFIG_BLK_DEV_LOOP=m
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
+CONFIG_BLK_DEV_CRYPTOLOOP=m
+CONFIG_BLK_DEV_DRBD=m
+# CONFIG_DRBD_FAULT_INJECTION is not set
+CONFIG_BLK_DEV_NBD=m
+CONFIG_BLK_DEV_NVME=m
+CONFIG_BLK_DEV_OSD=m
+CONFIG_BLK_DEV_SX8=m
+# CONFIG_BLK_DEV_UB is not set
+CONFIG_BLK_DEV_RAM=m
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=16384
+# CONFIG_BLK_DEV_XIP is not set
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+CONFIG_ATA_OVER_ETH=m
+CONFIG_XEN_BLKDEV_FRONTEND=m
+CONFIG_XEN_BLKDEV_BACKEND=m
+CONFIG_VIRTIO_BLK=m
+# CONFIG_BLK_DEV_HD is not set
+CONFIG_BLK_DEV_RBD=m
+
+#
+# Misc devices
+#
+CONFIG_SENSORS_LIS3LV02D=m
+CONFIG_AD525X_DPOT=m
+CONFIG_AD525X_DPOT_I2C=m
+# CONFIG_IBM_ASM is not set
+CONFIG_PHANTOM=m
+CONFIG_INTEL_MID_PTI=m
+CONFIG_SGI_IOC4=m
+CONFIG_TIFM_CORE=m
+CONFIG_TIFM_7XX1=m
+CONFIG_ICS932S401=m
+CONFIG_ENCLOSURE_SERVICES=m
+CONFIG_CS5535_MFGPT=m
+CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7
+CONFIG_CS5535_CLOCK_EVENT_SRC=m
+CONFIG_HP_ILO=m
+CONFIG_APDS9802ALS=m
+CONFIG_ISL29003=m
+CONFIG_ISL29020=m
+CONFIG_SENSORS_TSL2550=m
+CONFIG_SENSORS_BH1780=m
+CONFIG_SENSORS_BH1770=m
+CONFIG_SENSORS_APDS990X=m
+CONFIG_HMC6352=m
+CONFIG_DS1682=m
+CONFIG_VMWARE_BALLOON=m
+CONFIG_BMP085=y
+CONFIG_BMP085_I2C=m
+CONFIG_PCH_PHUB=m
+CONFIG_USB_SWITCH_FSA9480=m
+CONFIG_C2PORT=m
+CONFIG_C2PORT_DURAMAR_2150=m
+
+#
+# EEPROM support
+#
+CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_LEGACY=m
+CONFIG_EEPROM_MAX6875=m
+CONFIG_EEPROM_93CX6=m
+CONFIG_CB710_CORE=m
+# CONFIG_CB710_DEBUG is not set
+CONFIG_CB710_DEBUG_ASSUMPTIONS=y
+
+#
+# Texas Instruments shared transport line discipline
+#
+CONFIG_TI_ST=m
+CONFIG_SENSORS_LIS3_I2C=m
+
+#
+# Altera FPGA firmware download module
+#
+CONFIG_ALTERA_STAPL=m
+CONFIG_INTEL_MEI=m
+CONFIG_HAVE_IDE=y
+# CONFIG_IDE is not set
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=m
+CONFIG_RAID_ATTRS=m
+CONFIG_SCSI=m
+CONFIG_SCSI_DMA=y
+CONFIG_SCSI_TGT=m
+CONFIG_SCSI_NETLINK=y
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=m
+CONFIG_CHR_DEV_ST=m
+CONFIG_CHR_DEV_OSST=m
+CONFIG_BLK_DEV_SR=m
+CONFIG_BLK_DEV_SR_VENDOR=y
+CONFIG_CHR_DEV_SG=m
+CONFIG_CHR_DEV_SCH=m
+CONFIG_SCSI_ENCLOSURE=m
+CONFIG_SCSI_MULTI_LUN=y
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+# CONFIG_SCSI_SCAN_ASYNC is not set
+
+#
+# SCSI Transports
+#
+CONFIG_SCSI_SPI_ATTRS=m
+CONFIG_SCSI_FC_ATTRS=m
+# CONFIG_SCSI_FC_TGT_ATTRS is not set
+CONFIG_SCSI_ISCSI_ATTRS=m
+CONFIG_SCSI_SAS_ATTRS=m
+CONFIG_SCSI_SAS_LIBSAS=m
+CONFIG_SCSI_SAS_ATA=y
+CONFIG_SCSI_SAS_HOST_SMP=y
+CONFIG_SCSI_SRP_ATTRS=m
+CONFIG_SCSI_SRP_TGT_ATTRS=y
+CONFIG_SCSI_LOWLEVEL=y
+CONFIG_ISCSI_TCP=m
+CONFIG_ISCSI_BOOT_SYSFS=m
+CONFIG_SCSI_CXGB3_ISCSI=m
+CONFIG_SCSI_CXGB4_ISCSI=m
+CONFIG_SCSI_BNX2_ISCSI=m
+CONFIG_SCSI_BNX2X_FCOE=m
+CONFIG_BE2ISCSI=m
+CONFIG_BLK_DEV_3W_XXXX_RAID=m
+CONFIG_SCSI_HPSA=m
+CONFIG_SCSI_3W_9XXX=m
+CONFIG_SCSI_3W_SAS=m
+CONFIG_SCSI_ACARD=m
+CONFIG_SCSI_AACRAID=m
+CONFIG_SCSI_AIC7XXX=m
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
+CONFIG_AIC7XXX_RESET_DELAY_MS=15000
+# CONFIG_AIC7XXX_DEBUG_ENABLE is not set
+CONFIG_AIC7XXX_DEBUG_MASK=0
+CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
+# CONFIG_SCSI_AIC7XXX_OLD is not set
+CONFIG_SCSI_AIC79XX=m
+CONFIG_AIC79XX_CMDS_PER_DEVICE=32
+CONFIG_AIC79XX_RESET_DELAY_MS=15000
+# CONFIG_AIC79XX_DEBUG_ENABLE is not set
+CONFIG_AIC79XX_DEBUG_MASK=0
+CONFIG_AIC79XX_REG_PRETTY_PRINT=y
+CONFIG_SCSI_AIC94XX=m
+# CONFIG_AIC94XX_DEBUG is not set
+CONFIG_SCSI_MVSAS=m
+# CONFIG_SCSI_MVSAS_DEBUG is not set
+CONFIG_SCSI_MVSAS_TASKLET=y
+CONFIG_SCSI_MVUMI=m
+CONFIG_SCSI_DPT_I2O=m
+CONFIG_SCSI_ADVANSYS=m
+CONFIG_SCSI_ARCMSR=m
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+CONFIG_MEGARAID_SAS=m
+CONFIG_SCSI_MPT2SAS=m
+CONFIG_SCSI_MPT2SAS_MAX_SGE=128
+# CONFIG_SCSI_MPT2SAS_LOGGING is not set
+CONFIG_SCSI_UFSHCD=m
+CONFIG_SCSI_HPTIOP=m
+CONFIG_SCSI_BUSLOGIC=m
+CONFIG_VMWARE_PVSCSI=m
+CONFIG_HYPERV_STORAGE=m
+CONFIG_LIBFC=m
+CONFIG_LIBFCOE=m
+CONFIG_FCOE=m
+CONFIG_FCOE_FNIC=m
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_EATA=m
+# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set
+# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set
+CONFIG_SCSI_EATA_MAX_TAGS=16
+CONFIG_SCSI_FUTURE_DOMAIN=m
+CONFIG_SCSI_GDTH=m
+CONFIG_SCSI_ISCI=m
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
+CONFIG_SCSI_PPA=m
+CONFIG_SCSI_IMM=m
+# CONFIG_SCSI_IZIP_EPP16 is not set
+# CONFIG_SCSI_IZIP_SLOW_CTR is not set
+CONFIG_SCSI_STEX=m
+CONFIG_SCSI_SYM53C8XX_2=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_SYM53C8XX_MMIO=y
+CONFIG_SCSI_IPR=m
+# CONFIG_SCSI_IPR_TRACE is not set
+# CONFIG_SCSI_IPR_DUMP is not set
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_QLA_FC=m
+CONFIG_TCM_QLA2XXX=m
+CONFIG_SCSI_QLA_ISCSI=m
+CONFIG_SCSI_LPFC=m
+# CONFIG_SCSI_LPFC_DEBUG_FS is not set
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_DC390T=m
+# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_PMCRAID=m
+CONFIG_SCSI_PM8001=m
+CONFIG_SCSI_SRP=m
+CONFIG_SCSI_BFA_FC=m
+CONFIG_SCSI_VIRTIO=m
+CONFIG_SCSI_LOWLEVEL_PCMCIA=y
+CONFIG_PCMCIA_AHA152X=m
+CONFIG_PCMCIA_FDOMAIN=m
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+CONFIG_SCSI_DH=m
+CONFIG_SCSI_DH_RDAC=m
+CONFIG_SCSI_DH_HP_SW=m
+CONFIG_SCSI_DH_EMC=m
+CONFIG_SCSI_DH_ALUA=m
+CONFIG_SCSI_OSD_INITIATOR=m
+CONFIG_SCSI_OSD_ULD=m
+CONFIG_SCSI_OSD_DPRINT_SENSE=0
+# CONFIG_SCSI_OSD_DEBUG is not set
+CONFIG_ATA=m
+# CONFIG_ATA_NONSTANDARD is not set
+CONFIG_ATA_VERBOSE_ERROR=y
+CONFIG_ATA_ACPI=y
+CONFIG_SATA_PMP=y
+
+#
+# Controllers with non-SFF native interface
+#
+CONFIG_SATA_AHCI=m
+CONFIG_SATA_AHCI_PLATFORM=m
+CONFIG_SATA_INIC162X=m
+CONFIG_SATA_ACARD_AHCI=m
+CONFIG_SATA_SIL24=m
+CONFIG_ATA_SFF=y
+
+#
+# SFF controllers with custom DMA interface
+#
+CONFIG_PDC_ADMA=m
+CONFIG_SATA_QSTOR=m
+CONFIG_SATA_SX4=m
+CONFIG_ATA_BMDMA=y
+
+#
+# SATA SFF controllers with BMDMA
+#
+CONFIG_ATA_PIIX=m
+CONFIG_SATA_MV=m
+CONFIG_SATA_NV=m
+CONFIG_SATA_PROMISE=m
+CONFIG_SATA_SIL=m
+CONFIG_SATA_SIS=m
+CONFIG_SATA_SVW=m
+CONFIG_SATA_ULI=m
+CONFIG_SATA_VIA=m
+CONFIG_SATA_VITESSE=m
+
+#
+# PATA SFF controllers with BMDMA
+#
+CONFIG_PATA_ALI=m
+CONFIG_PATA_AMD=m
+CONFIG_PATA_ARASAN_CF=m
+CONFIG_PATA_ARTOP=m
+CONFIG_PATA_ATIIXP=m
+CONFIG_PATA_ATP867X=m
+CONFIG_PATA_CMD64X=m
+CONFIG_PATA_CS5520=m
+CONFIG_PATA_CS5530=m
+CONFIG_PATA_CS5536=m
+CONFIG_PATA_CYPRESS=m
+CONFIG_PATA_EFAR=m
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_HPT37X=m
+CONFIG_PATA_HPT3X2N=m
+CONFIG_PATA_HPT3X3=m
+# CONFIG_PATA_HPT3X3_DMA is not set
+CONFIG_PATA_IT8213=m
+CONFIG_PATA_IT821X=m
+CONFIG_PATA_JMICRON=m
+CONFIG_PATA_MARVELL=m
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_NINJA32=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_OLDPIIX=m
+CONFIG_PATA_OPTIDMA=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_RADISYS=m
+CONFIG_PATA_RDC=m
+CONFIG_PATA_SC1200=m
+CONFIG_PATA_SCH=m
+CONFIG_PATA_SERVERWORKS=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_SIS=m
+CONFIG_PATA_TOSHIBA=m
+CONFIG_PATA_TRIFLEX=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_WINBOND=m
+
+#
+# PIO-only SFF controllers
+#
+CONFIG_PATA_CMD640_PCI=m
+CONFIG_PATA_MPIIX=m
+CONFIG_PATA_NS87410=m
+CONFIG_PATA_OPTI=m
+CONFIG_PATA_PCMCIA=m
+CONFIG_PATA_RZ1000=m
+
+#
+# Generic fallback / legacy drivers
+#
+CONFIG_PATA_ACPI=m
+CONFIG_ATA_GENERIC=m
+CONFIG_PATA_LEGACY=m
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+CONFIG_MD_LINEAR=m
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
+# CONFIG_MULTICORE_RAID456 is not set
+CONFIG_MD_MULTIPATH=m
+CONFIG_MD_FAULTY=m
+CONFIG_BLK_DEV_DM=m
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_BUFIO=m
+CONFIG_DM_PERSISTENT_DATA=m
+CONFIG_DM_CRYPT=m
+CONFIG_DM_SNAPSHOT=m
+CONFIG_DM_THIN_PROVISIONING=m
+# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set
+CONFIG_DM_MIRROR=m
+CONFIG_DM_RAID=m
+CONFIG_DM_LOG_USERSPACE=m
+CONFIG_DM_ZERO=m
+CONFIG_DM_MULTIPATH=m
+CONFIG_DM_MULTIPATH_QL=m
+CONFIG_DM_MULTIPATH_ST=m
+CONFIG_DM_DELAY=m
+CONFIG_DM_UEVENT=y
+CONFIG_DM_FLAKEY=m
+CONFIG_DM_VERITY=m
+CONFIG_TARGET_CORE=m
+CONFIG_TCM_IBLOCK=m
+CONFIG_TCM_FILEIO=m
+CONFIG_TCM_PSCSI=m
+CONFIG_LOOPBACK_TARGET=m
+CONFIG_TCM_FC=m
+CONFIG_ISCSI_TARGET=m
+CONFIG_SBP_TARGET=m
+CONFIG_FUSION=y
+CONFIG_FUSION_SPI=m
+CONFIG_FUSION_FC=m
+CONFIG_FUSION_SAS=m
+CONFIG_FUSION_MAX_SGE=128
+CONFIG_FUSION_CTL=m
+# CONFIG_FUSION_LOGGING is not set
+
+#
+# IEEE 1394 (FireWire) support
+#
+CONFIG_FIREWIRE=m
+CONFIG_FIREWIRE_OHCI=m
+CONFIG_FIREWIRE_SBP2=m
+CONFIG_FIREWIRE_NET=m
+CONFIG_FIREWIRE_NOSY=m
+CONFIG_I2O=m
+CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
+CONFIG_I2O_EXT_ADAPTEC=y
+CONFIG_I2O_EXT_ADAPTEC_DMA64=y
+CONFIG_I2O_CONFIG=m
+CONFIG_I2O_CONFIG_OLD_IOCTL=y
+CONFIG_I2O_BUS=m
+CONFIG_I2O_BLOCK=m
+CONFIG_I2O_SCSI=m
+CONFIG_I2O_PROC=m
+CONFIG_MACINTOSH_DRIVERS=y
+CONFIG_MAC_EMUMOUSEBTN=y
+CONFIG_NETDEVICES=y
+CONFIG_NET_CORE=y
+CONFIG_BONDING=m
+CONFIG_DUMMY=m
+CONFIG_EQUALIZER=m
+# CONFIG_NET_FC is not set
+CONFIG_MII=m
+CONFIG_IEEE802154_DRIVERS=m
+CONFIG_IEEE802154_FAKEHARD=m
+CONFIG_IEEE802154_FAKELB=m
+CONFIG_IFB=m
+CONFIG_NET_TEAM=m
+CONFIG_NET_TEAM_MODE_BROADCAST=m
+CONFIG_NET_TEAM_MODE_ROUNDROBIN=m
+CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m
+CONFIG_NET_TEAM_MODE_LOADBALANCE=m
+CONFIG_MACVLAN=m
+CONFIG_MACVTAP=m
+CONFIG_NETCONSOLE=m
+CONFIG_NETCONSOLE_DYNAMIC=y
+CONFIG_NETPOLL=y
+# CONFIG_NETPOLL_TRAP is not set
+CONFIG_NET_POLL_CONTROLLER=y
+CONFIG_RIONET=m
+CONFIG_RIONET_TX_SIZE=128
+CONFIG_RIONET_RX_SIZE=128
+CONFIG_TUN=m
+CONFIG_VETH=m
+CONFIG_VIRTIO_NET=m
+CONFIG_SUNGEM_PHY=m
+# CONFIG_ARCNET is not set
+CONFIG_ATM_DRIVERS=y
+# CONFIG_ATM_DUMMY is not set
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+# CONFIG_ATM_ZATM_DEBUG is not set
+CONFIG_ATM_NICSTAR=m
+# CONFIG_ATM_NICSTAR_USE_SUNI is not set
+# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_IDT77252_USE_SUNI=y
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+CONFIG_ATM_HORIZON=m
+# CONFIG_ATM_HORIZON_DEBUG is not set
+CONFIG_ATM_IA=m
+# CONFIG_ATM_IA_DEBUG is not set
+CONFIG_ATM_FORE200E=m
+# CONFIG_ATM_FORE200E_USE_TASKLET is not set
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_HE=m
+# CONFIG_ATM_HE_USE_SUNI is not set
+CONFIG_ATM_SOLOS=m
+
+#
+# CAIF transport drivers
+#
+CONFIG_CAIF_TTY=m
+CONFIG_CAIF_SPI_SLAVE=m
+CONFIG_CAIF_SPI_SYNC=y
+CONFIG_CAIF_HSI=m
+CONFIG_ETHERNET=y
+CONFIG_MDIO=m
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_3C589=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+CONFIG_NET_VENDOR_ADAPTEC=y
+CONFIG_ADAPTEC_STARFIRE=m
+CONFIG_NET_VENDOR_ALTEON=y
+CONFIG_ACENIC=m
+# CONFIG_ACENIC_OMIT_TIGON_I is not set
+CONFIG_NET_VENDOR_AMD=y
+CONFIG_AMD8111_ETH=m
+CONFIG_PCNET32=m
+CONFIG_PCMCIA_NMCLAN=m
+CONFIG_NET_VENDOR_ATHEROS=y
+CONFIG_ATL2=m
+CONFIG_ATL1=m
+CONFIG_ATL1E=m
+CONFIG_ATL1C=m
+CONFIG_NET_VENDOR_BROADCOM=y
+CONFIG_B44=m
+CONFIG_B44_PCI_AUTOSELECT=y
+CONFIG_B44_PCICORE_AUTOSELECT=y
+CONFIG_B44_PCI=y
+CONFIG_BNX2=m
+CONFIG_CNIC=m
+CONFIG_TIGON3=m
+CONFIG_BNX2X=m
+CONFIG_NET_VENDOR_BROCADE=y
+CONFIG_BNA=m
+CONFIG_NET_CALXEDA_XGMAC=m
+CONFIG_NET_VENDOR_CHELSIO=y
+CONFIG_CHELSIO_T1=m
+CONFIG_CHELSIO_T1_1G=y
+CONFIG_CHELSIO_T3=m
+CONFIG_CHELSIO_T4=m
+CONFIG_CHELSIO_T4VF=m
+CONFIG_NET_VENDOR_CISCO=y
+CONFIG_ENIC=m
+CONFIG_DNET=m
+CONFIG_NET_VENDOR_DEC=y
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_DE2104X_DSL=0
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+# CONFIG_TULIP_NAPI is not set
+CONFIG_DE4X5=m
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_ULI526X=m
+CONFIG_PCMCIA_XIRCOM=m
+CONFIG_NET_VENDOR_DLINK=y
+CONFIG_DE600=m
+CONFIG_DE620=m
+CONFIG_DL2K=m
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+CONFIG_NET_VENDOR_EMULEX=y
+CONFIG_BE2NET=m
+CONFIG_NET_VENDOR_EXAR=y
+CONFIG_S2IO=m
+CONFIG_VXGE=m
+# CONFIG_VXGE_DEBUG_TRACE_ALL is not set
+CONFIG_NET_VENDOR_FUJITSU=y
+CONFIG_PCMCIA_FMVJ18X=m
+CONFIG_NET_VENDOR_HP=y
+CONFIG_HP100=m
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E100=m
+CONFIG_E1000=m
+CONFIG_E1000E=m
+CONFIG_IGB=m
+CONFIG_IGB_DCA=y
+CONFIG_IGB_PTP=y
+CONFIG_IGBVF=m
+CONFIG_IXGB=m
+CONFIG_IXGBE=m
+CONFIG_IXGBE_HWMON=y
+CONFIG_IXGBE_DCA=y
+CONFIG_IXGBE_PTP=y
+CONFIG_IXGBEVF=m
+CONFIG_NET_VENDOR_I825XX=y
+CONFIG_ZNET=m
+CONFIG_IP1000=m
+CONFIG_JME=m
+CONFIG_NET_VENDOR_MARVELL=y
+CONFIG_SKGE=m
+# CONFIG_SKGE_DEBUG is not set
+CONFIG_SKGE_GENESIS=y
+CONFIG_SKY2=m
+# CONFIG_SKY2_DEBUG is not set
+CONFIG_NET_VENDOR_MELLANOX=y
+CONFIG_MLX4_EN=m
+CONFIG_MLX4_CORE=m
+CONFIG_MLX4_DEBUG=y
+CONFIG_NET_VENDOR_MICREL=y
+CONFIG_KS8842=m
+CONFIG_KS8851_MLL=m
+CONFIG_KSZ884X_PCI=m
+CONFIG_NET_VENDOR_MYRI=y
+CONFIG_MYRI10GE=m
+CONFIG_MYRI10GE_DCA=y
+CONFIG_FEALNX=m
+CONFIG_NET_VENDOR_NATSEMI=y
+CONFIG_NATSEMI=m
+CONFIG_NS83820=m
+CONFIG_NET_VENDOR_8390=y
+CONFIG_PCMCIA_AXNET=m
+CONFIG_NE2K_PCI=m
+CONFIG_PCMCIA_PCNET=m
+CONFIG_NET_VENDOR_NVIDIA=y
+CONFIG_FORCEDETH=m
+CONFIG_NET_VENDOR_OKI=y
+CONFIG_PCH_GBE=m
+CONFIG_PCH_PTP=y
+CONFIG_ETHOC=m
+CONFIG_NET_PACKET_ENGINE=y
+CONFIG_HAMACHI=m
+CONFIG_YELLOWFIN=m
+CONFIG_NET_VENDOR_QLOGIC=y
+CONFIG_QLA3XXX=m
+CONFIG_QLCNIC=m
+CONFIG_QLGE=m
+CONFIG_NETXEN_NIC=m
+CONFIG_NET_VENDOR_REALTEK=y
+CONFIG_ATP=m
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+# CONFIG_8139TOO_PIO is not set
+CONFIG_8139TOO_TUNE_TWISTER=y
+CONFIG_8139TOO_8129=y
+# CONFIG_8139_OLD_RX_RESET is not set
+CONFIG_R8169=m
+CONFIG_NET_VENDOR_RDC=y
+CONFIG_R6040=m
+CONFIG_NET_VENDOR_SEEQ=y
+CONFIG_SEEQ8005=m
+CONFIG_NET_VENDOR_SILAN=y
+CONFIG_SC92031=m
+CONFIG_NET_VENDOR_SIS=y
+CONFIG_SIS900=m
+CONFIG_SIS190=m
+CONFIG_SFC=m
+CONFIG_SFC_MTD=y
+CONFIG_SFC_MCDI_MON=y
+CONFIG_SFC_SRIOV=y
+CONFIG_NET_VENDOR_SMSC=y
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_EPIC100=m
+CONFIG_SMSC9420=m
+CONFIG_NET_VENDOR_STMICRO=y
+CONFIG_STMMAC_ETH=m
+# CONFIG_STMMAC_PLATFORM is not set
+CONFIG_STMMAC_PCI=y
+# CONFIG_STMMAC_DEBUG_FS is not set
+# CONFIG_STMMAC_DA is not set
+CONFIG_STMMAC_RING=y
+# CONFIG_STMMAC_CHAINED is not set
+CONFIG_NET_VENDOR_SUN=y
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNGEM=m
+CONFIG_CASSINI=m
+CONFIG_NIU=m
+CONFIG_NET_VENDOR_TEHUTI=y
+CONFIG_TEHUTI=m
+CONFIG_NET_VENDOR_TI=y
+CONFIG_TLAN=m
+CONFIG_NET_VENDOR_VIA=y
+CONFIG_VIA_RHINE=m
+# CONFIG_VIA_RHINE_MMIO is not set
+CONFIG_VIA_VELOCITY=m
+CONFIG_NET_VENDOR_WIZNET=y
+CONFIG_WIZNET_W5100=m
+CONFIG_WIZNET_W5300=m
+# CONFIG_WIZNET_BUS_DIRECT is not set
+# CONFIG_WIZNET_BUS_INDIRECT is not set
+CONFIG_WIZNET_BUS_ANY=y
+CONFIG_NET_VENDOR_XIRCOM=y
+CONFIG_PCMCIA_XIRC2PS=m
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+CONFIG_NET_SB1000=m
+CONFIG_PHYLIB=m
+
+#
+# MII PHY device drivers
+#
+CONFIG_AMD_PHY=m
+CONFIG_MARVELL_PHY=m
+CONFIG_DAVICOM_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_LXT_PHY=m
+CONFIG_CICADA_PHY=m
+CONFIG_VITESSE_PHY=m
+CONFIG_SMSC_PHY=m
+CONFIG_BROADCOM_PHY=m
+CONFIG_BCM87XX_PHY=m
+CONFIG_ICPLUS_PHY=m
+CONFIG_REALTEK_PHY=m
+CONFIG_NATIONAL_PHY=m
+CONFIG_STE10XP=m
+CONFIG_LSI_ET1011C_PHY=m
+CONFIG_MICREL_PHY=m
+# CONFIG_MDIO_BITBANG is not set
+CONFIG_PLIP=m
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOATM=m
+CONFIG_PPPOE=m
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_SLIP=m
+CONFIG_SLHC=m
+# CONFIG_SLIP_COMPRESSED is not set
+# CONFIG_SLIP_SMART is not set
+# CONFIG_SLIP_MODE_SLIP6 is not set
+
+#
+# USB Network Adapters
+#
+CONFIG_USB_CATC=m
+CONFIG_USB_KAWETH=m
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_EEM=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+CONFIG_USB_NET_GL620A=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_RNDIS_HOST=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_KC2190=y
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_USB_NET_CX82310_ETH=m
+CONFIG_USB_NET_KALMIA=m
+CONFIG_USB_NET_QMI_WWAN=m
+CONFIG_USB_HSO=m
+CONFIG_USB_NET_INT51X1=m
+CONFIG_USB_CDC_PHONET=m
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
+CONFIG_USB_VL600=m
+CONFIG_WLAN=y
+CONFIG_PCMCIA_RAYCS=m
+CONFIG_LIBERTAS_THINFIRM=m
+# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set
+CONFIG_LIBERTAS_THINFIRM_USB=m
+CONFIG_AIRO=m
+CONFIG_ATMEL=m
+CONFIG_PCI_ATMEL=m
+CONFIG_PCMCIA_ATMEL=m
+CONFIG_AT76C50X_USB=m
+CONFIG_AIRO_CS=m
+CONFIG_PCMCIA_WL3501=m
+CONFIG_PRISM54=m
+CONFIG_USB_ZD1201=m
+CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_RTL8180=m
+CONFIG_RTL8187=m
+CONFIG_RTL8187_LEDS=y
+CONFIG_ADM8211=m
+# CONFIG_MAC80211_HWSIM is not set
+CONFIG_MWL8K=m
+CONFIG_ATH_COMMON=m
+# CONFIG_ATH_DEBUG is not set
+CONFIG_ATH5K=m
+# CONFIG_ATH5K_DEBUG is not set
+# CONFIG_ATH5K_TRACER is not set
+CONFIG_ATH5K_PCI=y
+CONFIG_ATH9K_HW=m
+CONFIG_ATH9K_COMMON=m
+CONFIG_ATH9K_BTCOEX_SUPPORT=y
+CONFIG_ATH9K=m
+CONFIG_ATH9K_PCI=y
+CONFIG_ATH9K_AHB=y
+# CONFIG_ATH9K_DEBUGFS is not set
+CONFIG_ATH9K_RATE_CONTROL=y
+CONFIG_ATH9K_HTC=m
+# CONFIG_ATH9K_HTC_DEBUGFS is not set
+CONFIG_CARL9170=m
+CONFIG_CARL9170_LEDS=y
+CONFIG_CARL9170_WPC=y
+# CONFIG_CARL9170_HWRNG is not set
+CONFIG_ATH6KL=m
+CONFIG_ATH6KL_SDIO=m
+CONFIG_ATH6KL_USB=m
+# CONFIG_ATH6KL_DEBUG is not set
+CONFIG_B43=m
+CONFIG_B43_BCMA=y
+# CONFIG_B43_BCMA_EXTRA is not set
+CONFIG_B43_SSB=y
+CONFIG_B43_PCI_AUTOSELECT=y
+CONFIG_B43_PCICORE_AUTOSELECT=y
+CONFIG_B43_PCMCIA=y
+CONFIG_B43_SDIO=y
+CONFIG_B43_BCMA_PIO=y
+CONFIG_B43_PIO=y
+CONFIG_B43_PHY_N=y
+CONFIG_B43_PHY_LP=y
+CONFIG_B43_PHY_HT=y
+CONFIG_B43_LEDS=y
+CONFIG_B43_HWRNG=y
+# CONFIG_B43_DEBUG is not set
+CONFIG_B43LEGACY=m
+CONFIG_B43LEGACY_PCI_AUTOSELECT=y
+CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
+CONFIG_B43LEGACY_LEDS=y
+CONFIG_B43LEGACY_HWRNG=y
+# CONFIG_B43LEGACY_DEBUG is not set
+CONFIG_B43LEGACY_DMA=y
+CONFIG_B43LEGACY_PIO=y
+CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
+# CONFIG_B43LEGACY_DMA_MODE is not set
+# CONFIG_B43LEGACY_PIO_MODE is not set
+CONFIG_BRCMUTIL=m
+CONFIG_BRCMSMAC=m
+CONFIG_BRCMFMAC=m
+CONFIG_BRCMFMAC_SDIO=y
+# CONFIG_BRCMFMAC_SDIO_OOB is not set
+CONFIG_BRCMFMAC_USB=y
+# CONFIG_BRCMDBG is not set
+CONFIG_HOSTAP=m
+CONFIG_HOSTAP_FIRMWARE=y
+# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
+CONFIG_HOSTAP_PLX=m
+CONFIG_HOSTAP_PCI=m
+CONFIG_HOSTAP_CS=m
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+# CONFIG_IPW2100_DEBUG is not set
+CONFIG_IPW2200=m
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
+# CONFIG_IPW2200_DEBUG is not set
+CONFIG_LIBIPW=m
+# CONFIG_LIBIPW_DEBUG is not set
+CONFIG_IWLWIFI=m
+CONFIG_IWLDVM=m
+
+#
+# Debugging Options
+#
+# CONFIG_IWLWIFI_DEBUG is not set
+CONFIG_IWLWIFI_DEVICE_TRACING=y
+# CONFIG_IWLWIFI_P2P is not set
+# CONFIG_IWLWIFI_EXPERIMENTAL_MFP is not set
+CONFIG_IWLEGACY=m
+CONFIG_IWL4965=m
+CONFIG_IWL3945=m
+
+#
+# iwl3945 / iwl4965 Debugging Options
+#
+# CONFIG_IWLEGACY_DEBUG is not set
+CONFIG_LIBERTAS=m
+CONFIG_LIBERTAS_USB=m
+CONFIG_LIBERTAS_CS=m
+CONFIG_LIBERTAS_SDIO=m
+# CONFIG_LIBERTAS_DEBUG is not set
+CONFIG_LIBERTAS_MESH=y
+CONFIG_HERMES=m
+CONFIG_HERMES_PRISM=y
+CONFIG_HERMES_CACHE_FW_ON_INIT=y
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_NORTEL_HERMES=m
+CONFIG_PCI_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+CONFIG_PCMCIA_SPECTRUM=m
+CONFIG_ORINOCO_USB=m
+CONFIG_P54_COMMON=m
+CONFIG_P54_USB=m
+CONFIG_P54_PCI=m
+CONFIG_P54_LEDS=y
+CONFIG_RT2X00=m
+CONFIG_RT2400PCI=m
+CONFIG_RT2500PCI=m
+CONFIG_RT61PCI=m
+CONFIG_RT2800PCI=m
+CONFIG_RT2800PCI_RT33XX=y
+CONFIG_RT2800PCI_RT35XX=y
+CONFIG_RT2800PCI_RT53XX=y
+CONFIG_RT2800PCI_RT3290=y
+CONFIG_RT2500USB=m
+CONFIG_RT73USB=m
+CONFIG_RT2800USB=m
+CONFIG_RT2800USB_RT33XX=y
+CONFIG_RT2800USB_RT35XX=y
+CONFIG_RT2800USB_RT53XX=y
+CONFIG_RT2800USB_UNKNOWN=y
+CONFIG_RT2800_LIB=m
+CONFIG_RT2X00_LIB_PCI=m
+CONFIG_RT2X00_LIB_USB=m
+CONFIG_RT2X00_LIB=m
+CONFIG_RT2X00_LIB_FIRMWARE=y
+CONFIG_RT2X00_LIB_CRYPTO=y
+CONFIG_RT2X00_LIB_LEDS=y
+# CONFIG_RT2X00_DEBUG is not set
+CONFIG_RTL8192CE=m
+CONFIG_RTL8192SE=m
+CONFIG_RTL8192DE=m
+CONFIG_RTL8192CU=m
+CONFIG_RTLWIFI=m
+# CONFIG_RTLWIFI_DEBUG is not set
+CONFIG_RTL8192C_COMMON=m
+CONFIG_WL_TI=y
+CONFIG_WL1251=m
+CONFIG_WL1251_SDIO=m
+CONFIG_WL12XX=m
+CONFIG_WL18XX=m
+CONFIG_WLCORE=m
+CONFIG_WLCORE_SDIO=m
+CONFIG_WL12XX_PLATFORM_DATA=y
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_PCIE=m
+CONFIG_MWIFIEX_USB=m
+
+#
+# WiMAX Wireless Broadband devices
+#
+CONFIG_WIMAX_I2400M=m
+CONFIG_WIMAX_I2400M_USB=m
+CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8
+# CONFIG_WAN is not set
+CONFIG_XEN_NETDEV_FRONTEND=m
+CONFIG_XEN_NETDEV_BACKEND=m
+CONFIG_VMXNET3=m
+CONFIG_HYPERV_NET=m
+CONFIG_ISDN=y
+CONFIG_ISDN_I4L=m
+CONFIG_ISDN_PPP=y
+CONFIG_ISDN_PPP_VJ=y
+CONFIG_ISDN_MPP=y
+CONFIG_IPPP_FILTER=y
+CONFIG_ISDN_PPP_BSDCOMP=m
+CONFIG_ISDN_AUDIO=y
+CONFIG_ISDN_TTY_FAX=y
+
+#
+# ISDN feature submodules
+#
+CONFIG_ISDN_DIVERSION=m
+
+#
+# ISDN4Linux hardware drivers
+#
+
+#
+# Passive cards
+#
+CONFIG_ISDN_DRV_HISAX=m
+
+#
+# D-channel protocol features
+#
+CONFIG_HISAX_EURO=y
+CONFIG_DE_AOC=y
+# CONFIG_HISAX_NO_SENDCOMPLETE is not set
+# CONFIG_HISAX_NO_LLC is not set
+# CONFIG_HISAX_NO_KEYPAD is not set
+CONFIG_HISAX_1TR6=y
+CONFIG_HISAX_NI1=y
+CONFIG_HISAX_MAX_CARDS=8
+
+#
+# HiSax supported cards
+#
+CONFIG_HISAX_16_3=y
+CONFIG_HISAX_TELESPCI=y
+CONFIG_HISAX_S0BOX=y
+CONFIG_HISAX_FRITZPCI=y
+CONFIG_HISAX_AVM_A1_PCMCIA=y
+CONFIG_HISAX_ELSA=y
+CONFIG_HISAX_DIEHLDIVA=y
+CONFIG_HISAX_SEDLBAUER=y
+CONFIG_HISAX_NETJET=y
+CONFIG_HISAX_NETJET_U=y
+CONFIG_HISAX_NICCY=y
+CONFIG_HISAX_BKM_A4T=y
+CONFIG_HISAX_SCT_QUADRO=y
+CONFIG_HISAX_GAZEL=y
+CONFIG_HISAX_HFC_PCI=y
+CONFIG_HISAX_W6692=y
+CONFIG_HISAX_HFC_SX=y
+CONFIG_HISAX_ENTERNOW_PCI=y
+# CONFIG_HISAX_DEBUG is not set
+
+#
+# HiSax PCMCIA card service modules
+#
+CONFIG_HISAX_SEDLBAUER_CS=m
+CONFIG_HISAX_ELSA_CS=m
+CONFIG_HISAX_AVM_A1_CS=m
+CONFIG_HISAX_TELES_CS=m
+
+#
+# HiSax sub driver modules
+#
+CONFIG_HISAX_ST5481=m
+CONFIG_HISAX_HFCUSB=m
+CONFIG_HISAX_HFC4S8S=m
+CONFIG_HISAX_FRITZ_PCIPNP=m
+
+#
+# Active cards
+#
+CONFIG_ISDN_CAPI=m
+CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
+CONFIG_CAPI_TRACE=y
+CONFIG_ISDN_CAPI_MIDDLEWARE=y
+CONFIG_ISDN_CAPI_CAPI20=m
+CONFIG_ISDN_CAPI_CAPIDRV=m
+
+#
+# CAPI hardware drivers
+#
+CONFIG_CAPI_AVM=y
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
+CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
+CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
+CONFIG_CAPI_EICON=y
+CONFIG_ISDN_DIVAS=m
+CONFIG_ISDN_DIVAS_BRIPCI=y
+CONFIG_ISDN_DIVAS_PRIPCI=y
+CONFIG_ISDN_DIVAS_DIVACAPI=m
+CONFIG_ISDN_DIVAS_USERIDI=m
+CONFIG_ISDN_DIVAS_MAINT=m
+CONFIG_ISDN_DRV_GIGASET=m
+CONFIG_GIGASET_CAPI=y
+# CONFIG_GIGASET_I4L is not set
+# CONFIG_GIGASET_DUMMYLL is not set
+CONFIG_GIGASET_BASE=m
+CONFIG_GIGASET_M105=m
+CONFIG_GIGASET_M101=m
+# CONFIG_GIGASET_DEBUG is not set
+CONFIG_HYSDN=m
+CONFIG_HYSDN_CAPI=y
+CONFIG_MISDN=m
+CONFIG_MISDN_DSP=m
+CONFIG_MISDN_L1OIP=m
+
+#
+# mISDN hardware drivers
+#
+CONFIG_MISDN_HFCPCI=m
+CONFIG_MISDN_HFCMULTI=m
+CONFIG_MISDN_HFCUSB=m
+CONFIG_MISDN_AVMFRITZ=m
+CONFIG_MISDN_SPEEDFAX=m
+CONFIG_MISDN_INFINEON=m
+CONFIG_MISDN_W6692=m
+CONFIG_MISDN_NETJET=m
+CONFIG_MISDN_IPAC=m
+CONFIG_MISDN_ISAR=m
+CONFIG_ISDN_HDLC=m
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+CONFIG_INPUT_FF_MEMLESS=m
+CONFIG_INPUT_POLLDEV=m
+CONFIG_INPUT_SPARSEKMAP=m
+CONFIG_INPUT_MATRIXKMAP=m
+
+#
+# Userland interfaces
+#
+CONFIG_INPUT_MOUSEDEV=y
+CONFIG_INPUT_MOUSEDEV_PSAUX=y
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+CONFIG_INPUT_JOYDEV=m
+CONFIG_INPUT_EVDEV=m
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ADP5588=m
+CONFIG_KEYBOARD_ADP5589=m
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_QT1070=m
+CONFIG_KEYBOARD_QT2160=m
+# CONFIG_KEYBOARD_LKKBD is not set
+# CONFIG_KEYBOARD_GPIO is not set
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+CONFIG_KEYBOARD_TCA6416=m
+CONFIG_KEYBOARD_TCA8418=m
+CONFIG_KEYBOARD_MATRIX=m
+# CONFIG_KEYBOARD_LM8323 is not set
+CONFIG_KEYBOARD_LM8333=m
+# CONFIG_KEYBOARD_MAX7359 is not set
+CONFIG_KEYBOARD_MCS=m
+CONFIG_KEYBOARD_MPR121=m
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_PS2_ALPS=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_LIFEBOOK=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+CONFIG_MOUSE_PS2_ELANTECH=y
+CONFIG_MOUSE_PS2_SENTELIC=y
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
+CONFIG_MOUSE_SERIAL=y
+CONFIG_MOUSE_APPLETOUCH=m
+CONFIG_MOUSE_BCM5974=m
+CONFIG_MOUSE_VSXXXAA=m
+# CONFIG_MOUSE_GPIO is not set
+CONFIG_MOUSE_SYNAPTICS_I2C=m
+CONFIG_MOUSE_SYNAPTICS_USB=m
+CONFIG_INPUT_JOYSTICK=y
+CONFIG_JOYSTICK_ANALOG=m
+CONFIG_JOYSTICK_A3D=m
+CONFIG_JOYSTICK_ADI=m
+CONFIG_JOYSTICK_COBRA=m
+CONFIG_JOYSTICK_GF2K=m
+CONFIG_JOYSTICK_GRIP=m
+CONFIG_JOYSTICK_GRIP_MP=m
+CONFIG_JOYSTICK_GUILLEMOT=m
+CONFIG_JOYSTICK_INTERACT=m
+CONFIG_JOYSTICK_SIDEWINDER=m
+CONFIG_JOYSTICK_TMDC=m
+CONFIG_JOYSTICK_IFORCE=m
+CONFIG_JOYSTICK_IFORCE_USB=y
+CONFIG_JOYSTICK_IFORCE_232=y
+CONFIG_JOYSTICK_WARRIOR=m
+CONFIG_JOYSTICK_MAGELLAN=m
+CONFIG_JOYSTICK_SPACEORB=m
+CONFIG_JOYSTICK_SPACEBALL=m
+CONFIG_JOYSTICK_STINGER=m
+CONFIG_JOYSTICK_TWIDJOY=m
+CONFIG_JOYSTICK_ZHENHUA=m
+CONFIG_JOYSTICK_DB9=m
+CONFIG_JOYSTICK_GAMECON=m
+CONFIG_JOYSTICK_TURBOGRAFX=m
+CONFIG_JOYSTICK_AS5011=m
+CONFIG_JOYSTICK_JOYDUMP=m
+CONFIG_JOYSTICK_XPAD=m
+CONFIG_JOYSTICK_XPAD_FF=y
+CONFIG_JOYSTICK_XPAD_LEDS=y
+CONFIG_JOYSTICK_WALKERA0701=m
+CONFIG_INPUT_TABLET=y
+CONFIG_TABLET_USB_ACECAD=m
+CONFIG_TABLET_USB_AIPTEK=m
+CONFIG_TABLET_USB_GTCO=m
+CONFIG_TABLET_USB_HANWANG=m
+CONFIG_TABLET_USB_KBTAB=m
+CONFIG_TABLET_USB_WACOM=m
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_AD7879=m
+CONFIG_TOUCHSCREEN_AD7879_I2C=m
+CONFIG_TOUCHSCREEN_ATMEL_MXT=m
+CONFIG_TOUCHSCREEN_AUO_PIXCIR=m
+CONFIG_TOUCHSCREEN_BU21013=m
+CONFIG_TOUCHSCREEN_CY8CTMG110=m
+CONFIG_TOUCHSCREEN_CYTTSP_CORE=m
+CONFIG_TOUCHSCREEN_CYTTSP_I2C=m
+CONFIG_TOUCHSCREEN_DYNAPRO=m
+CONFIG_TOUCHSCREEN_HAMPSHIRE=m
+CONFIG_TOUCHSCREEN_EETI=m
+CONFIG_TOUCHSCREEN_EGALAX=m
+CONFIG_TOUCHSCREEN_FUJITSU=m
+CONFIG_TOUCHSCREEN_ILI210X=m
+CONFIG_TOUCHSCREEN_GUNZE=m
+CONFIG_TOUCHSCREEN_ELO=m
+CONFIG_TOUCHSCREEN_WACOM_W8001=m
+CONFIG_TOUCHSCREEN_WACOM_I2C=m
+CONFIG_TOUCHSCREEN_MAX11801=m
+CONFIG_TOUCHSCREEN_MCS5000=m
+CONFIG_TOUCHSCREEN_MMS114=m
+CONFIG_TOUCHSCREEN_MTOUCH=m
+CONFIG_TOUCHSCREEN_INEXIO=m
+CONFIG_TOUCHSCREEN_MK712=m
+CONFIG_TOUCHSCREEN_PENMOUNT=m
+CONFIG_TOUCHSCREEN_EDT_FT5X06=m
+CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
+CONFIG_TOUCHSCREEN_TOUCHWIN=m
+CONFIG_TOUCHSCREEN_UCB1400=m
+CONFIG_TOUCHSCREEN_PIXCIR=m
+CONFIG_TOUCHSCREEN_WM97XX=m
+CONFIG_TOUCHSCREEN_WM9705=y
+CONFIG_TOUCHSCREEN_WM9712=y
+CONFIG_TOUCHSCREEN_WM9713=y
+CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
+CONFIG_TOUCHSCREEN_MC13783=m
+CONFIG_TOUCHSCREEN_USB_EGALAX=y
+CONFIG_TOUCHSCREEN_USB_PANJIT=y
+CONFIG_TOUCHSCREEN_USB_3M=y
+CONFIG_TOUCHSCREEN_USB_ITM=y
+CONFIG_TOUCHSCREEN_USB_ETURBO=y
+CONFIG_TOUCHSCREEN_USB_GUNZE=y
+CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y
+CONFIG_TOUCHSCREEN_USB_IRTOUCH=y
+CONFIG_TOUCHSCREEN_USB_IDEALTEK=y
+CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y
+CONFIG_TOUCHSCREEN_USB_GOTOP=y
+CONFIG_TOUCHSCREEN_USB_JASTEC=y
+CONFIG_TOUCHSCREEN_USB_ELO=y
+CONFIG_TOUCHSCREEN_USB_E2I=y
+CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y
+CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y
+CONFIG_TOUCHSCREEN_USB_NEXIO=y
+CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y
+CONFIG_TOUCHSCREEN_TOUCHIT213=m
+CONFIG_TOUCHSCREEN_TSC_SERIO=m
+CONFIG_TOUCHSCREEN_TSC2007=m
+CONFIG_TOUCHSCREEN_ST1232=m
+CONFIG_TOUCHSCREEN_TPS6507X=m
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_AD714X=m
+CONFIG_INPUT_AD714X_I2C=m
+CONFIG_INPUT_BMA150=m
+CONFIG_INPUT_PCSPKR=m
+CONFIG_INPUT_MC13783_PWRBUTTON=m
+CONFIG_INPUT_MMA8450=m
+CONFIG_INPUT_MPU3050=m
+CONFIG_INPUT_APANEL=m
+CONFIG_INPUT_GP2A=m
+# CONFIG_INPUT_GPIO_TILT_POLLED is not set
+CONFIG_INPUT_ATLAS_BTNS=m
+CONFIG_INPUT_ATI_REMOTE2=m
+CONFIG_INPUT_KEYSPAN_REMOTE=m
+CONFIG_INPUT_KXTJ9=m
+# CONFIG_INPUT_KXTJ9_POLLED_MODE is not set
+CONFIG_INPUT_POWERMATE=m
+CONFIG_INPUT_YEALINK=m
+CONFIG_INPUT_CM109=m
+CONFIG_INPUT_UINPUT=m
+CONFIG_INPUT_PCF50633_PMU=m
+CONFIG_INPUT_PCF8574=m
+CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
+CONFIG_INPUT_ADXL34X=m
+CONFIG_INPUT_ADXL34X_I2C=m
+CONFIG_INPUT_CMA3000=m
+CONFIG_INPUT_CMA3000_I2C=m
+CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=m
+CONFIG_SERIO_CT82C710=m
+CONFIG_SERIO_PARKBD=m
+CONFIG_SERIO_PCIPS2=m
+CONFIG_SERIO_LIBPS2=y
+CONFIG_SERIO_RAW=m
+CONFIG_SERIO_ALTERA_PS2=m
+CONFIG_SERIO_PS2MULT=m
+CONFIG_GAMEPORT=m
+CONFIG_GAMEPORT_NS558=m
+CONFIG_GAMEPORT_L4=m
+CONFIG_GAMEPORT_EMU10K1=m
+CONFIG_GAMEPORT_FM801=m
+
+#
+# Character devices
+#
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_CONSOLE_SLEEP=y
+CONFIG_HW_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
+# CONFIG_LEGACY_PTYS is not set
+CONFIG_SERIAL_NONSTANDARD=y
+CONFIG_ROCKETPORT=m
+CONFIG_CYCLADES=m
+# CONFIG_CYZ_INTR is not set
+# CONFIG_MOXA_INTELLIO is not set
+# CONFIG_MOXA_SMARTIO is not set
+CONFIG_SYNCLINK=m
+CONFIG_SYNCLINKMP=m
+# CONFIG_SYNCLINK_GT is not set
+CONFIG_NOZOMI=m
+# CONFIG_ISI is not set
+CONFIG_N_HDLC=m
+CONFIG_N_GSM=m
+CONFIG_TRACE_ROUTER=m
+CONFIG_TRACE_SINK=m
+# CONFIG_STALDRV is not set
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_SERIAL_8250_PCI=y
+CONFIG_SERIAL_8250_PNP=y
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=32
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+
+#
+# Non-8250 serial port support
+#
+CONFIG_SERIAL_MFD_HSU=m
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+CONFIG_SERIAL_JSM=m
+# CONFIG_SERIAL_TIMBERDALE is not set
+CONFIG_SERIAL_ALTERA_JTAGUART=m
+CONFIG_SERIAL_ALTERA_UART=m
+CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4
+CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200
+CONFIG_SERIAL_PCH_UART=m
+CONFIG_SERIAL_XILINX_PS_UART=m
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+CONFIG_PPDEV=m
+CONFIG_HVC_DRIVER=y
+CONFIG_HVC_IRQ=y
+CONFIG_HVC_XEN=y
+CONFIG_HVC_XEN_FRONTEND=y
+CONFIG_VIRTIO_CONSOLE=m
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+CONFIG_HW_RANDOM=y
+CONFIG_HW_RANDOM_TIMERIOMEM=m
+CONFIG_HW_RANDOM_INTEL=m
+CONFIG_HW_RANDOM_AMD=m
+CONFIG_HW_RANDOM_VIA=m
+CONFIG_HW_RANDOM_VIRTIO=m
+CONFIG_NVRAM=m
+CONFIG_R3964=m
+CONFIG_APPLICOM=m
+
+#
+# PCMCIA character devices
+#
+CONFIG_SYNCLINK_CS=m
+CONFIG_CARDMAN_4000=m
+CONFIG_CARDMAN_4040=m
+CONFIG_IPWIRELESS=m
+CONFIG_MWAVE=m
+# CONFIG_RAW_DRIVER is not set
+CONFIG_HPET=y
+CONFIG_HPET_MMAP=y
+CONFIG_HANGCHECK_TIMER=m
+CONFIG_TCG_TPM=m
+CONFIG_TCG_TIS=m
+CONFIG_TCG_NSC=m
+CONFIG_TCG_ATMEL=m
+CONFIG_TCG_INFINEON=m
+CONFIG_TELCLOCK=m
+CONFIG_I2C=m
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=m
+# CONFIG_I2C_MUX is not set
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_SMBUS=m
+CONFIG_I2C_ALGOBIT=m
+CONFIG_I2C_ALGOPCA=m
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# PC SMBus host controller drivers
+#
+CONFIG_I2C_ALI1535=m
+CONFIG_I2C_ALI1563=m
+CONFIG_I2C_ALI15X3=m
+CONFIG_I2C_AMD756=m
+CONFIG_I2C_AMD756_S4882=m
+CONFIG_I2C_AMD8111=m
+CONFIG_I2C_I801=m
+CONFIG_I2C_ISCH=m
+CONFIG_I2C_PIIX4=m
+CONFIG_I2C_NFORCE2=m
+CONFIG_I2C_NFORCE2_S4985=m
+CONFIG_I2C_SIS5595=m
+CONFIG_I2C_SIS630=m
+CONFIG_I2C_SIS96X=m
+CONFIG_I2C_VIA=m
+CONFIG_I2C_VIAPRO=m
+
+#
+# ACPI drivers
+#
+CONFIG_I2C_SCMI=m
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+CONFIG_I2C_DESIGNWARE_CORE=m
+CONFIG_I2C_DESIGNWARE_PCI=m
+CONFIG_I2C_EG20T=m
+# CONFIG_I2C_GPIO is not set
+CONFIG_I2C_INTEL_MID=m
+CONFIG_I2C_OCORES=m
+CONFIG_I2C_PCA_PLATFORM=m
+# CONFIG_I2C_PXA_PCI is not set
+CONFIG_I2C_SIMTEC=m
+CONFIG_I2C_XILINX=m
+
+#
+# External I2C/SMBus adapter drivers
+#
+CONFIG_I2C_DIOLAN_U2C=m
+CONFIG_I2C_PARPORT=m
+CONFIG_I2C_PARPORT_LIGHT=m
+CONFIG_I2C_TAOS_EVM=m
+CONFIG_I2C_TINY_USB=m
+
+#
+# Other I2C/SMBus bus drivers
+#
+# CONFIG_I2C_STUB is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# CONFIG_SPI is not set
+# CONFIG_HSI is not set
+
+#
+# PPS support
+#
+CONFIG_PPS=m
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+CONFIG_PPS_CLIENT_KTIMER=m
+CONFIG_PPS_CLIENT_LDISC=m
+CONFIG_PPS_CLIENT_PARPORT=m
+CONFIG_PPS_CLIENT_GPIO=m
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+CONFIG_PTP_1588_CLOCK=m
+CONFIG_DP83640_PHY=m
+CONFIG_PTP_1588_CLOCK_PCH=m
+CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
+CONFIG_GPIOLIB=y
+# CONFIG_DEBUG_GPIO is not set
+CONFIG_GPIO_SYSFS=y
+
+#
+# Memory mapped GPIO drivers:
+#
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_IT8761E is not set
+CONFIG_GPIO_SCH=m
+CONFIG_GPIO_ICH=m
+# CONFIG_GPIO_VX855 is not set
+
+#
+# I2C GPIO expanders:
+#
+CONFIG_GPIO_ARIZONA=m
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_ADP5588 is not set
+
+#
+# PCI GPIO expanders:
+#
+CONFIG_GPIO_CS5535=m
+CONFIG_GPIO_AMD8111=m
+CONFIG_GPIO_LANGWELL=y
+# CONFIG_GPIO_PCH is not set
+# CONFIG_GPIO_ML_IOH is not set
+# CONFIG_GPIO_RDC321X is not set
+
+#
+# SPI GPIO expanders:
+#
+# CONFIG_GPIO_MCP23S08 is not set
+
+#
+# AC97 GPIO expanders:
+#
+CONFIG_GPIO_UCB1400=y
+
+#
+# MODULbus GPIO expanders:
+#
+# CONFIG_W1 is not set
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+CONFIG_PDA_POWER=m
+CONFIG_TEST_POWER=m
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_BATTERY_SBS is not set
+# CONFIG_BATTERY_BQ27x00 is not set
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_PCF50633 is not set
+# CONFIG_CHARGER_ISP1704 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_SMB347 is not set
+CONFIG_POWER_AVS=y
+CONFIG_HWMON=y
+CONFIG_HWMON_VID=m
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
+CONFIG_SENSORS_ABITUGURU=m
+CONFIG_SENSORS_ABITUGURU3=m
+CONFIG_SENSORS_AD7414=m
+CONFIG_SENSORS_AD7418=m
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1029=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_ADM9240=m
+CONFIG_SENSORS_ADT7411=m
+CONFIG_SENSORS_ADT7462=m
+CONFIG_SENSORS_ADT7470=m
+CONFIG_SENSORS_ADT7475=m
+CONFIG_SENSORS_ASC7621=m
+CONFIG_SENSORS_K8TEMP=m
+CONFIG_SENSORS_K10TEMP=m
+CONFIG_SENSORS_FAM15H_POWER=m
+CONFIG_SENSORS_ASB100=m
+CONFIG_SENSORS_ATXP1=m
+CONFIG_SENSORS_DS620=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_I5K_AMB=m
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_F71882FG=m
+CONFIG_SENSORS_F75375S=m
+CONFIG_SENSORS_FSCHMD=m
+CONFIG_SENSORS_G760A=m
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+# CONFIG_SENSORS_GPIO_FAN is not set
+CONFIG_SENSORS_HIH6130=m
+CONFIG_SENSORS_CORETEMP=m
+CONFIG_SENSORS_IBMAEM=m
+CONFIG_SENSORS_IBMPEX=m
+CONFIG_SENSORS_IT87=m
+CONFIG_SENSORS_JC42=m
+CONFIG_SENSORS_LINEAGE=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM73=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_LM93=m
+CONFIG_SENSORS_LTC4151=m
+CONFIG_SENSORS_LTC4215=m
+CONFIG_SENSORS_LTC4245=m
+CONFIG_SENSORS_LTC4261=m
+CONFIG_SENSORS_LM95241=m
+CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_MAX16065=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_MAX1668=m
+CONFIG_SENSORS_MAX6639=m
+CONFIG_SENSORS_MAX6642=m
+CONFIG_SENSORS_MAX6650=m
+CONFIG_SENSORS_MCP3021=m
+CONFIG_SENSORS_NTC_THERMISTOR=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PC87427=m
+CONFIG_SENSORS_PCF8591=m
+CONFIG_PMBUS=m
+CONFIG_SENSORS_PMBUS=m
+CONFIG_SENSORS_ADM1275=m
+CONFIG_SENSORS_LM25066=m
+CONFIG_SENSORS_LTC2978=m
+CONFIG_SENSORS_MAX16064=m
+CONFIG_SENSORS_MAX34440=m
+CONFIG_SENSORS_MAX8688=m
+CONFIG_SENSORS_UCD9000=m
+CONFIG_SENSORS_UCD9200=m
+CONFIG_SENSORS_ZL6100=m
+CONFIG_SENSORS_SHT15=m
+CONFIG_SENSORS_SHT21=m
+CONFIG_SENSORS_SIS5595=m
+CONFIG_SENSORS_SMM665=m
+CONFIG_SENSORS_DME1737=m
+CONFIG_SENSORS_EMC1403=m
+CONFIG_SENSORS_EMC2103=m
+CONFIG_SENSORS_EMC6W201=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47M192=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_SCH56XX_COMMON=m
+CONFIG_SENSORS_SCH5627=m
+CONFIG_SENSORS_SCH5636=m
+CONFIG_SENSORS_ADS1015=m
+CONFIG_SENSORS_ADS7828=m
+CONFIG_SENSORS_AMC6821=m
+CONFIG_SENSORS_INA2XX=m
+CONFIG_SENSORS_THMC50=m
+CONFIG_SENSORS_TMP102=m
+CONFIG_SENSORS_TMP401=m
+CONFIG_SENSORS_TMP421=m
+CONFIG_SENSORS_VIA_CPUTEMP=m
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_VT1211=m
+CONFIG_SENSORS_VT8231=m
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83791D=m
+CONFIG_SENSORS_W83792D=m
+CONFIG_SENSORS_W83793=m
+CONFIG_SENSORS_W83795=m
+# CONFIG_SENSORS_W83795_FANCTRL is not set
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83L786NG=m
+CONFIG_SENSORS_W83627HF=m
+CONFIG_SENSORS_W83627EHF=m
+CONFIG_SENSORS_APPLESMC=m
+CONFIG_SENSORS_MC13783_ADC=m
+
+#
+# ACPI drivers
+#
+CONFIG_SENSORS_ACPI_POWER=m
+CONFIG_SENSORS_ATK0110=m
+CONFIG_THERMAL=y
+CONFIG_THERMAL_HWMON=y
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_CORE=y
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+
+#
+# Watchdog Device Drivers
+#
+CONFIG_SOFT_WATCHDOG=m
+CONFIG_ACQUIRE_WDT=m
+CONFIG_ADVANTECH_WDT=m
+CONFIG_ALIM1535_WDT=m
+CONFIG_ALIM7101_WDT=m
+CONFIG_F71808E_WDT=m
+CONFIG_SP5100_TCO=m
+CONFIG_GEODE_WDT=m
+CONFIG_SC520_WDT=m
+CONFIG_SBC_FITPC2_WATCHDOG=m
+CONFIG_EUROTECH_WDT=m
+CONFIG_IB700_WDT=m
+CONFIG_IBMASR=m
+CONFIG_WAFER_WDT=m
+CONFIG_I6300ESB_WDT=m
+CONFIG_IE6XX_WDT=m
+CONFIG_ITCO_WDT=m
+CONFIG_ITCO_VENDOR_SUPPORT=y
+CONFIG_IT8712F_WDT=m
+CONFIG_IT87_WDT=m
+CONFIG_HP_WATCHDOG=m
+CONFIG_HPWDT_NMI_DECODING=y
+CONFIG_SC1200_WDT=m
+CONFIG_PC87413_WDT=m
+CONFIG_NV_TCO=m
+CONFIG_60XX_WDT=m
+CONFIG_SBC8360_WDT=m
+CONFIG_CPU5_WDT=m
+CONFIG_SMSC_SCH311X_WDT=m
+CONFIG_SMSC37B787_WDT=m
+CONFIG_VIA_WDT=m
+CONFIG_W83627HF_WDT=m
+CONFIG_W83697HF_WDT=m
+CONFIG_W83697UG_WDT=m
+CONFIG_W83877F_WDT=m
+CONFIG_W83977F_WDT=m
+CONFIG_MACHZ_WDT=m
+CONFIG_SBC_EPX_C3_WATCHDOG=m
+CONFIG_XEN_WDT=m
+
+#
+# PCI-based Watchdog Cards
+#
+CONFIG_PCIPCWATCHDOG=m
+CONFIG_WDTPCI=m
+
+#
+# USB-based Watchdog Cards
+#
+CONFIG_USBPCWATCHDOG=m
+CONFIG_SSB_POSSIBLE=y
+
+#
+# Sonics Silicon Backplane
+#
+CONFIG_SSB=m
+CONFIG_SSB_SPROM=y
+CONFIG_SSB_BLOCKIO=y
+CONFIG_SSB_PCIHOST_POSSIBLE=y
+CONFIG_SSB_PCIHOST=y
+CONFIG_SSB_B43_PCI_BRIDGE=y
+CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
+CONFIG_SSB_PCMCIAHOST=y
+CONFIG_SSB_SDIOHOST_POSSIBLE=y
+CONFIG_SSB_SDIOHOST=y
+# CONFIG_SSB_DEBUG is not set
+CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
+CONFIG_SSB_DRIVER_PCICORE=y
+CONFIG_BCMA_POSSIBLE=y
+
+#
+# Broadcom specific AMBA
+#
+CONFIG_BCMA=m
+CONFIG_BCMA_BLOCKIO=y
+CONFIG_BCMA_HOST_PCI_POSSIBLE=y
+CONFIG_BCMA_HOST_PCI=y
+CONFIG_BCMA_DRIVER_GMAC_CMN=y
+# CONFIG_BCMA_DEBUG is not set
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_CORE=y
+CONFIG_MFD_SM501=m
+CONFIG_MFD_SM501_GPIO=y
+CONFIG_HTC_PASIC3=m
+CONFIG_UCB1400_CORE=m
+CONFIG_MFD_LM3533=m
+# CONFIG_TPS6105X is not set
+CONFIG_TPS65010=m
+CONFIG_TPS6507X=m
+CONFIG_MFD_TPS65217=m
+# CONFIG_MFD_TMIO is not set
+CONFIG_MFD_ARIZONA=y
+CONFIG_MFD_ARIZONA_I2C=m
+CONFIG_MFD_WM5102=y
+CONFIG_MFD_WM5110=y
+CONFIG_MFD_PCF50633=m
+CONFIG_PCF50633_ADC=m
+CONFIG_PCF50633_GPIO=m
+CONFIG_MFD_MC13783=m
+CONFIG_MFD_MC13XXX=m
+CONFIG_MFD_MC13XXX_I2C=m
+CONFIG_ABX500_CORE=y
+CONFIG_MFD_CS5535=m
+# CONFIG_MFD_TIMBERDALE is not set
+CONFIG_LPC_SCH=m
+CONFIG_LPC_ICH=m
+CONFIG_MFD_RDC321X=m
+# CONFIG_MFD_JANZ_CMODIO is not set
+CONFIG_MFD_VX855=m
+CONFIG_MFD_WL1273_CORE=m
+# CONFIG_REGULATOR is not set
+CONFIG_MEDIA_SUPPORT=m
+
+#
+# Multimedia core support
+#
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
+CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
+CONFIG_MEDIA_RADIO_SUPPORT=y
+CONFIG_MEDIA_RC_SUPPORT=y
+CONFIG_MEDIA_CONTROLLER=y
+CONFIG_VIDEO_DEV=m
+CONFIG_VIDEO_V4L2_COMMON=m
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
+CONFIG_DVB_CORE=m
+CONFIG_DVB_NET=y
+
+#
+# Media drivers
+#
+CONFIG_VIDEO_SAA7146=m
+CONFIG_VIDEO_SAA7146_VV=m
+CONFIG_RC_CORE=m
+CONFIG_RC_MAP=m
+CONFIG_RC_DECODERS=y
+CONFIG_LIRC=m
+CONFIG_IR_LIRC_CODEC=m
+CONFIG_IR_NEC_DECODER=m
+CONFIG_IR_RC5_DECODER=m
+CONFIG_IR_RC6_DECODER=m
+CONFIG_IR_JVC_DECODER=m
+CONFIG_IR_SONY_DECODER=m
+CONFIG_IR_RC5_SZ_DECODER=m
+CONFIG_IR_SANYO_DECODER=m
+CONFIG_IR_MCE_KBD_DECODER=m
+CONFIG_RC_DEVICES=y
+CONFIG_RC_ATI_REMOTE=m
+CONFIG_IR_ENE=m
+CONFIG_IR_IMON=m
+CONFIG_IR_MCEUSB=m
+CONFIG_IR_ITE_CIR=m
+CONFIG_IR_FINTEK=m
+CONFIG_IR_NUVOTON=m
+CONFIG_IR_REDRAT3=m
+CONFIG_IR_STREAMZAP=m
+CONFIG_IR_WINBOND_CIR=m
+CONFIG_IR_IGUANA=m
+CONFIG_RC_LOOPBACK=m
+CONFIG_IR_GPIO_CIR=m
+CONFIG_MEDIA_ATTACH=y
+CONFIG_MEDIA_TUNER=m
+# CONFIG_MEDIA_TUNER_CUSTOMISE is not set
+CONFIG_MEDIA_TUNER_SIMPLE=m
+CONFIG_MEDIA_TUNER_TDA8290=m
+CONFIG_MEDIA_TUNER_TDA827X=m
+CONFIG_MEDIA_TUNER_TDA18271=m
+CONFIG_MEDIA_TUNER_TDA9887=m
+CONFIG_MEDIA_TUNER_TEA5761=m
+CONFIG_MEDIA_TUNER_TEA5767=m
+CONFIG_MEDIA_TUNER_MT20XX=m
+CONFIG_MEDIA_TUNER_MT2060=m
+CONFIG_MEDIA_TUNER_MT2063=m
+CONFIG_MEDIA_TUNER_MT2266=m
+CONFIG_MEDIA_TUNER_MT2131=m
+CONFIG_MEDIA_TUNER_QT1010=m
+CONFIG_MEDIA_TUNER_XC2028=m
+CONFIG_MEDIA_TUNER_XC5000=m
+CONFIG_MEDIA_TUNER_XC4000=m
+CONFIG_MEDIA_TUNER_MXL5005S=m
+CONFIG_MEDIA_TUNER_MXL5007T=m
+CONFIG_MEDIA_TUNER_MC44S803=m
+CONFIG_MEDIA_TUNER_MAX2165=m
+CONFIG_MEDIA_TUNER_TDA18218=m
+CONFIG_MEDIA_TUNER_FC0011=m
+CONFIG_MEDIA_TUNER_FC0012=m
+CONFIG_MEDIA_TUNER_FC0013=m
+CONFIG_MEDIA_TUNER_TDA18212=m
+CONFIG_MEDIA_TUNER_TUA9001=m
+CONFIG_VIDEO_V4L2=m
+CONFIG_VIDEOBUF_GEN=m
+CONFIG_VIDEOBUF_DMA_SG=m
+CONFIG_VIDEOBUF_VMALLOC=m
+CONFIG_VIDEOBUF_DVB=m
+CONFIG_VIDEO_BTCX=m
+CONFIG_VIDEO_TVEEPROM=m
+CONFIG_VIDEO_TUNER=m
+CONFIG_V4L2_MEM2MEM_DEV=m
+CONFIG_VIDEOBUF2_CORE=m
+CONFIG_VIDEOBUF2_MEMOPS=m
+CONFIG_VIDEOBUF2_DMA_CONTIG=m
+CONFIG_VIDEOBUF2_VMALLOC=m
+CONFIG_VIDEO_CAPTURE_DRIVERS=y
+# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+# CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set
+CONFIG_VIDEO_IR_I2C=m
+
+#
+# Encoders, decoders, sensors and other helper chips
+#
+
+#
+# Audio decoders, processors and mixers
+#
+CONFIG_VIDEO_TVAUDIO=m
+CONFIG_VIDEO_TDA7432=m
+CONFIG_VIDEO_TDA9840=m
+CONFIG_VIDEO_TEA6415C=m
+CONFIG_VIDEO_TEA6420=m
+CONFIG_VIDEO_MSP3400=m
+CONFIG_VIDEO_CS5345=m
+CONFIG_VIDEO_CS53L32A=m
+CONFIG_VIDEO_TLV320AIC23B=m
+CONFIG_VIDEO_WM8775=m
+CONFIG_VIDEO_WM8739=m
+CONFIG_VIDEO_VP27SMPX=m
+
+#
+# RDS decoders
+#
+CONFIG_VIDEO_SAA6588=m
+
+#
+# Video decoders
+#
+CONFIG_VIDEO_ADV7180=m
+CONFIG_VIDEO_ADV7183=m
+CONFIG_VIDEO_BT819=m
+CONFIG_VIDEO_BT856=m
+CONFIG_VIDEO_BT866=m
+CONFIG_VIDEO_KS0127=m
+CONFIG_VIDEO_SAA7110=m
+CONFIG_VIDEO_SAA711X=m
+CONFIG_VIDEO_SAA7191=m
+CONFIG_VIDEO_TVP514X=m
+CONFIG_VIDEO_TVP5150=m
+CONFIG_VIDEO_TVP7002=m
+CONFIG_VIDEO_VPX3220=m
+
+#
+# Video and audio decoders
+#
+CONFIG_VIDEO_SAA717X=m
+CONFIG_VIDEO_CX25840=m
+
+#
+# MPEG video encoders
+#
+CONFIG_VIDEO_CX2341X=m
+
+#
+# Video encoders
+#
+CONFIG_VIDEO_SAA7127=m
+CONFIG_VIDEO_SAA7185=m
+CONFIG_VIDEO_ADV7170=m
+CONFIG_VIDEO_ADV7175=m
+CONFIG_VIDEO_ADV7343=m
+CONFIG_VIDEO_ADV7393=m
+CONFIG_VIDEO_AK881X=m
+
+#
+# Camera sensor devices
+#
+CONFIG_VIDEO_APTINA_PLL=m
+CONFIG_VIDEO_OV7670=m
+CONFIG_VIDEO_VS6624=m
+CONFIG_VIDEO_MT9M032=m
+CONFIG_VIDEO_MT9P031=m
+CONFIG_VIDEO_MT9T001=m
+CONFIG_VIDEO_MT9V011=m
+CONFIG_VIDEO_MT9V032=m
+CONFIG_VIDEO_TCM825X=m
+CONFIG_VIDEO_SR030PC30=m
+CONFIG_VIDEO_NOON010PC30=m
+CONFIG_VIDEO_M5MOLS=m
+CONFIG_VIDEO_S5K6AA=m
+
+#
+# Flash devices
+#
+CONFIG_VIDEO_ADP1653=m
+CONFIG_VIDEO_AS3645A=m
+
+#
+# Video improvement chips
+#
+CONFIG_VIDEO_UPD64031A=m
+CONFIG_VIDEO_UPD64083=m
+
+#
+# Miscelaneous helper chips
+#
+CONFIG_VIDEO_THS7303=m
+CONFIG_VIDEO_M52790=m
+CONFIG_VIDEO_VIVI=m
+CONFIG_V4L_USB_DRIVERS=y
+
+#
+# Webcam devices
+#
+CONFIG_USB_VIDEO_CLASS=m
+CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
+CONFIG_USB_GSPCA=m
+CONFIG_USB_M5602=m
+CONFIG_USB_STV06XX=m
+CONFIG_USB_GL860=m
+CONFIG_USB_GSPCA_BENQ=m
+CONFIG_USB_GSPCA_CONEX=m
+CONFIG_USB_GSPCA_CPIA1=m
+CONFIG_USB_GSPCA_ETOMS=m
+CONFIG_USB_GSPCA_FINEPIX=m
+CONFIG_USB_GSPCA_JEILINJ=m
+CONFIG_USB_GSPCA_JL2005BCD=m
+CONFIG_USB_GSPCA_KINECT=m
+CONFIG_USB_GSPCA_KONICA=m
+CONFIG_USB_GSPCA_MARS=m
+CONFIG_USB_GSPCA_MR97310A=m
+CONFIG_USB_GSPCA_NW80X=m
+CONFIG_USB_GSPCA_OV519=m
+CONFIG_USB_GSPCA_OV534=m
+CONFIG_USB_GSPCA_OV534_9=m
+CONFIG_USB_GSPCA_PAC207=m
+CONFIG_USB_GSPCA_PAC7302=m
+CONFIG_USB_GSPCA_PAC7311=m
+CONFIG_USB_GSPCA_SE401=m
+CONFIG_USB_GSPCA_SN9C2028=m
+CONFIG_USB_GSPCA_SN9C20X=m
+CONFIG_USB_GSPCA_SONIXB=m
+CONFIG_USB_GSPCA_SONIXJ=m
+CONFIG_USB_GSPCA_SPCA500=m
+CONFIG_USB_GSPCA_SPCA501=m
+CONFIG_USB_GSPCA_SPCA505=m
+CONFIG_USB_GSPCA_SPCA506=m
+CONFIG_USB_GSPCA_SPCA508=m
+CONFIG_USB_GSPCA_SPCA561=m
+CONFIG_USB_GSPCA_SPCA1528=m
+CONFIG_USB_GSPCA_SQ905=m
+CONFIG_USB_GSPCA_SQ905C=m
+CONFIG_USB_GSPCA_SQ930X=m
+CONFIG_USB_GSPCA_STK014=m
+CONFIG_USB_GSPCA_STV0680=m
+CONFIG_USB_GSPCA_SUNPLUS=m
+CONFIG_USB_GSPCA_T613=m
+CONFIG_USB_GSPCA_TOPRO=m
+CONFIG_USB_GSPCA_TV8532=m
+CONFIG_USB_GSPCA_VC032X=m
+CONFIG_USB_GSPCA_VICAM=m
+CONFIG_USB_GSPCA_XIRLINK_CIT=m
+CONFIG_USB_GSPCA_ZC3XX=m
+CONFIG_USB_PWC=m
+# CONFIG_USB_PWC_DEBUG is not set
+CONFIG_USB_PWC_INPUT_EVDEV=y
+CONFIG_VIDEO_CPIA2=m
+CONFIG_USB_ZR364XX=m
+CONFIG_USB_STKWEBCAM=m
+CONFIG_USB_S2255=m
+CONFIG_USB_SN9C102=m
+
+#
+# Webcam and/or TV USB devices
+#
+CONFIG_VIDEO_EM28XX=m
+CONFIG_VIDEO_EM28XX_ALSA=m
+CONFIG_VIDEO_EM28XX_DVB=m
+CONFIG_VIDEO_EM28XX_RC=m
+
+#
+# TV USB devices
+#
+CONFIG_VIDEO_AU0828=m
+CONFIG_VIDEO_PVRUSB2=m
+CONFIG_VIDEO_PVRUSB2_SYSFS=y
+CONFIG_VIDEO_PVRUSB2_DVB=y
+# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
+CONFIG_VIDEO_HDPVR=m
+CONFIG_VIDEO_TLG2300=m
+CONFIG_VIDEO_CX231XX=m
+CONFIG_VIDEO_CX231XX_RC=y
+CONFIG_VIDEO_CX231XX_ALSA=m
+CONFIG_VIDEO_CX231XX_DVB=m
+CONFIG_VIDEO_TM6000=m
+CONFIG_VIDEO_TM6000_ALSA=m
+CONFIG_VIDEO_TM6000_DVB=m
+CONFIG_VIDEO_USBVISION=m
+CONFIG_V4L_PCI_DRIVERS=y
+CONFIG_VIDEO_BT848=m
+CONFIG_VIDEO_BT848_DVB=y
+CONFIG_VIDEO_CX18=m
+CONFIG_VIDEO_CX18_ALSA=m
+CONFIG_VIDEO_CX23885=m
+CONFIG_MEDIA_ALTERA_CI=m
+CONFIG_VIDEO_CX25821=m
+CONFIG_VIDEO_CX25821_ALSA=m
+CONFIG_VIDEO_CX88=m
+CONFIG_VIDEO_CX88_ALSA=m
+CONFIG_VIDEO_CX88_BLACKBIRD=m
+CONFIG_VIDEO_CX88_DVB=m
+CONFIG_VIDEO_CX88_VP3054=m
+CONFIG_VIDEO_CX88_MPEG=m
+CONFIG_VIDEO_HEXIUM_GEMINI=m
+CONFIG_VIDEO_HEXIUM_ORION=m
+CONFIG_VIDEO_IVTV=m
+CONFIG_VIDEO_FB_IVTV=m
+CONFIG_VIDEO_MEYE=m
+CONFIG_VIDEO_MXB=m
+CONFIG_VIDEO_SAA7134=m
+CONFIG_VIDEO_SAA7134_ALSA=m
+CONFIG_VIDEO_SAA7134_RC=y
+CONFIG_VIDEO_SAA7134_DVB=m
+CONFIG_VIDEO_SAA7164=m
+CONFIG_VIDEO_ZORAN=m
+CONFIG_VIDEO_ZORAN_DC30=m
+CONFIG_VIDEO_ZORAN_ZR36060=m
+CONFIG_VIDEO_ZORAN_BUZ=m
+CONFIG_VIDEO_ZORAN_DC10=m
+CONFIG_VIDEO_ZORAN_LML33=m
+CONFIG_VIDEO_ZORAN_LML33R10=m
+CONFIG_VIDEO_ZORAN_AVS6EYES=m
+# CONFIG_V4L_ISA_PARPORT_DRIVERS is not set
+# CONFIG_V4L_PLATFORM_DRIVERS is not set
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_VIDEO_MEM2MEM_TESTDEV=m
+CONFIG_RADIO_ADAPTERS=y
+CONFIG_RADIO_SI470X=y
+CONFIG_USB_SI470X=m
+CONFIG_I2C_SI470X=m
+CONFIG_USB_MR800=m
+CONFIG_USB_DSBR=m
+CONFIG_RADIO_MAXIRADIO=m
+CONFIG_RADIO_SHARK=m
+CONFIG_RADIO_SHARK2=m
+CONFIG_I2C_SI4713=m
+CONFIG_RADIO_SI4713=m
+CONFIG_USB_KEENE=m
+CONFIG_RADIO_TEA5764=m
+CONFIG_RADIO_SAA7706H=m
+CONFIG_RADIO_TEF6862=m
+CONFIG_RADIO_WL1273=m
+
+#
+# Texas Instruments WL128x FM driver (ST based)
+#
+CONFIG_RADIO_WL128X=m
+CONFIG_DVB_MAX_ADAPTERS=8
+# CONFIG_DVB_DYNAMIC_MINORS is not set
+CONFIG_DVB_CAPTURE_DRIVERS=y
+
+#
+# Supported SAA7146 based PCI Adapters
+#
+CONFIG_TTPCI_EEPROM=m
+CONFIG_DVB_AV7110=m
+CONFIG_DVB_AV7110_OSD=y
+CONFIG_DVB_BUDGET_CORE=m
+CONFIG_DVB_BUDGET=m
+CONFIG_DVB_BUDGET_CI=m
+CONFIG_DVB_BUDGET_AV=m
+CONFIG_DVB_BUDGET_PATCH=m
+
+#
+# Supported USB Adapters
+#
+CONFIG_DVB_USB=m
+# CONFIG_DVB_USB_DEBUG is not set
+CONFIG_DVB_USB_A800=m
+CONFIG_DVB_USB_DIBUSB_MB=m
+CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
+CONFIG_DVB_USB_DIBUSB_MC=m
+CONFIG_DVB_USB_DIB0700=m
+CONFIG_DVB_USB_UMT_010=m
+CONFIG_DVB_USB_CXUSB=m
+CONFIG_DVB_USB_M920X=m
+CONFIG_DVB_USB_GL861=m
+CONFIG_DVB_USB_AU6610=m
+CONFIG_DVB_USB_DIGITV=m
+CONFIG_DVB_USB_VP7045=m
+CONFIG_DVB_USB_VP702X=m
+CONFIG_DVB_USB_GP8PSK=m
+CONFIG_DVB_USB_NOVA_T_USB2=m
+CONFIG_DVB_USB_TTUSB2=m
+CONFIG_DVB_USB_DTT200U=m
+CONFIG_DVB_USB_OPERA1=m
+CONFIG_DVB_USB_AF9005=m
+CONFIG_DVB_USB_AF9005_REMOTE=m
+CONFIG_DVB_USB_PCTV452E=m
+CONFIG_DVB_USB_DW2102=m
+CONFIG_DVB_USB_CINERGY_T2=m
+CONFIG_DVB_USB_ANYSEE=m
+CONFIG_DVB_USB_DTV5100=m
+CONFIG_DVB_USB_AF9015=m
+CONFIG_DVB_USB_CE6230=m
+CONFIG_DVB_USB_FRIIO=m
+CONFIG_DVB_USB_EC168=m
+CONFIG_DVB_USB_AZ6007=m
+CONFIG_DVB_USB_AZ6027=m
+CONFIG_DVB_USB_LME2510=m
+CONFIG_DVB_USB_TECHNISAT_USB2=m
+CONFIG_DVB_USB_IT913X=m
+CONFIG_DVB_USB_MXL111SF=m
+CONFIG_DVB_USB_RTL28XXU=m
+CONFIG_DVB_USB_AF9035=m
+CONFIG_DVB_TTUSB_BUDGET=m
+CONFIG_DVB_TTUSB_DEC=m
+CONFIG_SMS_SIANO_MDTV=m
+
+#
+# Siano module components
+#
+CONFIG_SMS_USB_DRV=m
+CONFIG_SMS_SDIO_DRV=m
+
+#
+# Supported FlexCopII (B2C2) Adapters
+#
+CONFIG_DVB_B2C2_FLEXCOP=m
+CONFIG_DVB_B2C2_FLEXCOP_PCI=m
+CONFIG_DVB_B2C2_FLEXCOP_USB=m
+# CONFIG_DVB_B2C2_FLEXCOP_DEBUG is not set
+
+#
+# Supported BT878 Adapters
+#
+CONFIG_DVB_BT8XX=m
+
+#
+# Supported Pluto2 Adapters
+#
+CONFIG_DVB_PLUTO2=m
+
+#
+# Supported SDMC DM1105 Adapters
+#
+CONFIG_DVB_DM1105=m
+
+#
+# Supported FireWire (IEEE 1394) Adapters
+#
+CONFIG_DVB_FIREDTV=m
+CONFIG_DVB_FIREDTV_INPUT=y
+
+#
+# Supported Earthsoft PT1 Adapters
+#
+CONFIG_DVB_PT1=m
+
+#
+# Supported Mantis Adapters
+#
+CONFIG_MANTIS_CORE=m
+CONFIG_DVB_MANTIS=m
+CONFIG_DVB_HOPPER=m
+
+#
+# Supported nGene Adapters
+#
+CONFIG_DVB_NGENE=m
+
+#
+# Supported ddbridge ('Octopus') Adapters
+#
+CONFIG_DVB_DDBRIDGE=m
+
+#
+# Supported DVB Frontends
+#
+
+#
+# Multistandard (satellite) frontends
+#
+CONFIG_DVB_STB0899=m
+CONFIG_DVB_STB6100=m
+CONFIG_DVB_STV090x=m
+CONFIG_DVB_STV6110x=m
+
+#
+# Multistandard (cable + terrestrial) frontends
+#
+CONFIG_DVB_DRXK=m
+CONFIG_DVB_TDA18271C2DD=m
+
+#
+# DVB-S (satellite) frontends
+#
+CONFIG_DVB_CX24110=m
+CONFIG_DVB_CX24123=m
+CONFIG_DVB_MT312=m
+CONFIG_DVB_ZL10036=m
+CONFIG_DVB_ZL10039=m
+CONFIG_DVB_S5H1420=m
+CONFIG_DVB_STV0288=m
+CONFIG_DVB_STB6000=m
+CONFIG_DVB_STV0299=m
+CONFIG_DVB_STV6110=m
+CONFIG_DVB_STV0900=m
+CONFIG_DVB_TDA8083=m
+CONFIG_DVB_TDA10086=m
+CONFIG_DVB_TDA8261=m
+CONFIG_DVB_VES1X93=m
+CONFIG_DVB_TUNER_ITD1000=m
+CONFIG_DVB_TUNER_CX24113=m
+CONFIG_DVB_TDA826X=m
+CONFIG_DVB_TUA6100=m
+CONFIG_DVB_CX24116=m
+CONFIG_DVB_SI21XX=m
+CONFIG_DVB_DS3000=m
+CONFIG_DVB_MB86A16=m
+CONFIG_DVB_TDA10071=m
+
+#
+# DVB-T (terrestrial) frontends
+#
+CONFIG_DVB_SP8870=m
+CONFIG_DVB_SP887X=m
+CONFIG_DVB_CX22700=m
+CONFIG_DVB_CX22702=m
+CONFIG_DVB_DRXD=m
+CONFIG_DVB_L64781=m
+CONFIG_DVB_TDA1004X=m
+CONFIG_DVB_NXT6000=m
+CONFIG_DVB_MT352=m
+CONFIG_DVB_ZL10353=m
+CONFIG_DVB_DIB3000MB=m
+CONFIG_DVB_DIB3000MC=m
+CONFIG_DVB_DIB7000M=m
+CONFIG_DVB_DIB7000P=m
+CONFIG_DVB_TDA10048=m
+CONFIG_DVB_AF9013=m
+CONFIG_DVB_EC100=m
+CONFIG_DVB_STV0367=m
+CONFIG_DVB_CXD2820R=m
+CONFIG_DVB_RTL2830=m
+CONFIG_DVB_RTL2832=m
+
+#
+# DVB-C (cable) frontends
+#
+CONFIG_DVB_VES1820=m
+CONFIG_DVB_TDA10021=m
+CONFIG_DVB_TDA10023=m
+CONFIG_DVB_STV0297=m
+
+#
+# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
+#
+CONFIG_DVB_NXT200X=m
+CONFIG_DVB_OR51211=m
+CONFIG_DVB_OR51132=m
+CONFIG_DVB_BCM3510=m
+CONFIG_DVB_LGDT330X=m
+CONFIG_DVB_LGDT3305=m
+CONFIG_DVB_LG2160=m
+CONFIG_DVB_S5H1409=m
+CONFIG_DVB_AU8522=m
+CONFIG_DVB_AU8522_DTV=m
+CONFIG_DVB_AU8522_V4L=m
+CONFIG_DVB_S5H1411=m
+
+#
+# ISDB-T (terrestrial) frontends
+#
+CONFIG_DVB_S921=m
+CONFIG_DVB_DIB8000=m
+CONFIG_DVB_MB86A20S=m
+
+#
+# Digital terrestrial only tuners/PLL
+#
+CONFIG_DVB_PLL=m
+CONFIG_DVB_TUNER_DIB0070=m
+CONFIG_DVB_TUNER_DIB0090=m
+
+#
+# SEC control devices for DVB-S
+#
+CONFIG_DVB_LNBP21=m
+CONFIG_DVB_LNBP22=m
+CONFIG_DVB_ISL6405=m
+CONFIG_DVB_ISL6421=m
+CONFIG_DVB_ISL6423=m
+CONFIG_DVB_A8293=m
+CONFIG_DVB_LGS8GXX=m
+CONFIG_DVB_ATBM8830=m
+CONFIG_DVB_TDA665x=m
+CONFIG_DVB_IX2505V=m
+CONFIG_DVB_IT913X_FE=m
+CONFIG_DVB_M88RS2000=m
+CONFIG_DVB_AF9033=m
+
+#
+# Tools to develop new frontends
+#
+# CONFIG_DVB_DUMMY_FE is not set
+
+#
+# Graphics support
+#
+CONFIG_AGP=y
+CONFIG_AGP_AMD64=y
+CONFIG_AGP_INTEL=m
+CONFIG_AGP_SIS=m
+CONFIG_AGP_VIA=m
+CONFIG_VGA_ARB=y
+CONFIG_VGA_ARB_MAX_GPUS=16
+CONFIG_VGA_SWITCHEROO=y
+CONFIG_DRM=m
+CONFIG_DRM_USB=m
+CONFIG_DRM_KMS_HELPER=m
+CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+CONFIG_DRM_TTM=m
+CONFIG_DRM_TDFX=m
+CONFIG_DRM_R128=m
+CONFIG_DRM_RADEON=m
+CONFIG_DRM_RADEON_KMS=y
+CONFIG_DRM_NOUVEAU=m
+CONFIG_DRM_NOUVEAU_BACKLIGHT=y
+CONFIG_DRM_NOUVEAU_DEBUG=y
+
+#
+# I2C encoder or helper chips
+#
+CONFIG_DRM_I2C_CH7006=m
+CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_I915=m
+CONFIG_DRM_I915_KMS=y
+CONFIG_DRM_MGA=m
+CONFIG_DRM_SIS=m
+CONFIG_DRM_VIA=m
+CONFIG_DRM_SAVAGE=m
+CONFIG_DRM_VMWGFX=m
+CONFIG_DRM_VMWGFX_FBCON=y
+CONFIG_DRM_GMA500=m
+CONFIG_DRM_GMA600=y
+CONFIG_DRM_GMA3600=y
+CONFIG_DRM_UDL=m
+CONFIG_DRM_AST=m
+CONFIG_DRM_MGAG200=m
+CONFIG_DRM_CIRRUS_QEMU=m
+CONFIG_STUB_POULSBO=m
+CONFIG_VGASTATE=m
+CONFIG_VIDEO_OUTPUT_CONTROL=m
+CONFIG_FB=y
+CONFIG_FIRMWARE_EDID=y
+# CONFIG_FB_DDC is not set
+CONFIG_FB_BOOT_VESA_SUPPORT=y
+CONFIG_FB_CFB_FILLRECT=y
+CONFIG_FB_CFB_COPYAREA=y
+CONFIG_FB_CFB_IMAGEBLIT=y
+# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
+CONFIG_FB_SYS_FILLRECT=m
+CONFIG_FB_SYS_COPYAREA=m
+CONFIG_FB_SYS_IMAGEBLIT=m
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_SYS_FOPS=m
+# CONFIG_FB_WMT_GE_ROPS is not set
+CONFIG_FB_DEFERRED_IO=y
+# CONFIG_FB_SVGALIB is not set
+# CONFIG_FB_MACMODES is not set
+CONFIG_FB_BACKLIGHT=y
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+
+#
+# Frame buffer hardware drivers
+#
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ARC is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_VGA16=m
+CONFIG_FB_UVESA=m
+CONFIG_FB_VESA=y
+CONFIG_FB_EFI=y
+# CONFIG_FB_N411 is not set
+# CONFIG_FB_HGA is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
+# CONFIG_FB_I740 is not set
+# CONFIG_FB_LE80578 is not set
+# CONFIG_FB_MATROX is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+CONFIG_FB_VIA=m
+CONFIG_FB_VIA_DIRECT_PROCFS=y
+CONFIG_FB_VIA_X_COMPATIBILITY=y
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+CONFIG_FB_VOODOO1=m
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_GEODE is not set
+# CONFIG_FB_TMIO is not set
+# CONFIG_FB_SM501 is not set
+# CONFIG_FB_SMSCUFX is not set
+CONFIG_FB_UDL=m
+CONFIG_FB_VIRTUAL=m
+CONFIG_XEN_FBDEV_FRONTEND=m
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_BROADSHEET is not set
+# CONFIG_FB_AUO_K190X is not set
+# CONFIG_EXYNOS_VIDEO is not set
+CONFIG_BACKLIGHT_LCD_SUPPORT=y
+CONFIG_LCD_CLASS_DEVICE=m
+CONFIG_LCD_PLATFORM=m
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+# CONFIG_BACKLIGHT_GENERIC is not set
+CONFIG_BACKLIGHT_LM3533=m
+CONFIG_BACKLIGHT_PROGEAR=m
+CONFIG_BACKLIGHT_APPLE=m
+# CONFIG_BACKLIGHT_SAHARA is not set
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+CONFIG_BACKLIGHT_PCF50633=m
+# CONFIG_BACKLIGHT_LP855X is not set
+# CONFIG_BACKLIGHT_OT200 is not set
+
+#
+# Console display driver support
+#
+CONFIG_VGA_CONSOLE=y
+# CONFIG_VGACON_SOFT_SCROLLBACK is not set
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
+CONFIG_FONTS=y
+# CONFIG_FONT_8x8 is not set
+CONFIG_FONT_8x16=y
+# CONFIG_FONT_6x11 is not set
+# CONFIG_FONT_7x14 is not set
+# CONFIG_FONT_PEARL_8x8 is not set
+# CONFIG_FONT_ACORN_8x8 is not set
+# CONFIG_FONT_MINI_4x6 is not set
+# CONFIG_FONT_SUN8x16 is not set
+# CONFIG_FONT_SUN12x22 is not set
+# CONFIG_FONT_10x18 is not set
+CONFIG_FONT_AUTOSELECT=y
+# CONFIG_LOGO is not set
+CONFIG_SOUND=m
+CONFIG_SOUND_OSS_CORE=y
+# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_HWDEP=m
+CONFIG_SND_RAWMIDI=m
+CONFIG_SND_JACK=y
+CONFIG_SND_SEQUENCER=m
+CONFIG_SND_SEQ_DUMMY=m
+CONFIG_SND_OSSEMUL=y
+CONFIG_SND_MIXER_OSS=m
+CONFIG_SND_PCM_OSS=m
+CONFIG_SND_PCM_OSS_PLUGINS=y
+CONFIG_SND_SEQUENCER_OSS=y
+CONFIG_SND_HRTIMER=m
+CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_SUPPORT_OLD_API=y
+CONFIG_SND_VERBOSE_PROCFS=y
+# CONFIG_SND_VERBOSE_PRINTK is not set
+# CONFIG_SND_DEBUG is not set
+CONFIG_SND_VMASTER=y
+CONFIG_SND_KCTL_JACK=y
+CONFIG_SND_DMA_SGBUF=y
+CONFIG_SND_RAWMIDI_SEQ=m
+CONFIG_SND_OPL3_LIB_SEQ=m
+# CONFIG_SND_OPL4_LIB_SEQ is not set
+# CONFIG_SND_SBAWE_SEQ is not set
+CONFIG_SND_EMU10K1_SEQ=m
+CONFIG_SND_MPU401_UART=m
+CONFIG_SND_OPL3_LIB=m
+CONFIG_SND_VX_LIB=m
+CONFIG_SND_AC97_CODEC=m
+CONFIG_SND_DRIVERS=y
+# CONFIG_SND_PCSP is not set
+CONFIG_SND_DUMMY=m
+CONFIG_SND_ALOOP=m
+CONFIG_SND_VIRMIDI=m
+CONFIG_SND_MTPAV=m
+CONFIG_SND_MTS64=m
+CONFIG_SND_SERIAL_U16550=m
+CONFIG_SND_MPU401=m
+CONFIG_SND_PORTMAN2X4=m
+CONFIG_SND_AC97_POWER_SAVE=y
+CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0
+CONFIG_SND_SB_COMMON=m
+CONFIG_SND_SB16_DSP=m
+CONFIG_SND_TEA575X=m
+CONFIG_SND_PCI=y
+CONFIG_SND_AD1889=m
+CONFIG_SND_ALS300=m
+CONFIG_SND_ALS4000=m
+CONFIG_SND_ALI5451=m
+CONFIG_SND_ASIHPI=m
+CONFIG_SND_ATIIXP=m
+CONFIG_SND_ATIIXP_MODEM=m
+CONFIG_SND_AU8810=m
+CONFIG_SND_AU8820=m
+CONFIG_SND_AU8830=m
+CONFIG_SND_AW2=m
+CONFIG_SND_AZT3328=m
+CONFIG_SND_BT87X=m
+# CONFIG_SND_BT87X_OVERCLOCK is not set
+CONFIG_SND_CA0106=m
+CONFIG_SND_CMIPCI=m
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
+CONFIG_SND_CS4281=m
+CONFIG_SND_CS46XX=m
+CONFIG_SND_CS46XX_NEW_DSP=y
+CONFIG_SND_CS5530=m
+CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_CTXFI=m
+CONFIG_SND_DARLA20=m
+CONFIG_SND_GINA20=m
+CONFIG_SND_LAYLA20=m
+CONFIG_SND_DARLA24=m
+CONFIG_SND_GINA24=m
+CONFIG_SND_LAYLA24=m
+CONFIG_SND_MONA=m
+CONFIG_SND_MIA=m
+CONFIG_SND_ECHO3G=m
+CONFIG_SND_INDIGO=m
+CONFIG_SND_INDIGOIO=m
+CONFIG_SND_INDIGODJ=m
+CONFIG_SND_INDIGOIOX=m
+CONFIG_SND_INDIGODJX=m
+CONFIG_SND_EMU10K1=m
+CONFIG_SND_EMU10K1X=m
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+CONFIG_SND_ES1938=m
+CONFIG_SND_ES1968=m
+CONFIG_SND_ES1968_INPUT=y
+CONFIG_SND_ES1968_RADIO=y
+CONFIG_SND_FM801=m
+CONFIG_SND_FM801_TEA575X_BOOL=y
+CONFIG_SND_HDA_INTEL=m
+CONFIG_SND_HDA_PREALLOC_SIZE=4096
+CONFIG_SND_HDA_HWDEP=y
+CONFIG_SND_HDA_RECONFIG=y
+CONFIG_SND_HDA_INPUT_BEEP=y
+CONFIG_SND_HDA_INPUT_BEEP_MODE=1
+CONFIG_SND_HDA_INPUT_JACK=y
+CONFIG_SND_HDA_PATCH_LOADER=y
+CONFIG_SND_HDA_CODEC_REALTEK=y
+CONFIG_SND_HDA_CODEC_ANALOG=y
+CONFIG_SND_HDA_CODEC_SIGMATEL=y
+CONFIG_SND_HDA_CODEC_VIA=y
+CONFIG_SND_HDA_CODEC_HDMI=y
+CONFIG_SND_HDA_CODEC_CIRRUS=y
+CONFIG_SND_HDA_CODEC_CONEXANT=y
+CONFIG_SND_HDA_CODEC_CA0110=y
+CONFIG_SND_HDA_CODEC_CA0132=y
+CONFIG_SND_HDA_CODEC_CMEDIA=y
+CONFIG_SND_HDA_CODEC_SI3054=y
+CONFIG_SND_HDA_GENERIC=y
+CONFIG_SND_HDA_POWER_SAVE=y
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
+CONFIG_SND_HDSP=m
+CONFIG_SND_HDSPM=m
+CONFIG_SND_ICE1712=m
+CONFIG_SND_ICE1724=m
+CONFIG_SND_INTEL8X0=m
+CONFIG_SND_INTEL8X0M=m
+CONFIG_SND_KORG1212=m
+CONFIG_SND_LOLA=m
+CONFIG_SND_LX6464ES=m
+CONFIG_SND_MAESTRO3=m
+CONFIG_SND_MAESTRO3_INPUT=y
+CONFIG_SND_MIXART=m
+CONFIG_SND_NM256=m
+CONFIG_SND_PCXHR=m
+CONFIG_SND_RIPTIDE=m
+CONFIG_SND_RME32=m
+CONFIG_SND_RME96=m
+CONFIG_SND_RME9652=m
+CONFIG_SND_SONICVIBES=m
+CONFIG_SND_TRIDENT=m
+CONFIG_SND_VIA82XX=m
+CONFIG_SND_VIA82XX_MODEM=m
+CONFIG_SND_VIRTUOSO=m
+CONFIG_SND_VX222=m
+CONFIG_SND_YMFPCI=m
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_USX2Y=m
+CONFIG_SND_USB_CAIAQ=m
+CONFIG_SND_USB_CAIAQ_INPUT=y
+CONFIG_SND_USB_US122L=m
+CONFIG_SND_USB_6FIRE=m
+CONFIG_SND_FIREWIRE=y
+CONFIG_SND_FIREWIRE_LIB=m
+CONFIG_SND_FIREWIRE_SPEAKERS=m
+CONFIG_SND_ISIGHT=m
+CONFIG_SND_PCMCIA=y
+CONFIG_SND_VXPOCKET=m
+CONFIG_SND_PDAUDIOCF=m
+# CONFIG_SND_SOC is not set
+# CONFIG_SOUND_PRIME is not set
+CONFIG_AC97_BUS=m
+
+#
+# HID support
+#
+CONFIG_HID=m
+CONFIG_HIDRAW=y
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=m
+
+#
+# Special HID drivers
+#
+CONFIG_HID_A4TECH=m
+CONFIG_HID_ACRUX=m
+CONFIG_HID_ACRUX_FF=y
+CONFIG_HID_APPLE=m
+CONFIG_HID_AUREAL=m
+CONFIG_HID_BELKIN=m
+CONFIG_HID_CHERRY=m
+CONFIG_HID_CHICONY=m
+CONFIG_HID_PRODIKEYS=m
+CONFIG_HID_CYPRESS=m
+CONFIG_HID_DRAGONRISE=m
+CONFIG_DRAGONRISE_FF=y
+CONFIG_HID_EMS_FF=m
+CONFIG_HID_ELECOM=m
+CONFIG_HID_EZKEY=m
+CONFIG_HID_HOLTEK=m
+CONFIG_HOLTEK_FF=y
+CONFIG_HID_KEYTOUCH=m
+CONFIG_HID_KYE=m
+CONFIG_HID_UCLOGIC=m
+CONFIG_HID_WALTOP=m
+CONFIG_HID_GYRATION=m
+CONFIG_HID_TWINHAN=m
+CONFIG_HID_KENSINGTON=m
+CONFIG_HID_LCPOWER=m
+CONFIG_HID_LENOVO_TPKBD=m
+CONFIG_HID_LOGITECH=m
+CONFIG_HID_LOGITECH_DJ=m
+CONFIG_LOGITECH_FF=y
+CONFIG_LOGIRUMBLEPAD2_FF=y
+CONFIG_LOGIG940_FF=y
+CONFIG_LOGIWHEELS_FF=y
+CONFIG_HID_MAGICMOUSE=m
+CONFIG_HID_MICROSOFT=m
+CONFIG_HID_MONTEREY=m
+CONFIG_HID_MULTITOUCH=m
+CONFIG_HID_NTRIG=m
+CONFIG_HID_ORTEK=m
+CONFIG_HID_PANTHERLORD=m
+CONFIG_PANTHERLORD_FF=y
+CONFIG_HID_PETALYNX=m
+CONFIG_HID_PICOLCD=m
+CONFIG_HID_PICOLCD_FB=y
+CONFIG_HID_PICOLCD_BACKLIGHT=y
+CONFIG_HID_PICOLCD_LCD=y
+CONFIG_HID_PICOLCD_LEDS=y
+CONFIG_HID_PRIMAX=m
+CONFIG_HID_ROCCAT=m
+CONFIG_HID_SAITEK=m
+CONFIG_HID_SAMSUNG=m
+CONFIG_HID_SONY=m
+CONFIG_HID_SPEEDLINK=m
+CONFIG_HID_SUNPLUS=m
+CONFIG_HID_GREENASIA=m
+CONFIG_GREENASIA_FF=y
+CONFIG_HID_HYPERV_MOUSE=m
+CONFIG_HID_SMARTJOYPLUS=m
+CONFIG_SMARTJOYPLUS_FF=y
+CONFIG_HID_TIVO=m
+CONFIG_HID_TOPSEED=m
+CONFIG_HID_THRUSTMASTER=m
+CONFIG_THRUSTMASTER_FF=y
+CONFIG_HID_WACOM=m
+CONFIG_HID_WIIMOTE=m
+CONFIG_HID_WIIMOTE_EXT=y
+CONFIG_HID_ZEROPLUS=m
+CONFIG_ZEROPLUS_FF=y
+CONFIG_HID_ZYDACRON=m
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=m
+CONFIG_HID_PID=y
+CONFIG_USB_HIDDEV=y
+CONFIG_USB_ARCH_HAS_OHCI=y
+CONFIG_USB_ARCH_HAS_EHCI=y
+CONFIG_USB_ARCH_HAS_XHCI=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=m
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=m
+# CONFIG_USB_DEBUG is not set
+# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DYNAMIC_MINORS=y
+CONFIG_USB_SUSPEND=y
+# CONFIG_USB_OTG is not set
+# CONFIG_USB_DWC3 is not set
+CONFIG_USB_MON=m
+CONFIG_USB_WUSB=m
+CONFIG_USB_WUSB_CBAF=m
+# CONFIG_USB_WUSB_CBAF_DEBUG is not set
+
+#
+# USB Host Controller Drivers
+#
+CONFIG_USB_C67X00_HCD=m
+CONFIG_USB_XHCI_HCD=m
+# CONFIG_USB_XHCI_HCD_DEBUGGING is not set
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_OXU210HP_HCD=m
+CONFIG_USB_ISP116X_HCD=m
+CONFIG_USB_ISP1760_HCD=m
+CONFIG_USB_ISP1362_HCD=m
+CONFIG_USB_OHCI_HCD=m
+# CONFIG_USB_OHCI_HCD_SSB is not set
+# CONFIG_USB_OHCI_HCD_PLATFORM is not set
+# CONFIG_USB_EHCI_HCD_PLATFORM is not set
+# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
+# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_U132_HCD=m
+CONFIG_USB_SL811_HCD=m
+# CONFIG_USB_SL811_HCD_ISO is not set
+CONFIG_USB_SL811_CS=m
+CONFIG_USB_R8A66597_HCD=m
+CONFIG_USB_RENESAS_USBHS_HCD=m
+CONFIG_USB_WHCI_HCD=m
+CONFIG_USB_HWA_HCD=m
+# CONFIG_USB_HCD_BCMA is not set
+# CONFIG_USB_HCD_SSB is not set
+CONFIG_USB_MUSB_HDRC=m
+CONFIG_USB_MUSB_TUSB6010=m
+CONFIG_MUSB_PIO_ONLY=y
+CONFIG_USB_CHIPIDEA=m
+CONFIG_USB_CHIPIDEA_UDC=y
+CONFIG_USB_CHIPIDEA_HOST=y
+# CONFIG_USB_CHIPIDEA_DEBUG is not set
+CONFIG_USB_RENESAS_USBHS=m
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_ACM=m
+CONFIG_USB_PRINTER=m
+CONFIG_USB_WDM=m
+CONFIG_USB_TMC=m
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=m
+# CONFIG_USB_STORAGE_DEBUG is not set
+CONFIG_USB_STORAGE_REALTEK=m
+CONFIG_REALTEK_AUTOPM=y
+CONFIG_USB_STORAGE_DATAFAB=m
+CONFIG_USB_STORAGE_FREECOM=m
+CONFIG_USB_STORAGE_ISD200=m
+CONFIG_USB_STORAGE_USBAT=m
+CONFIG_USB_STORAGE_SDDR09=m
+CONFIG_USB_STORAGE_SDDR55=m
+CONFIG_USB_STORAGE_JUMPSHOT=m
+CONFIG_USB_STORAGE_ALAUDA=m
+CONFIG_USB_STORAGE_ONETOUCH=m
+CONFIG_USB_STORAGE_KARMA=m
+CONFIG_USB_STORAGE_CYPRESS_ATACB=m
+CONFIG_USB_STORAGE_ENE_UB6250=m
+CONFIG_USB_UAS=m
+# CONFIG_USB_LIBUSUAL is not set
+
+#
+# USB Imaging devices
+#
+CONFIG_USB_MDC800=m
+CONFIG_USB_MICROTEK=m
+
+#
+# USB port drivers
+#
+CONFIG_USB_USS720=m
+CONFIG_USB_SERIAL=m
+CONFIG_USB_EZUSB=y
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_AIRCABLE=m
+CONFIG_USB_SERIAL_ARK3116=m
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_CH341=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+CONFIG_USB_SERIAL_EMPEG=m
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_FUNSOFT=m
+CONFIG_USB_SERIAL_VISOR=m
+CONFIG_USB_SERIAL_IPAQ=m
+CONFIG_USB_SERIAL_IR=m
+CONFIG_USB_SERIAL_EDGEPORT=m
+CONFIG_USB_SERIAL_EDGEPORT_TI=m
+CONFIG_USB_SERIAL_F81232=m
+CONFIG_USB_SERIAL_GARMIN=m
+CONFIG_USB_SERIAL_IPW=m
+CONFIG_USB_SERIAL_IUU=m
+CONFIG_USB_SERIAL_KEYSPAN_PDA=m
+CONFIG_USB_SERIAL_KEYSPAN=m
+CONFIG_USB_SERIAL_KEYSPAN_MPR=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
+CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19=y
+CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
+CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
+CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
+CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
+CONFIG_USB_SERIAL_KLSI=m
+CONFIG_USB_SERIAL_KOBIL_SCT=m
+CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_METRO=m
+CONFIG_USB_SERIAL_MOS7720=m
+CONFIG_USB_SERIAL_MOS7715_PARPORT=y
+CONFIG_USB_SERIAL_MOS7840=m
+CONFIG_USB_SERIAL_MOTOROLA=m
+CONFIG_USB_SERIAL_NAVMAN=m
+CONFIG_USB_SERIAL_PL2303=m
+CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_QCAUX=m
+CONFIG_USB_SERIAL_QUALCOMM=m
+CONFIG_USB_SERIAL_SPCP8X5=m
+CONFIG_USB_SERIAL_HP4X=m
+CONFIG_USB_SERIAL_SAFE=m
+# CONFIG_USB_SERIAL_SAFE_PADDED is not set
+CONFIG_USB_SERIAL_SIEMENS_MPI=m
+CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+CONFIG_USB_SERIAL_SYMBOL=m
+CONFIG_USB_SERIAL_TI=m
+CONFIG_USB_SERIAL_CYBERJACK=m
+CONFIG_USB_SERIAL_XIRCOM=m
+CONFIG_USB_SERIAL_WWAN=m
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_SERIAL_OMNINET=m
+CONFIG_USB_SERIAL_OPTICON=m
+CONFIG_USB_SERIAL_VIVOPAY_SERIAL=m
+CONFIG_USB_SERIAL_ZIO=m
+CONFIG_USB_SERIAL_SSU100=m
+CONFIG_USB_SERIAL_QT2=m
+# CONFIG_USB_SERIAL_DEBUG is not set
+
+#
+# USB Miscellaneous drivers
+#
+CONFIG_USB_EMI62=m
+CONFIG_USB_EMI26=m
+CONFIG_USB_ADUTUX=m
+CONFIG_USB_SEVSEG=m
+CONFIG_USB_RIO500=m
+CONFIG_USB_LEGOTOWER=m
+CONFIG_USB_LCD=m
+CONFIG_USB_LED=m
+CONFIG_USB_CYPRESS_CY7C63=m
+CONFIG_USB_CYTHERM=m
+CONFIG_USB_IDMOUSE=m
+CONFIG_USB_FTDI_ELAN=m
+CONFIG_USB_APPLEDISPLAY=m
+CONFIG_USB_SISUSBVGA=m
+# CONFIG_USB_SISUSBVGA_CON is not set
+CONFIG_USB_LD=m
+CONFIG_USB_TRANCEVIBRATOR=m
+CONFIG_USB_IOWARRIOR=m
+CONFIG_USB_TEST=m
+CONFIG_USB_ISIGHTFW=m
+CONFIG_USB_YUREX=m
+
+#
+# USB Physical Layer drivers
+#
+CONFIG_USB_ISP1301=m
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+CONFIG_USB_CXACRU=m
+CONFIG_USB_UEAGLEATM=m
+CONFIG_USB_XUSBATM=m
+CONFIG_USB_GADGET=m
+# CONFIG_USB_GADGET_DEBUG is not set
+# CONFIG_USB_GADGET_DEBUG_FILES is not set
+# CONFIG_USB_GADGET_DEBUG_FS is not set
+CONFIG_USB_GADGET_VBUS_DRAW=2
+CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
+
+#
+# USB Peripheral Controller
+#
+CONFIG_USB_R8A66597=m
+CONFIG_USB_RENESAS_USBHS_UDC=m
+CONFIG_USB_MV_UDC=m
+CONFIG_USB_GADGET_MUSB_HDRC=m
+CONFIG_USB_M66592=m
+CONFIG_USB_AMD5536UDC=m
+CONFIG_USB_NET2272=m
+CONFIG_USB_NET2272_DMA=y
+CONFIG_USB_NET2280=m
+CONFIG_USB_GOKU=m
+CONFIG_USB_EG20T=m
+CONFIG_USB_DUMMY_HCD=m
+CONFIG_USB_GADGET_DUALSPEED=y
+CONFIG_USB_GADGET_SUPERSPEED=y
+# CONFIG_USB_ZERO is not set
+CONFIG_USB_AUDIO=m
+# CONFIG_GADGET_UAC1 is not set
+CONFIG_USB_ETH=m
+CONFIG_USB_ETH_RNDIS=y
+# CONFIG_USB_ETH_EEM is not set
+CONFIG_USB_G_NCM=m
+CONFIG_USB_GADGETFS=m
+CONFIG_USB_FUNCTIONFS=m
+CONFIG_USB_FUNCTIONFS_ETH=y
+CONFIG_USB_FUNCTIONFS_RNDIS=y
+CONFIG_USB_FUNCTIONFS_GENERIC=y
+CONFIG_USB_FILE_STORAGE=m
+# CONFIG_USB_FILE_STORAGE_TEST is not set
+# CONFIG_USB_MASS_STORAGE is not set
+CONFIG_USB_GADGET_TARGET=m
+CONFIG_USB_G_SERIAL=m
+CONFIG_USB_MIDI_GADGET=m
+CONFIG_USB_G_PRINTER=m
+# CONFIG_USB_CDC_COMPOSITE is not set
+# CONFIG_USB_G_NOKIA is not set
+# CONFIG_USB_G_ACM_MS is not set
+# CONFIG_USB_G_MULTI is not set
+CONFIG_USB_G_HID=m
+CONFIG_USB_G_DBGP=m
+# CONFIG_USB_G_DBGP_PRINTK is not set
+CONFIG_USB_G_DBGP_SERIAL=y
+CONFIG_USB_G_WEBCAM=m
+
+#
+# OTG and related infrastructure
+#
+CONFIG_USB_OTG_UTILS=y
+# CONFIG_USB_GPIO_VBUS is not set
+CONFIG_NOP_USB_XCEIV=m
+CONFIG_UWB=m
+CONFIG_UWB_HWA=m
+CONFIG_UWB_WHCI=m
+CONFIG_UWB_I1480U=m
+CONFIG_MMC=m
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_UNSAFE_RESUME is not set
+# CONFIG_MMC_CLKGATE is not set
+
+#
+# MMC/SD/SDIO Card Drivers
+#
+CONFIG_MMC_BLOCK=m
+CONFIG_MMC_BLOCK_MINORS=8
+CONFIG_MMC_BLOCK_BOUNCE=y
+CONFIG_SDIO_UART=m
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_SDHCI_PCI=m
+CONFIG_MMC_RICOH_MMC=y
+CONFIG_MMC_SDHCI_PLTFM=m
+CONFIG_MMC_WBSD=m
+CONFIG_MMC_TIFM_SD=m
+CONFIG_MMC_SDRICOH_CS=m
+CONFIG_MMC_CB710=m
+CONFIG_MMC_VIA_SDMMC=m
+CONFIG_MMC_VUB300=m
+CONFIG_MMC_USHC=m
+CONFIG_MEMSTICK=m
+# CONFIG_MEMSTICK_DEBUG is not set
+
+#
+# MemoryStick drivers
+#
+# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
+CONFIG_MSPRO_BLOCK=m
+
+#
+# MemoryStick Host Controller Drivers
+#
+CONFIG_MEMSTICK_TIFM_MS=m
+CONFIG_MEMSTICK_JMICRON_38X=m
+CONFIG_MEMSTICK_R592=m
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+
+#
+# LED drivers
+#
+CONFIG_LEDS_LM3530=m
+CONFIG_LEDS_LM3533=m
+CONFIG_LEDS_PCA9532=m
+# CONFIG_LEDS_PCA9532_GPIO is not set
+# CONFIG_LEDS_GPIO is not set
+CONFIG_LEDS_LP3944=m
+CONFIG_LEDS_LP5521=m
+CONFIG_LEDS_LP5523=m
+CONFIG_LEDS_CLEVO_MAIL=m
+CONFIG_LEDS_PCA955X=m
+CONFIG_LEDS_PCA9633=m
+CONFIG_LEDS_BD2802=m
+CONFIG_LEDS_INTEL_SS4200=m
+CONFIG_LEDS_LT3593=m
+CONFIG_LEDS_DELL_NETBOOKS=m
+CONFIG_LEDS_MC13783=m
+CONFIG_LEDS_TCA6507=m
+CONFIG_LEDS_LM3556=m
+CONFIG_LEDS_OT200=m
+CONFIG_LEDS_BLINKM=m
+CONFIG_LEDS_TRIGGERS=y
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGER_TIMER=m
+CONFIG_LEDS_TRIGGER_ONESHOT=m
+CONFIG_LEDS_TRIGGER_HEARTBEAT=m
+CONFIG_LEDS_TRIGGER_BACKLIGHT=m
+CONFIG_LEDS_TRIGGER_GPIO=m
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+CONFIG_LEDS_TRIGGER_TRANSIENT=m
+CONFIG_ACCESSIBILITY=y
+CONFIG_A11Y_BRAILLE_CONSOLE=y
+# CONFIG_INFINIBAND is not set
+CONFIG_EDAC=y
+
+#
+# Reporting subsystems
+#
+CONFIG_EDAC_LEGACY_SYSFS=y
+# CONFIG_EDAC_DEBUG is not set
+CONFIG_EDAC_DECODE_MCE=m
+CONFIG_EDAC_MCE_INJ=m
+CONFIG_EDAC_MM_EDAC=m
+CONFIG_EDAC_AMD64=m
+# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set
+CONFIG_EDAC_E752X=m
+CONFIG_EDAC_I82975X=m
+CONFIG_EDAC_I3000=m
+CONFIG_EDAC_I3200=m
+CONFIG_EDAC_X38=m
+CONFIG_EDAC_I5400=m
+CONFIG_EDAC_I7CORE=m
+CONFIG_EDAC_I5000=m
+CONFIG_EDAC_I5100=m
+CONFIG_EDAC_I7300=m
+CONFIG_EDAC_SBRIDGE=m
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+CONFIG_RTC_INTF_DEV_UIE_EMUL=y
+CONFIG_RTC_DRV_TEST=m
+
+#
+# I2C RTC drivers
+#
+CONFIG_RTC_DRV_DS1307=m
+CONFIG_RTC_DRV_DS1374=m
+CONFIG_RTC_DRV_DS1672=m
+CONFIG_RTC_DRV_DS3232=m
+CONFIG_RTC_DRV_MAX6900=m
+CONFIG_RTC_DRV_RS5C372=m
+CONFIG_RTC_DRV_ISL1208=m
+CONFIG_RTC_DRV_ISL12022=m
+CONFIG_RTC_DRV_X1205=m
+CONFIG_RTC_DRV_PCF8563=m
+CONFIG_RTC_DRV_PCF8583=m
+CONFIG_RTC_DRV_M41T80=m
+CONFIG_RTC_DRV_M41T80_WDT=y
+CONFIG_RTC_DRV_BQ32K=m
+CONFIG_RTC_DRV_S35390A=m
+CONFIG_RTC_DRV_FM3130=m
+CONFIG_RTC_DRV_RX8581=m
+CONFIG_RTC_DRV_RX8025=m
+CONFIG_RTC_DRV_EM3027=m
+CONFIG_RTC_DRV_RV3029C2=m
+
+#
+# SPI RTC drivers
+#
+
+#
+# Platform RTC drivers
+#
+CONFIG_RTC_DRV_CMOS=y
+CONFIG_RTC_DRV_DS1286=m
+CONFIG_RTC_DRV_DS1511=m
+CONFIG_RTC_DRV_DS1553=m
+CONFIG_RTC_DRV_DS1742=m
+CONFIG_RTC_DRV_STK17TA8=m
+CONFIG_RTC_DRV_M48T86=m
+CONFIG_RTC_DRV_M48T35=m
+CONFIG_RTC_DRV_M48T59=m
+CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_BQ4802=m
+CONFIG_RTC_DRV_RP5C01=m
+CONFIG_RTC_DRV_V3020=m
+CONFIG_RTC_DRV_PCF50633=m
+
+#
+# on-CPU RTC drivers
+#
+CONFIG_RTC_DRV_MC13XXX=m
+CONFIG_DMADEVICES=y
+# CONFIG_DMADEVICES_DEBUG is not set
+
+#
+# DMA Devices
+#
+CONFIG_INTEL_MID_DMAC=m
+CONFIG_INTEL_IOATDMA=m
+CONFIG_TIMB_DMA=m
+CONFIG_PCH_DMA=m
+CONFIG_DMA_ENGINE=y
+
+#
+# DMA Clients
+#
+CONFIG_NET_DMA=y
+CONFIG_ASYNC_TX_DMA=y
+# CONFIG_DMATEST is not set
+CONFIG_DCA=m
+CONFIG_AUXDISPLAY=y
+CONFIG_KS0108=m
+CONFIG_KS0108_PORT=0x378
+CONFIG_KS0108_DELAY=2
+CONFIG_CFAG12864B=m
+CONFIG_CFAG12864B_RATE=20
+CONFIG_UIO=m
+CONFIG_UIO_CIF=m
+CONFIG_UIO_PDRV=m
+CONFIG_UIO_PDRV_GENIRQ=m
+CONFIG_UIO_AEC=m
+CONFIG_UIO_SERCOS3=m
+CONFIG_UIO_PCI_GENERIC=m
+CONFIG_UIO_NETX=m
+# CONFIG_VFIO is not set
+CONFIG_VIRTIO=m
+CONFIG_VIRTIO_RING=m
+
+#
+# Virtio drivers
+#
+CONFIG_VIRTIO_PCI=m
+CONFIG_VIRTIO_BALLOON=m
+CONFIG_VIRTIO_MMIO=m
+CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
+
+#
+# Microsoft Hyper-V guest support
+#
+CONFIG_HYPERV=m
+CONFIG_HYPERV_UTILS=m
+
+#
+# Xen driver support
+#
+CONFIG_XEN_BALLOON=y
+# CONFIG_XEN_SELFBALLOONING is not set
+CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y
+CONFIG_XEN_SCRUB_PAGES=y
+CONFIG_XEN_DEV_EVTCHN=m
+CONFIG_XEN_BACKEND=y
+CONFIG_XENFS=m
+CONFIG_XEN_COMPAT_XENFS=y
+CONFIG_XEN_SYS_HYPERVISOR=y
+CONFIG_XEN_XENBUS_FRONTEND=y
+CONFIG_XEN_GNTDEV=m
+CONFIG_XEN_GRANT_DEV_ALLOC=m
+CONFIG_SWIOTLB_XEN=y
+CONFIG_XEN_TMEM=y
+CONFIG_XEN_PCIDEV_BACKEND=m
+CONFIG_XEN_PRIVCMD=m
+CONFIG_XEN_ACPI_PROCESSOR=m
+# CONFIG_XEN_MCE_LOG is not set
+CONFIG_STAGING=y
+CONFIG_ET131X=m
+CONFIG_SLICOSS=m
+CONFIG_USBIP_CORE=m
+CONFIG_USBIP_VHCI_HCD=m
+CONFIG_USBIP_HOST=m
+# CONFIG_USBIP_DEBUG is not set
+CONFIG_W35UND=m
+CONFIG_PRISM2_USB=m
+CONFIG_ECHO=m
+CONFIG_COMEDI=m
+# CONFIG_COMEDI_DEBUG is not set
+CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048
+CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480
+CONFIG_COMEDI_MISC_DRIVERS=y
+CONFIG_COMEDI_KCOMEDILIB=m
+CONFIG_COMEDI_BOND=m
+CONFIG_COMEDI_TEST=m
+CONFIG_COMEDI_PARPORT=m
+CONFIG_COMEDI_SERIAL2002=m
+CONFIG_COMEDI_SKEL=m
+CONFIG_COMEDI_PCI_DRIVERS=y
+CONFIG_COMEDI_ADDI_APCI_035=m
+CONFIG_COMEDI_ADDI_APCI_1032=m
+CONFIG_COMEDI_ADDI_APCI_1500=m
+CONFIG_COMEDI_ADDI_APCI_1516=m
+CONFIG_COMEDI_ADDI_APCI_1564=m
+CONFIG_COMEDI_ADDI_APCI_16XX=m
+CONFIG_COMEDI_ADDI_APCI_2016=m
+CONFIG_COMEDI_ADDI_APCI_2032=m
+CONFIG_COMEDI_ADDI_APCI_2200=m
+CONFIG_COMEDI_ADDI_APCI_3001=m
+CONFIG_COMEDI_ADDI_APCI_3120=m
+CONFIG_COMEDI_ADDI_APCI_3501=m
+CONFIG_COMEDI_ADDI_APCI_3XXX=m
+CONFIG_COMEDI_ADL_PCI6208=m
+CONFIG_COMEDI_ADL_PCI7230=m
+CONFIG_COMEDI_ADL_PCI7296=m
+CONFIG_COMEDI_ADL_PCI7432=m
+CONFIG_COMEDI_ADL_PCI8164=m
+CONFIG_COMEDI_ADL_PCI9111=m
+CONFIG_COMEDI_ADL_PCI9118=m
+CONFIG_COMEDI_ADV_PCI1710=m
+CONFIG_COMEDI_ADV_PCI1723=m
+CONFIG_COMEDI_ADV_PCI_DIO=m
+CONFIG_COMEDI_AMPLC_DIO200_PCI=m
+CONFIG_COMEDI_AMPLC_PC236_PCI=m
+CONFIG_COMEDI_AMPLC_PC263_PCI=m
+CONFIG_COMEDI_AMPLC_PCI224=m
+CONFIG_COMEDI_AMPLC_PCI230=m
+CONFIG_COMEDI_CONTEC_PCI_DIO=m
+CONFIG_COMEDI_DAS08_PCI=m
+CONFIG_COMEDI_DT3000=m
+CONFIG_COMEDI_DYNA_PCI10XX=m
+CONFIG_COMEDI_UNIOXX5=m
+CONFIG_COMEDI_GSC_HPDI=m
+CONFIG_COMEDI_ICP_MULTI=m
+CONFIG_COMEDI_II_PCI20KC=m
+CONFIG_COMEDI_DAQBOARD2000=m
+CONFIG_COMEDI_JR3_PCI=m
+CONFIG_COMEDI_KE_COUNTER=m
+CONFIG_COMEDI_CB_PCIDAS64=m
+CONFIG_COMEDI_CB_PCIDAS=m
+CONFIG_COMEDI_CB_PCIDDA=m
+CONFIG_COMEDI_CB_PCIDIO=m
+CONFIG_COMEDI_CB_PCIMDAS=m
+CONFIG_COMEDI_CB_PCIMDDA=m
+CONFIG_COMEDI_ME4000=m
+CONFIG_COMEDI_ME_DAQ=m
+CONFIG_COMEDI_NI_6527=m
+CONFIG_COMEDI_NI_65XX=m
+CONFIG_COMEDI_NI_660X=m
+CONFIG_COMEDI_NI_670X=m
+CONFIG_COMEDI_NI_LABPC=m
+CONFIG_COMEDI_NI_PCIDIO=m
+CONFIG_COMEDI_NI_PCIMIO=m
+CONFIG_COMEDI_RTD520=m
+CONFIG_COMEDI_S526=m
+CONFIG_COMEDI_S626=m
+CONFIG_COMEDI_SSV_DNP=m
+CONFIG_COMEDI_MITE=m
+CONFIG_COMEDI_NI_TIOCMD=m
+CONFIG_COMEDI_PCMCIA_DRIVERS=y
+CONFIG_COMEDI_CB_DAS16_CS=m
+CONFIG_COMEDI_DAS08_CS=m
+CONFIG_COMEDI_NI_DAQ_700_CS=m
+CONFIG_COMEDI_NI_DAQ_DIO24_CS=m
+CONFIG_COMEDI_NI_LABPC_CS=m
+CONFIG_COMEDI_NI_MIO_CS=m
+CONFIG_COMEDI_QUATECH_DAQP_CS=m
+CONFIG_COMEDI_USB_DRIVERS=y
+CONFIG_COMEDI_DT9812=m
+CONFIG_COMEDI_USBDUX=m
+CONFIG_COMEDI_USBDUXFAST=m
+CONFIG_COMEDI_USBDUXSIGMA=m
+CONFIG_COMEDI_VMK80XX=m
+CONFIG_COMEDI_8255=m
+CONFIG_COMEDI_FC=m
+CONFIG_COMEDI_AMPLC_DIO200=m
+CONFIG_COMEDI_AMPLC_PC236=m
+CONFIG_COMEDI_AMPLC_PC263=m
+CONFIG_COMEDI_DAS08=m
+CONFIG_COMEDI_NI_TIO=m
+CONFIG_ASUS_OLED=m
+# CONFIG_PANEL is not set
+CONFIG_R8187SE=m
+CONFIG_RTL8192U=m
+CONFIG_RTLLIB=m
+CONFIG_RTLLIB_CRYPTO_CCMP=m
+CONFIG_RTLLIB_CRYPTO_TKIP=m
+CONFIG_RTLLIB_CRYPTO_WEP=m
+CONFIG_RTL8192E=m
+CONFIG_R8712U=m
+CONFIG_RTS_PSTOR=m
+# CONFIG_RTS_PSTOR_DEBUG is not set
+CONFIG_RTS5139=m
+# CONFIG_RTS5139_DEBUG is not set
+# CONFIG_TRANZPORT is not set
+CONFIG_IDE_PHISON=m
+CONFIG_LINE6_USB=m
+# CONFIG_LINE6_USB_DEBUG is not set
+# CONFIG_LINE6_USB_DUMP_CTRL is not set
+# CONFIG_LINE6_USB_DUMP_MIDI is not set
+# CONFIG_LINE6_USB_DUMP_PCM is not set
+# CONFIG_LINE6_USB_RAW is not set
+# CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set
+CONFIG_USB_SERIAL_QUATECH2=m
+CONFIG_VT6655=m
+CONFIG_VT6656=m
+CONFIG_DX_SEP=m
+CONFIG_ZRAM=m
+# CONFIG_ZRAM_DEBUG is not set
+CONFIG_ZCACHE=y
+CONFIG_ZSMALLOC=y
+CONFIG_WLAGS49_H2=m
+CONFIG_WLAGS49_H25=m
+CONFIG_FB_SM7XX=m
+CONFIG_CRYSTALHD=m
+CONFIG_FB_XGI=m
+CONFIG_ACPI_QUICKSTART=m
+CONFIG_USB_ENESTORAGE=m
+CONFIG_BCM_WIMAX=m
+CONFIG_FT1000=m
+CONFIG_FT1000_USB=m
+CONFIG_FT1000_PCMCIA=m
+
+#
+# Speakup console speech
+#
+CONFIG_SPEAKUP=m
+CONFIG_SPEAKUP_SYNTH_ACNTSA=m
+CONFIG_SPEAKUP_SYNTH_ACNTPC=m
+CONFIG_SPEAKUP_SYNTH_APOLLO=m
+CONFIG_SPEAKUP_SYNTH_AUDPTR=m
+CONFIG_SPEAKUP_SYNTH_BNS=m
+CONFIG_SPEAKUP_SYNTH_DECTLK=m
+CONFIG_SPEAKUP_SYNTH_DECEXT=m
+CONFIG_SPEAKUP_SYNTH_DECPC=m
+CONFIG_SPEAKUP_SYNTH_DTLK=m
+CONFIG_SPEAKUP_SYNTH_KEYPC=m
+CONFIG_SPEAKUP_SYNTH_LTLK=m
+CONFIG_SPEAKUP_SYNTH_SOFT=m
+CONFIG_SPEAKUP_SYNTH_SPKOUT=m
+CONFIG_SPEAKUP_SYNTH_TXPRT=m
+CONFIG_SPEAKUP_SYNTH_DUMMY=m
+CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m
+CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m
+CONFIG_STAGING_MEDIA=y
+CONFIG_DVB_AS102=m
+CONFIG_DVB_CXD2099=m
+CONFIG_VIDEO_DT3155=m
+CONFIG_DT3155_CCIR=y
+CONFIG_DT3155_STREAMING=y
+CONFIG_EASYCAP=m
+# CONFIG_EASYCAP_DEBUG is not set
+CONFIG_VIDEO_GO7007=m
+CONFIG_VIDEO_GO7007_USB=m
+# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set
+CONFIG_VIDEO_GO7007_OV7640=m
+CONFIG_VIDEO_GO7007_SAA7113=m
+CONFIG_VIDEO_GO7007_SAA7115=m
+CONFIG_VIDEO_GO7007_TW9903=m
+CONFIG_VIDEO_GO7007_UDA1342=m
+CONFIG_VIDEO_GO7007_SONY_TUNER=m
+CONFIG_VIDEO_GO7007_TW2804=m
+CONFIG_SOLO6X10=m
+CONFIG_LIRC_STAGING=y
+CONFIG_LIRC_BT829=m
+CONFIG_LIRC_IGORPLUGUSB=m
+CONFIG_LIRC_IMON=m
+CONFIG_LIRC_PARALLEL=m
+CONFIG_LIRC_SASEM=m
+CONFIG_LIRC_SERIAL=m
+CONFIG_LIRC_SERIAL_TRANSMITTER=y
+CONFIG_LIRC_SIR=m
+CONFIG_LIRC_TTUSBIR=m
+CONFIG_LIRC_ZILOG=m
+
+#
+# Android
+#
+# CONFIG_ANDROID is not set
+# CONFIG_PHONE is not set
+CONFIG_USB_WPAN_HCD=m
+CONFIG_IPACK_BUS=m
+CONFIG_BOARD_TPCI200=m
+CONFIG_SERIAL_IPOCTAL=m
+CONFIG_WIMAX_GDM72XX=m
+CONFIG_WIMAX_GDM72XX_QOS=y
+CONFIG_WIMAX_GDM72XX_K_MODE=y
+CONFIG_WIMAX_GDM72XX_WIMAX2=y
+CONFIG_WIMAX_GDM72XX_USB=y
+# CONFIG_WIMAX_GDM72XX_SDIO is not set
+CONFIG_WIMAX_GDM72XX_USB_PM=y
+CONFIG_CSR_WIFI=m
+CONFIG_X86_PLATFORM_DEVICES=y
+CONFIG_ACER_WMI=m
+CONFIG_ACERHDF=m
+CONFIG_ASUS_LAPTOP=m
+CONFIG_DELL_LAPTOP=m
+CONFIG_DELL_WMI=m
+CONFIG_DELL_WMI_AIO=m
+CONFIG_FUJITSU_LAPTOP=m
+# CONFIG_FUJITSU_LAPTOP_DEBUG is not set
+CONFIG_FUJITSU_TABLET=m
+CONFIG_AMILO_RFKILL=m
+CONFIG_HP_ACCEL=m
+CONFIG_HP_WMI=m
+CONFIG_MSI_LAPTOP=m
+CONFIG_PANASONIC_LAPTOP=m
+CONFIG_COMPAL_LAPTOP=m
+CONFIG_SONY_LAPTOP=m
+# CONFIG_SONYPI_COMPAT is not set
+CONFIG_IDEAPAD_LAPTOP=m
+CONFIG_THINKPAD_ACPI=m
+CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y
+# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set
+# CONFIG_THINKPAD_ACPI_DEBUG is not set
+# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
+CONFIG_THINKPAD_ACPI_VIDEO=y
+CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
+CONFIG_SENSORS_HDAPS=m
+CONFIG_INTEL_MENLOW=m
+CONFIG_EEEPC_LAPTOP=m
+CONFIG_ASUS_WMI=m
+CONFIG_ASUS_NB_WMI=m
+CONFIG_EEEPC_WMI=m
+CONFIG_ACPI_WMI=m
+CONFIG_MSI_WMI=m
+CONFIG_TOPSTAR_LAPTOP=m
+CONFIG_ACPI_TOSHIBA=m
+CONFIG_TOSHIBA_BT_RFKILL=m
+CONFIG_ACPI_CMPC=m
+CONFIG_INTEL_IPS=m
+CONFIG_IBM_RTL=m
+CONFIG_XO15_EBOOK=m
+CONFIG_SAMSUNG_LAPTOP=m
+CONFIG_MXM_WMI=m
+CONFIG_INTEL_OAKTRAIL=m
+CONFIG_SAMSUNG_Q10=m
+CONFIG_APPLE_GMUX=m
+
+#
+# Hardware Spinlock drivers
+#
+CONFIG_CLKEVT_I8253=y
+CONFIG_I8253_LOCK=y
+CONFIG_CLKBLD_I8253=y
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+CONFIG_AMD_IOMMU=y
+# CONFIG_AMD_IOMMU_STATS is not set
+CONFIG_AMD_IOMMU_V2=m
+CONFIG_DMAR_TABLE=y
+CONFIG_INTEL_IOMMU=y
+# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
+CONFIG_INTEL_IOMMU_FLOPPY_WA=y
+CONFIG_IRQ_REMAP=y
+
+#
+# Remoteproc drivers (EXPERIMENTAL)
+#
+
+#
+# Rpmsg drivers (EXPERIMENTAL)
+#
+CONFIG_VIRT_DRIVERS=y
+# CONFIG_PM_DEVFREQ is not set
+CONFIG_EXTCON=m
+
+#
+# Extcon Device Drivers
+#
+CONFIG_EXTCON_GPIO=m
+CONFIG_EXTCON_ARIZONA=m
+CONFIG_MEMORY=y
+# CONFIG_IIO is not set
+# CONFIG_VME_BUS is not set
+# CONFIG_PWM is not set
+
+#
+# Firmware Drivers
+#
+CONFIG_EDD=m
+# CONFIG_EDD_OFF is not set
+CONFIG_FIRMWARE_MEMMAP=y
+CONFIG_EFI_VARS=m
+CONFIG_DELL_RBU=m
+CONFIG_DCDBAS=m
+CONFIG_DMIID=y
+CONFIG_DMI_SYSFS=m
+CONFIG_ISCSI_IBFT_FIND=y
+CONFIG_ISCSI_IBFT=m
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+#
+# File systems
+#
+CONFIG_DCACHE_WORD_ACCESS=y
+# CONFIG_EXT2_FS is not set
+# CONFIG_EXT3_FS is not set
+CONFIG_EXT4_FS=m
+CONFIG_EXT4_USE_FOR_EXT23=y
+CONFIG_EXT4_FS_XATTR=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD2=m
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=m
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+CONFIG_REISERFS_PROC_INFO=y
+CONFIG_REISERFS_FS_XATTR=y
+CONFIG_REISERFS_FS_POSIX_ACL=y
+CONFIG_REISERFS_FS_SECURITY=y
+CONFIG_JFS_FS=m
+CONFIG_JFS_POSIX_ACL=y
+CONFIG_JFS_SECURITY=y
+# CONFIG_JFS_DEBUG is not set
+CONFIG_JFS_STATISTICS=y
+CONFIG_XFS_FS=m
+CONFIG_XFS_QUOTA=y
+CONFIG_XFS_POSIX_ACL=y
+CONFIG_XFS_RT=y
+# CONFIG_XFS_DEBUG is not set
+CONFIG_GFS2_FS=m
+CONFIG_GFS2_FS_LOCKING_DLM=y
+CONFIG_OCFS2_FS=m
+CONFIG_OCFS2_FS_O2CB=m
+CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
+CONFIG_OCFS2_FS_STATS=y
+# CONFIG_OCFS2_DEBUG_MASKLOG is not set
+# CONFIG_OCFS2_DEBUG_FS is not set
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
+CONFIG_NILFS2_FS=m
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
+CONFIG_FILE_LOCKING=y
+CONFIG_FSNOTIFY=y
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
+CONFIG_QUOTA=y
+CONFIG_QUOTA_NETLINK_INTERFACE=y
+# CONFIG_PRINT_QUOTA_WARNING is not set
+# CONFIG_QUOTA_DEBUG is not set
+CONFIG_QUOTA_TREE=m
+CONFIG_QFMT_V1=m
+CONFIG_QFMT_V2=m
+CONFIG_QUOTACTL=y
+CONFIG_QUOTACTL_COMPAT=y
+CONFIG_AUTOFS4_FS=y
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+CONFIG_GENERIC_ACL=y
+
+#
+# Caches
+#
+CONFIG_FSCACHE=m
+CONFIG_FSCACHE_STATS=y
+CONFIG_FSCACHE_HISTOGRAM=y
+# CONFIG_FSCACHE_DEBUG is not set
+# CONFIG_FSCACHE_OBJECT_LIST is not set
+CONFIG_CACHEFILES=m
+# CONFIG_CACHEFILES_DEBUG is not set
+# CONFIG_CACHEFILES_HISTOGRAM is not set
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+CONFIG_UDF_FS=m
+CONFIG_UDF_NLS=y
+
+#
+# DOS/FAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
+CONFIG_NTFS_FS=m
+# CONFIG_NTFS_DEBUG is not set
+CONFIG_NTFS_RW=y
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+CONFIG_PROC_SYSCTL=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
+CONFIG_HUGETLBFS=y
+CONFIG_HUGETLB_PAGE=y
+CONFIG_CONFIGFS_FS=m
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ADFS_FS is not set
+CONFIG_AFFS_FS=m
+CONFIG_ECRYPT_FS=m
+CONFIG_HFS_FS=m
+CONFIG_HFSPLUS_FS=m
+CONFIG_BEFS_FS=m
+# CONFIG_BEFS_DEBUG is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+CONFIG_JFFS2_FS=m
+CONFIG_JFFS2_FS_DEBUG=0
+CONFIG_JFFS2_FS_WRITEBUFFER=y
+# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
+# CONFIG_JFFS2_SUMMARY is not set
+CONFIG_JFFS2_FS_XATTR=y
+CONFIG_JFFS2_FS_POSIX_ACL=y
+CONFIG_JFFS2_FS_SECURITY=y
+# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
+CONFIG_JFFS2_ZLIB=y
+# CONFIG_JFFS2_LZO is not set
+CONFIG_JFFS2_RTIME=y
+# CONFIG_JFFS2_RUBIN is not set
+CONFIG_UBIFS_FS=m
+# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+CONFIG_LOGFS=m
+CONFIG_CRAMFS=m
+CONFIG_SQUASHFS=m
+CONFIG_SQUASHFS_XATTR=y
+CONFIG_SQUASHFS_ZLIB=y
+CONFIG_SQUASHFS_LZO=y
+CONFIG_SQUASHFS_XZ=y
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+CONFIG_MINIX_FS=m
+CONFIG_OMFS_FS=m
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+CONFIG_PSTORE=y
+# CONFIG_PSTORE_CONSOLE is not set
+# CONFIG_PSTORE_FTRACE is not set
+CONFIG_PSTORE_RAM=m
+# CONFIG_SYSV_FS is not set
+CONFIG_UFS_FS=m
+# CONFIG_UFS_FS_WRITE is not set
+# CONFIG_UFS_DEBUG is not set
+CONFIG_EXOFS_FS=m
+# CONFIG_EXOFS_DEBUG is not set
+CONFIG_ORE=m
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=m
+CONFIG_NFS_V2=m
+CONFIG_NFS_V3=m
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=m
+# CONFIG_NFS_SWAP is not set
+# CONFIG_NFS_V4_1 is not set
+CONFIG_NFS_FSCACHE=y
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFSD=m
+CONFIG_NFSD_V2_ACL=y
+CONFIG_NFSD_V3=y
+CONFIG_NFSD_V3_ACL=y
+CONFIG_NFSD_V4=y
+# CONFIG_NFSD_FAULT_INJECTION is not set
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_ACL_SUPPORT=m
+CONFIG_NFS_COMMON=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+CONFIG_RPCSEC_GSS_KRB5=m
+# CONFIG_SUNRPC_DEBUG is not set
+CONFIG_CEPH_FS=m
+CONFIG_CIFS=m
+CONFIG_CIFS_STATS=y
+# CONFIG_CIFS_STATS2 is not set
+CONFIG_CIFS_WEAK_PW_HASH=y
+CONFIG_CIFS_UPCALL=y
+CONFIG_CIFS_XATTR=y
+CONFIG_CIFS_POSIX=y
+# CONFIG_CIFS_DEBUG2 is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_FSCACHE=y
+CONFIG_CIFS_ACL=y
+CONFIG_NCP_FS=m
+# CONFIG_NCPFS_PACKET_SIGNING is not set
+# CONFIG_NCPFS_IOCTL_LOCKING is not set
+# CONFIG_NCPFS_STRONG is not set
+CONFIG_NCPFS_NFS_NS=y
+CONFIG_NCPFS_OS2_NS=y
+CONFIG_NCPFS_SMALLDOS=y
+CONFIG_NCPFS_NLS=y
+# CONFIG_NCPFS_EXTRAS is not set
+CONFIG_CODA_FS=m
+CONFIG_AFS_FS=m
+# CONFIG_AFS_DEBUG is not set
+CONFIG_AFS_FSCACHE=y
+CONFIG_9P_FS=m
+CONFIG_9P_FSCACHE=y
+CONFIG_9P_FS_POSIX_ACL=y
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="utf8"
+CONFIG_NLS_CODEPAGE_437=m
+CONFIG_NLS_CODEPAGE_737=m
+CONFIG_NLS_CODEPAGE_775=m
+CONFIG_NLS_CODEPAGE_850=m
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+CONFIG_NLS_CODEPAGE_857=m
+CONFIG_NLS_CODEPAGE_860=m
+CONFIG_NLS_CODEPAGE_861=m
+CONFIG_NLS_CODEPAGE_862=m
+CONFIG_NLS_CODEPAGE_863=m
+CONFIG_NLS_CODEPAGE_864=m
+CONFIG_NLS_CODEPAGE_865=m
+CONFIG_NLS_CODEPAGE_866=m
+CONFIG_NLS_CODEPAGE_869=m
+CONFIG_NLS_CODEPAGE_936=m
+CONFIG_NLS_CODEPAGE_950=m
+CONFIG_NLS_CODEPAGE_932=m
+CONFIG_NLS_CODEPAGE_949=m
+CONFIG_NLS_CODEPAGE_874=m
+CONFIG_NLS_ISO8859_8=m
+CONFIG_NLS_CODEPAGE_1250=m
+CONFIG_NLS_CODEPAGE_1251=m
+CONFIG_NLS_ASCII=m
+CONFIG_NLS_ISO8859_1=y
+CONFIG_NLS_ISO8859_2=m
+CONFIG_NLS_ISO8859_3=m
+CONFIG_NLS_ISO8859_4=m
+CONFIG_NLS_ISO8859_5=m
+CONFIG_NLS_ISO8859_6=m
+CONFIG_NLS_ISO8859_7=m
+CONFIG_NLS_ISO8859_9=m
+CONFIG_NLS_ISO8859_13=m
+CONFIG_NLS_ISO8859_14=m
+CONFIG_NLS_ISO8859_15=m
+CONFIG_NLS_KOI8_R=m
+CONFIG_NLS_KOI8_U=m
+CONFIG_NLS_MAC_ROMAN=m
+CONFIG_NLS_MAC_CELTIC=m
+CONFIG_NLS_MAC_CENTEURO=m
+CONFIG_NLS_MAC_CROATIAN=m
+CONFIG_NLS_MAC_CYRILLIC=m
+CONFIG_NLS_MAC_GAELIC=m
+CONFIG_NLS_MAC_GREEK=m
+CONFIG_NLS_MAC_ICELAND=m
+CONFIG_NLS_MAC_INUIT=m
+CONFIG_NLS_MAC_ROMANIAN=m
+CONFIG_NLS_MAC_TURKISH=m
+CONFIG_NLS_UTF8=m
+CONFIG_DLM=m
+# CONFIG_DLM_DEBUG is not set
+
+#
+# Kernel hacking
+#
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_PRINTK_TIME=y
+CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
+CONFIG_ENABLE_WARN_DEPRECATED=y
+# CONFIG_ENABLE_MUST_CHECK is not set
+CONFIG_FRAME_WARN=2048
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_STRIP_ASM_SYMS=y
+# CONFIG_READABLE_ASM is not set
+CONFIG_UNUSED_SYMBOLS=y
+CONFIG_DEBUG_FS=y
+# CONFIG_HEADERS_CHECK is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_DEBUG_KERNEL=y
+# CONFIG_DEBUG_SHIRQ is not set
+CONFIG_LOCKUP_DETECTOR=y
+CONFIG_HARDLOCKUP_DETECTOR=y
+# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
+CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0
+# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
+CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_DETECT_HUNG_TASK=y
+CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
+# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
+CONFIG_SCHED_DEBUG=y
+CONFIG_SCHEDSTATS=y
+CONFIG_TIMER_STATS=y
+# CONFIG_DEBUG_OBJECTS is not set
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_SLUB_STATS is not set
+# CONFIG_DEBUG_KMEMLEAK is not set
+# CONFIG_DEBUG_PREEMPT is not set
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_RT_MUTEX_TESTER is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+CONFIG_DEBUG_MUTEXES=y
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_SPARSE_RCU_POINTER is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_ATOMIC_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_DEBUG_KOBJECT is not set
+CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_DEBUG_INFO is not set
+# CONFIG_DEBUG_VM is not set
+# CONFIG_DEBUG_VIRTUAL is not set
+# CONFIG_DEBUG_WRITECOUNT is not set
+CONFIG_DEBUG_MEMORY_INIT=y
+# CONFIG_DEBUG_LIST is not set
+# CONFIG_TEST_LIST_SORT is not set
+# CONFIG_DEBUG_SG is not set
+# CONFIG_DEBUG_NOTIFIERS is not set
+# CONFIG_DEBUG_CREDENTIALS is not set
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+# CONFIG_BOOT_PRINTK_DELAY is not set
+# CONFIG_RCU_TORTURE_TEST is not set
+CONFIG_RCU_CPU_STALL_TIMEOUT=60
+# CONFIG_RCU_CPU_STALL_VERBOSE is not set
+# CONFIG_RCU_CPU_STALL_INFO is not set
+# CONFIG_RCU_TRACE is not set
+# CONFIG_KPROBES_SANITY_TEST is not set
+# CONFIG_BACKTRACE_SELF_TEST is not set
+# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
+# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
+# CONFIG_DEBUG_PER_CPU_MAPS is not set
+CONFIG_LKDTM=m
+# CONFIG_NOTIFIER_ERROR_INJECTION is not set
+# CONFIG_FAULT_INJECTION is not set
+# CONFIG_DEBUG_PAGEALLOC is not set
+CONFIG_USER_STACKTRACE_SUPPORT=y
+CONFIG_NOP_TRACER=y
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
+CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_TRACER_MAX_TRACE=y
+CONFIG_RING_BUFFER=y
+CONFIG_EVENT_TRACING=y
+CONFIG_EVENT_POWER_TRACING_DEPRECATED=y
+CONFIG_CONTEXT_SWITCH_TRACER=y
+CONFIG_RING_BUFFER_ALLOW_SWAP=y
+CONFIG_TRACING=y
+CONFIG_GENERIC_TRACER=y
+CONFIG_TRACING_SUPPORT=y
+CONFIG_FTRACE=y
+CONFIG_FUNCTION_TRACER=y
+CONFIG_FUNCTION_GRAPH_TRACER=y
+# CONFIG_IRQSOFF_TRACER is not set
+# CONFIG_PREEMPT_TRACER is not set
+CONFIG_SCHED_TRACER=y
+CONFIG_FTRACE_SYSCALLS=y
+CONFIG_BRANCH_PROFILE_NONE=y
+# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
+# CONFIG_PROFILE_ALL_BRANCHES is not set
+CONFIG_STACK_TRACER=y
+CONFIG_BLK_DEV_IO_TRACE=y
+CONFIG_KPROBE_EVENT=y
+CONFIG_UPROBE_EVENT=y
+CONFIG_PROBE_EVENTS=y
+CONFIG_DYNAMIC_FTRACE=y
+CONFIG_FUNCTION_PROFILER=y
+CONFIG_FTRACE_MCOUNT_RECORD=y
+# CONFIG_FTRACE_STARTUP_TEST is not set
+CONFIG_MMIOTRACE=y
+# CONFIG_MMIOTRACE_TEST is not set
+CONFIG_RING_BUFFER_BENCHMARK=m
+# CONFIG_DYNAMIC_DEBUG is not set
+# CONFIG_DMA_API_DEBUG is not set
+# CONFIG_ATOMIC64_SELFTEST is not set
+CONFIG_ASYNC_RAID6_TEST=m
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_ARCH_KGDB=y
+# CONFIG_KGDB is not set
+CONFIG_HAVE_ARCH_KMEMCHECK=y
+CONFIG_TEST_KSTRTOX=m
+CONFIG_STRICT_DEVMEM=y
+CONFIG_X86_VERBOSE_BOOTUP=y
+CONFIG_EARLY_PRINTK=y
+# CONFIG_EARLY_PRINTK_DBGP is not set
+# CONFIG_DEBUG_STACKOVERFLOW is not set
+# CONFIG_X86_PTDUMP is not set
+# CONFIG_DEBUG_NX_TEST is not set
+# CONFIG_DEBUG_TLBFLUSH is not set
+# CONFIG_IOMMU_DEBUG is not set
+# CONFIG_IOMMU_STRESS is not set
+CONFIG_HAVE_MMIOTRACE_SUPPORT=y
+# CONFIG_X86_DECODER_SELFTEST is not set
+CONFIG_IO_DELAY_TYPE_0X80=0
+CONFIG_IO_DELAY_TYPE_0XED=1
+CONFIG_IO_DELAY_TYPE_UDELAY=2
+CONFIG_IO_DELAY_TYPE_NONE=3
+CONFIG_IO_DELAY_0X80=y
+# CONFIG_IO_DELAY_0XED is not set
+# CONFIG_IO_DELAY_UDELAY is not set
+# CONFIG_IO_DELAY_NONE is not set
+CONFIG_DEFAULT_IO_DELAY_TYPE=0
+# CONFIG_DEBUG_BOOT_PARAMS is not set
+# CONFIG_CPA_DEBUG is not set
+# CONFIG_OPTIMIZE_INLINING is not set
+# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
+# CONFIG_DEBUG_NMI_SELFTEST is not set
+
+#
+# Security options
+#
+
+#
+# Grsecurity
+#
+CONFIG_TASK_SIZE_MAX_SHIFT=47
+CONFIG_PAX_USERCOPY_SLABS=y
+CONFIG_GRKERNSEC=y
+# CONFIG_GRKERNSEC_CONFIG_AUTO is not set
+CONFIG_GRKERNSEC_CONFIG_CUSTOM=y
+CONFIG_GRKERNSEC_PROC_GID=9999
+CONFIG_GRKERNSEC_TPE_TRUSTED_GID=9999
+CONFIG_GRKERNSEC_SYMLINKOWN_GID=33
+
+#
+# Customize Configuration
+#
+
+#
+# PaX
+#
+CONFIG_PAX=y
+
+#
+# PaX Control
+#
+# CONFIG_PAX_SOFTMODE is not set
+# CONFIG_PAX_EI_PAX is not set
+CONFIG_PAX_PT_PAX_FLAGS=y
+CONFIG_PAX_XATTR_PAX_FLAGS=y
+# CONFIG_PAX_NO_ACL_FLAGS is not set
+CONFIG_PAX_HAVE_ACL_FLAGS=y
+# CONFIG_PAX_HOOK_ACL_FLAGS is not set
+
+#
+# Non-executable pages
+#
+CONFIG_PAX_NOEXEC=y
+CONFIG_PAX_PAGEEXEC=y
+CONFIG_PAX_EMUTRAMP=y
+CONFIG_PAX_MPROTECT=y
+# CONFIG_PAX_MPROTECT_COMPAT is not set
+# CONFIG_PAX_ELFRELOCS is not set
+CONFIG_PAX_KERNEXEC_PLUGIN_METHOD=""
+
+#
+# Address Space Layout Randomization
+#
+CONFIG_PAX_ASLR=y
+CONFIG_PAX_RANDKSTACK=y
+CONFIG_PAX_RANDUSTACK=y
+CONFIG_PAX_RANDMMAP=y
+
+#
+# Miscellaneous hardening features
+#
+CONFIG_PAX_MEMORY_STACKLEAK=y
+CONFIG_PAX_REFCOUNT=y
+CONFIG_PAX_USERCOPY=y
+# CONFIG_PAX_SIZE_OVERFLOW is not set
+# CONFIG_PAX_LATENT_ENTROPY is not set
+
+#
+# Memory Protections
+#
+CONFIG_GRKERNSEC_KMEM=y
+# CONFIG_GRKERNSEC_IO is not set
+CONFIG_GRKERNSEC_JIT_HARDEN=y
+CONFIG_GRKERNSEC_PROC_MEMMAP=y
+CONFIG_GRKERNSEC_BRUTE=y
+CONFIG_GRKERNSEC_MODHARDEN=y
+CONFIG_GRKERNSEC_HIDESYM=y
+CONFIG_GRKERNSEC_KERN_LOCKOUT=y
+
+#
+# Role Based Access Control Options
+#
+# CONFIG_GRKERNSEC_NO_RBAC is not set
+CONFIG_GRKERNSEC_ACL_HIDEKERN=y
+CONFIG_GRKERNSEC_ACL_MAXTRIES=3
+CONFIG_GRKERNSEC_ACL_TIMEOUT=30
+
+#
+# Filesystem Protections
+#
+CONFIG_GRKERNSEC_PROC=y
+# CONFIG_GRKERNSEC_PROC_USER is not set
+CONFIG_GRKERNSEC_PROC_USERGROUP=y
+CONFIG_GRKERNSEC_PROC_ADD=y
+CONFIG_GRKERNSEC_LINK=y
+CONFIG_GRKERNSEC_SYMLINKOWN=y
+CONFIG_GRKERNSEC_FIFO=y
+CONFIG_GRKERNSEC_SYSFS_RESTRICT=y
+CONFIG_GRKERNSEC_ROFS=y
+CONFIG_GRKERNSEC_CHROOT=y
+CONFIG_GRKERNSEC_CHROOT_MOUNT=y
+CONFIG_GRKERNSEC_CHROOT_DOUBLE=y
+CONFIG_GRKERNSEC_CHROOT_PIVOT=y
+CONFIG_GRKERNSEC_CHROOT_CHDIR=y
+CONFIG_GRKERNSEC_CHROOT_CHMOD=y
+CONFIG_GRKERNSEC_CHROOT_FCHDIR=y
+CONFIG_GRKERNSEC_CHROOT_MKNOD=y
+CONFIG_GRKERNSEC_CHROOT_SHMAT=y
+CONFIG_GRKERNSEC_CHROOT_UNIX=y
+CONFIG_GRKERNSEC_CHROOT_FINDTASK=y
+CONFIG_GRKERNSEC_CHROOT_NICE=y
+CONFIG_GRKERNSEC_CHROOT_SYSCTL=y
+CONFIG_GRKERNSEC_CHROOT_CAPS=y
+
+#
+# Kernel Auditing
+#
+# CONFIG_GRKERNSEC_AUDIT_GROUP is not set
+# CONFIG_GRKERNSEC_EXECLOG is not set
+CONFIG_GRKERNSEC_RESLOG=y
+# CONFIG_GRKERNSEC_CHROOT_EXECLOG is not set
+CONFIG_GRKERNSEC_AUDIT_PTRACE=y
+# CONFIG_GRKERNSEC_AUDIT_CHDIR is not set
+CONFIG_GRKERNSEC_AUDIT_MOUNT=y
+CONFIG_GRKERNSEC_SIGNAL=y
+CONFIG_GRKERNSEC_FORKFAIL=y
+CONFIG_GRKERNSEC_TIME=y
+CONFIG_GRKERNSEC_PROC_IPADDR=y
+CONFIG_GRKERNSEC_RWXMAP_LOG=y
+# CONFIG_GRKERNSEC_AUDIT_TEXTREL is not set
+
+#
+# Executable Protections
+#
+CONFIG_GRKERNSEC_DMESG=y
+CONFIG_GRKERNSEC_HARDEN_PTRACE=y
+CONFIG_GRKERNSEC_PTRACE_READEXEC=y
+CONFIG_GRKERNSEC_SETXID=y
+CONFIG_GRKERNSEC_TPE=y
+CONFIG_GRKERNSEC_TPE_ALL=y
+CONFIG_GRKERNSEC_TPE_INVERT=y
+CONFIG_GRKERNSEC_TPE_GID=9999
+
+#
+# Network Protections
+#
+CONFIG_GRKERNSEC_RANDNET=y
+CONFIG_GRKERNSEC_BLACKHOLE=y
+# CONFIG_GRKERNSEC_SOCKET is not set
+
+#
+# Sysctl Support
+#
+CONFIG_GRKERNSEC_SYSCTL=y
+# CONFIG_GRKERNSEC_SYSCTL_DISTRO is not set
+CONFIG_GRKERNSEC_SYSCTL_ON=y
+
+#
+# Logging Options
+#
+CONFIG_GRKERNSEC_FLOODTIME=10
+CONFIG_GRKERNSEC_FLOODBURST=6
+CONFIG_KEYS=y
+CONFIG_TRUSTED_KEYS=m
+CONFIG_ENCRYPTED_KEYS=m
+# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
+CONFIG_SECURITY=y
+CONFIG_SECURITYFS=y
+CONFIG_SECURITY_NETWORK=y
+# CONFIG_SECURITY_NETWORK_XFRM is not set
+CONFIG_SECURITY_PATH=y
+# CONFIG_INTEL_TXT is not set
+# CONFIG_SECURITY_SELINUX is not set
+# CONFIG_SECURITY_SMACK is not set
+CONFIG_SECURITY_TOMOYO=y
+CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048
+CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024
+# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set
+CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init"
+CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init"
+CONFIG_SECURITY_APPARMOR=y
+CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=0
+# CONFIG_IMA is not set
+# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
+# CONFIG_DEFAULT_SECURITY_APPARMOR is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_DEFAULT_SECURITY=""
+CONFIG_XOR_BLOCKS=m
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
+CONFIG_ASYNC_PQ=m
+CONFIG_ASYNC_RAID6_RECOV=m
+CONFIG_ASYNC_TX_DISABLE_PQ_VAL_DMA=y
+CONFIG_ASYNC_TX_DISABLE_XOR_VAL_DMA=y
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_BLKCIPHER=m
+CONFIG_CRYPTO_BLKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=m
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_PCOMP=m
+CONFIG_CRYPTO_PCOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+CONFIG_CRYPTO_USER=m
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+CONFIG_CRYPTO_GF128MUL=m
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_PCRYPT=m
+CONFIG_CRYPTO_WORKQUEUE=y
+CONFIG_CRYPTO_CRYPTD=m
+CONFIG_CRYPTO_AUTHENC=m
+CONFIG_CRYPTO_TEST=m
+CONFIG_CRYPTO_ABLK_HELPER_X86=m
+CONFIG_CRYPTO_GLUE_HELPER_X86=m
+
+#
+# Authenticated Encryption with Associated Data
+#
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_SEQIV=m
+
+#
+# Block modes
+#
+CONFIG_CRYPTO_CBC=m
+CONFIG_CRYPTO_CTR=m
+CONFIG_CRYPTO_CTS=m
+CONFIG_CRYPTO_ECB=m
+CONFIG_CRYPTO_LRW=m
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_XTS=m
+
+#
+# Hash modes
+#
+CONFIG_CRYPTO_HMAC=m
+CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
+
+#
+# Digest
+#
+CONFIG_CRYPTO_CRC32C=m
+CONFIG_CRYPTO_CRC32C_INTEL=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=m
+CONFIG_CRYPTO_MICHAEL_MIC=m
+CONFIG_CRYPTO_RMD128=m
+CONFIG_CRYPTO_RMD160=m
+CONFIG_CRYPTO_RMD256=m
+CONFIG_CRYPTO_RMD320=m
+CONFIG_CRYPTO_SHA1=m
+CONFIG_CRYPTO_SHA1_SSSE3=m
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=m
+CONFIG_CRYPTO_TGR192=m
+CONFIG_CRYPTO_WP512=m
+CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
+
+#
+# Ciphers
+#
+CONFIG_CRYPTO_AES=m
+CONFIG_CRYPTO_AES_X86_64=m
+CONFIG_CRYPTO_AES_NI_INTEL=m
+CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_ARC4=m
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_BLOWFISH_COMMON=m
+CONFIG_CRYPTO_BLOWFISH_X86_64=m
+CONFIG_CRYPTO_CAMELLIA=m
+CONFIG_CRYPTO_CAMELLIA_X86_64=m
+CONFIG_CRYPTO_CAST5=m
+CONFIG_CRYPTO_CAST6=m
+CONFIG_CRYPTO_DES=m
+CONFIG_CRYPTO_FCRYPT=m
+CONFIG_CRYPTO_KHAZAD=m
+CONFIG_CRYPTO_SALSA20=m
+CONFIG_CRYPTO_SALSA20_X86_64=m
+CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m
+CONFIG_CRYPTO_SERPENT_AVX_X86_64=m
+CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+CONFIG_CRYPTO_TWOFISH_X86_64=m
+CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m
+CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m
+
+#
+# Compression
+#
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_ZLIB=m
+CONFIG_CRYPTO_LZO=y
+
+#
+# Random Number Generation
+#
+CONFIG_CRYPTO_ANSI_CPRNG=m
+CONFIG_CRYPTO_USER_API=m
+CONFIG_CRYPTO_USER_API_HASH=m
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+CONFIG_CRYPTO_HW=y
+CONFIG_CRYPTO_DEV_PADLOCK=m
+CONFIG_CRYPTO_DEV_PADLOCK_AES=m
+CONFIG_CRYPTO_DEV_PADLOCK_SHA=m
+CONFIG_HAVE_KVM=y
+CONFIG_HAVE_KVM_IRQCHIP=y
+CONFIG_HAVE_KVM_EVENTFD=y
+CONFIG_KVM_APIC_ARCHITECTURE=y
+CONFIG_KVM_MMIO=y
+CONFIG_KVM_ASYNC_PF=y
+CONFIG_HAVE_KVM_MSI=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=m
+CONFIG_KVM_INTEL=m
+CONFIG_KVM_AMD=m
+CONFIG_KVM_MMU_AUDIT=y
+CONFIG_VHOST_NET=m
+CONFIG_TCM_VHOST=m
+CONFIG_BINARY_PRINTF=y
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=m
+CONFIG_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_FIND_FIRST_BIT=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GENERIC_IOMAP=y
+CONFIG_GENERIC_IO=y
+CONFIG_CRC_CCITT=m
+CONFIG_CRC16=m
+CONFIG_CRC_T10DIF=m
+CONFIG_CRC_ITU_T=m
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+CONFIG_CRC7=m
+CONFIG_LIBCRC32C=m
+CONFIG_CRC8=m
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_XZ_DEC=y
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_IA64=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_BCJ=y
+# CONFIG_XZ_DEC_TEST is not set
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_DECOMPRESS_BZIP2=y
+CONFIG_DECOMPRESS_LZMA=y
+CONFIG_DECOMPRESS_XZ=y
+CONFIG_DECOMPRESS_LZO=y
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_REED_SOLOMON=m
+CONFIG_REED_SOLOMON_ENC8=y
+CONFIG_REED_SOLOMON_DEC8=y
+CONFIG_REED_SOLOMON_DEC16=y
+CONFIG_BCH=m
+CONFIG_BCH_CONST_PARAMS=y
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
+CONFIG_BTREE=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
+CONFIG_CHECK_SIGNATURE=y
+CONFIG_CPU_RMAP=y
+CONFIG_DQL=y
+CONFIG_NLATTR=y
+CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
+CONFIG_LRU_CACHE=m
+CONFIG_AVERAGE=y
+CONFIG_CORDIC=m
+CONFIG_DDR=y
diff --git a/kernels/linux-libre-grsec/irq_cfg_pointer-3.6.6.patch b/kernels/linux-libre-grsec/irq_cfg_pointer-3.6.6.patch
new file mode 100644
index 000000000..32583c0ac
--- /dev/null
+++ b/kernels/linux-libre-grsec/irq_cfg_pointer-3.6.6.patch
@@ -0,0 +1,16 @@
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux.git;a=blobdiff_plain;f=arch%2Fx86%2Fkernel%2Fapic%2Fio_apic.c;h=1817fa911024f07151d3edf91bd350722c9f79f8;hp=c265593ec2cdc3df35fda1586aaf91514fab62fa;hb=94777fc51b3ad85ff9f705ddf7cdd0eb3bbad5a6;hpb=3e8fa263a97079c74880675c451587bb6899e661
+
+diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
+index c265593..1817fa9 100644
+--- a/arch/x86/kernel/apic/io_apic.c
++++ b/arch/x86/kernel/apic/io_apic.c
+@@ -2257,6 +2257,9 @@ asmlinkage void smp_irq_move_cleanup_interrupt(void)
+ continue;
+
+ cfg = irq_cfg(irq);
++ if (!cfg)
++ continue;
++
+ raw_spin_lock(&desc->lock);
+
+ /*
diff --git a/kernels/linux-libre-grsec/linux-libre-grsec.install b/kernels/linux-libre-grsec/linux-libre-grsec.install
new file mode 100755
index 000000000..4c65c9783
--- /dev/null
+++ b/kernels/linux-libre-grsec/linux-libre-grsec.install
@@ -0,0 +1,110 @@
+# arg 1: the new package version
+# arg 2: the old package version
+
+KERNEL_NAME=-grsec
+KERNEL_VERSION=3.6.7-4-LIBRE-GRSEC
+
+_fix_permissions() {
+ /usr/bin/paxutils
+
+ echo
+ echo You can repeat this process after updating or installing affected
+ echo binaries by running "paxutils".
+}
+
+_add_trusted_group() {
+ if ! getent group grsec-trusted >/dev/null; then
+ groupadd -g 9999 -r grsec-trusted
+ useradd -g 9999 -r grsec-trusted
+ fi
+}
+
+_help() {
+ echo
+ echo For group grsec-trusted, Trusted Path Execution is disabled and
+ echo information about all processes from /proc is visible. Think carefully
+ echo before adding a normal user to this group.
+ echo
+ echo This is controllable with the sysctl options \"kernel.grsecurity.tpe*\".
+ echo
+ echo There is an extensive wikibook on grsecurity:
+ echo http://en.wikibooks.org/wiki/Grsecurity
+}
+
+# set a sane PATH to ensure that critical utils like depmod will be found
+export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
+
+post_install () {
+ # updating module dependencies
+ echo ">>> Updating module dependencies. Please wait ..."
+ depmod ${KERNEL_VERSION}
+ if command -v mkinitcpio 2>&1 > /dev/null; then
+ echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
+ mkinitcpio -p linux-libre${KERNEL_NAME}
+ fi
+
+ # compat symlinks for the official kernels only
+ if [ -z "${KERNEL_NAME}" -o "${KERNEL_NAME}" = "-grsec" ]; then
+ loaders="$(find /boot -name syslinux.cfg -or -name extlinux.conf -or -name grub.cfg -or -name menu.lst)"
+ [ -f /etc/lilo.conf ] && loaders="$loaders /etc/lilo.conf"
+ if [ -n "${loaders}" ] && grep -q -e vmlinuz26 -e kernel26.img -e kernel26-fallback.img $loaders; then
+ # add compat symlinks for the initramfs images
+ ln -sf initramfs-linux-libre${KERNEL_NAME}.img boot/kernel26${KERNEL_NAME}.img
+ ln -sf initramfs-linux-libre${KERNEL_NAME}-fallback.img \
+ boot/kernel26${KERNEL_NAME}-fallback.img
+ ln -sf vmlinuz-linux-libre${KERNEL_NAME} /boot/vmlinuz26${KERNEL_NAME}
+ fi
+ fi
+
+ _add_trusted_group
+ _fix_permissions
+
+ _help
+}
+
+post_upgrade() {
+ pacman -Q grub &>/dev/null
+ hasgrub=$?
+ pacman -Q grub-common &>/dev/null
+ hasgrub2=$?
+ pacman -Q lilo &>/dev/null
+ haslilo=$?
+ # reminder notices
+ if [ $haslilo -eq 0 ]; then
+ echo ">>>"
+ if [ $hasgrub -eq 0 -o $hasgrub2 -eq 0 ]; then
+ echo ">>> If you use the LILO bootloader, you should run 'lilo' before rebooting."
+ else
+ echo ">>> You appear to be using the LILO bootloader. You should run"
+ echo ">>> 'lilo' before rebooting."
+ fi
+ echo ">>>"
+ fi
+
+ if findmnt --fstab -uno SOURCE /boot &>/dev/null && ! mountpoint -q /boot; then
+ echo "WARNING: /boot appears to be a separate partition but is not mounted."
+ fi
+
+ # updating module dependencies
+ echo ">>> Updating module dependencies. Please wait ..."
+ depmod ${KERNEL_VERSION}
+ if command -v mkinitcpio 2>&1 > /dev/null; then
+ echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
+ mkinitcpio -p linux-libre${KERNEL_NAME}
+ fi
+
+ _add_trusted_group
+ _fix_permissions
+
+ _help
+}
+
+post_remove() {
+ # also remove the compat symlinks
+ rm -f boot/{initramfs-linux-libre,kernel26}${KERNEL_NAME}.img
+ rm -f boot/{initramfs-linux-libre,kernel26}${KERNEL_NAME}-fallback.img
+
+ if getent group grsec-trusted >/dev/null; then
+ groupdel grsec-trusted
+ fi
+}
diff --git a/kernels/linux-libre-grsec/linux-libre-grsec.preset b/kernels/linux-libre-grsec/linux-libre-grsec.preset
new file mode 100755
index 000000000..3fe913d44
--- /dev/null
+++ b/kernels/linux-libre-grsec/linux-libre-grsec.preset
@@ -0,0 +1,14 @@
+# mkinitcpio preset file for the 'linux-libre-grsec' package
+
+ALL_config="/etc/mkinitcpio.conf"
+ALL_kver="/boot/vmlinuz-linux-libre-grsec"
+
+PRESETS=('default' 'fallback')
+
+#default_config="/etc/mkinitcpio.conf"
+default_image="/boot/initramfs-linux-libre-grsec.img"
+#default_options=""
+
+#fallback_config="/etc/mkinitcpio.conf"
+fallback_image="/boot/initramfs-linux-libre-grsec-fallback.img"
+fallback_options="-S autodetect"
diff --git a/kernels/linux-libre-grsec/module-init-wait-3.6.patch b/kernels/linux-libre-grsec/module-init-wait-3.6.patch
new file mode 100644
index 000000000..1bcfd2491
--- /dev/null
+++ b/kernels/linux-libre-grsec/module-init-wait-3.6.patch
@@ -0,0 +1,77 @@
+From: Rusty Russell <rusty@rustcorp.com.au>
+Date: Fri, 28 Sep 2012 05:01:03 +0000 (+0930)
+Subject: module: wait when loading a module which is currently initializing.
+X-Git-Tag: v3.7-rc1~2^2~32
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=9bb9c3be568346538
+
+module: wait when loading a module which is currently initializing.
+
+The original module-init-tools module loader used a fnctl lock on the
+.ko file to avoid attempts to simultaneously load a module.
+Unfortunately, you can't get an exclusive fcntl lock on a read-only
+fd, making this not work for read-only mounted filesystems.
+module-init-tools has a hacky sleep-and-loop for this now.
+
+It's not that hard to wait in the kernel, and only return -EEXIST once
+the first module has finished loading (or continue loading the module
+if the first one failed to initialize for some reason). It's also
+consistent with what we do for dependent modules which are still loading.
+
+Suggested-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+---
+
+diff --git a/kernel/module.c b/kernel/module.c
+index 63cf6e7..74bc195 100644
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -2845,6 +2845,20 @@ static int post_relocation(struct module *mod, const struct load_info *info)
+ return module_finalize(info->hdr, info->sechdrs, mod);
+ }
+
++/* Is this module of this name done loading? No locks held. */
++static bool finished_loading(const char *name)
++{
++ struct module *mod;
++ bool ret;
++
++ mutex_lock(&module_mutex);
++ mod = find_module(name);
++ ret = !mod || mod->state != MODULE_STATE_COMING;
++ mutex_unlock(&module_mutex);
++
++ return ret;
++}
++
+ /* Allocate and load the module: note that size of section 0 is always
+ zero, and we rely on this for optional sections. */
+ static struct module *load_module(void __user *umod,
+@@ -2852,7 +2866,7 @@ static struct module *load_module(void __user *umod,
+ const char __user *uargs)
+ {
+ struct load_info info = { NULL, };
+- struct module *mod;
++ struct module *mod, *old;
+ long err;
+
+ pr_debug("load_module: umod=%p, len=%lu, uargs=%p\n",
+@@ -2918,8 +2932,18 @@ static struct module *load_module(void __user *umod,
+ * function to insert in a way safe to concurrent readers.
+ * The mutex protects against concurrent writers.
+ */
++again:
+ mutex_lock(&module_mutex);
+- if (find_module(mod->name)) {
++ if ((old = find_module(mod->name)) != NULL) {
++ if (old->state == MODULE_STATE_COMING) {
++ /* Wait in case it fails to load. */
++ mutex_unlock(&module_mutex);
++ err = wait_event_interruptible(module_wq,
++ finished_loading(mod->name));
++ if (err)
++ goto free_arch_cleanup;
++ goto again;
++ }
+ err = -EEXIST;
+ goto unlock;
+ }
diff --git a/kernels/linux-libre-grsec/module-symbol-waiting-3.6.patch b/kernels/linux-libre-grsec/module-symbol-waiting-3.6.patch
new file mode 100644
index 000000000..b87a38ff5
--- /dev/null
+++ b/kernels/linux-libre-grsec/module-symbol-waiting-3.6.patch
@@ -0,0 +1,66 @@
+From: Rusty Russell <rusty@rustcorp.com.au>
+Date: Fri, 28 Sep 2012 05:01:03 +0000 (+0930)
+Subject: module: fix symbol waiting when module fails before init
+X-Git-Tag: v3.7-rc1~2^2~33
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=6f13909f4fe9652f1
+
+module: fix symbol waiting when module fails before init
+
+We use resolve_symbol_wait(), which blocks if the module containing
+the symbol is still loading. However:
+
+1) The module_wq we use is only woken after calling the modules' init
+ function, but there are other failure paths after the module is
+ placed in the linked list where we need to do the same thing.
+
+2) wake_up() only wakes one waiter, and our waitqueue is shared by all
+ modules, so we need to wake them all.
+
+3) wake_up_all() doesn't imply a memory barrier: I feel happier calling
+ it after we've grabbed and dropped the module_mutex, not just after
+ the state assignment.
+
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+---
+
+diff --git a/kernel/module.c b/kernel/module.c
+index 7f2ee45f..63cf6e7 100644
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -2959,7 +2959,7 @@ static struct module *load_module(void __user *umod,
+ /* Unlink carefully: kallsyms could be walking list. */
+ list_del_rcu(&mod->list);
+ module_bug_cleanup(mod);
+-
++ wake_up_all(&module_wq);
+ ddebug:
+ dynamic_debug_remove(info.debug);
+ unlock:
+@@ -3034,7 +3034,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ blocking_notifier_call_chain(&module_notify_list,
+ MODULE_STATE_GOING, mod);
+ free_module(mod);
+- wake_up(&module_wq);
++ wake_up_all(&module_wq);
+ return ret;
+ }
+ if (ret > 0) {
+@@ -3046,9 +3046,8 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ dump_stack();
+ }
+
+- /* Now it's a first class citizen! Wake up anyone waiting for it. */
++ /* Now it's a first class citizen! */
+ mod->state = MODULE_STATE_LIVE;
+- wake_up(&module_wq);
+ blocking_notifier_call_chain(&module_notify_list,
+ MODULE_STATE_LIVE, mod);
+
+@@ -3071,6 +3070,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ mod->init_ro_size = 0;
+ mod->init_text_size = 0;
+ mutex_unlock(&module_mutex);
++ wake_up_all(&module_wq);
+
+ return 0;
+ }
diff --git a/kernels/linux-libre-lts-rt/PKGBUILD b/kernels/linux-libre-lts-rt/PKGBUILD
index daf2d1c16..b426568ed 100755
--- a/kernels/linux-libre-lts-rt/PKGBUILD
+++ b/kernels/linux-libre-lts-rt/PKGBUILD
@@ -11,12 +11,12 @@
pkgbase=linux-libre-lts-rt # Build stock -LIBRE-LTS-RT kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.0
-_releasever=43
-_rtpatchver=rt65
+_releasever=52
+_rtpatchver=rt76
_pkgver=${_basekernel}.${_releasever}
pkgver=${_basekernel}.${_releasever}_${_rtpatchver}
pkgrel=1
-_lxopkgver=${_basekernel}.43 # nearly always the same as pkgver
+_lxopkgver=${_basekernel}.52 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -35,10 +35,12 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'change-default-console-loglevel.patch'
'i915-fix-ghost-tv-output.patch'
'ext4-options.patch'
+ 'module-symbol-waiting-3.0.patch'
+ 'module-init-wait-3.0.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2")
md5sums=('5f64180fe7df4e574dac5911b78f5067'
- 'c4b4e6d908e70fc6f991a1789a3ac620'
- 'bcca49907b1c1e74f6ff6afced5ff959'
+ '41adc30b96b745f08899317da83f7eaa'
+ 'a2b53a39e1a4b4103f91609b3d285591'
'7266f5e7af09cc6e4b15d7a952e3b350'
'5387f0cf51652c071190789569adf9c7'
'85f04a9555bdc295f7c387a6564f0c81'
@@ -47,8 +49,10 @@ md5sums=('5f64180fe7df4e574dac5911b78f5067'
'04b21c79df0a952c22d681dd4f4562df'
'9d3c56a4b999c8bfbd4018089a62f662'
'263725f20c0b9eb9c353040792d644e5'
- 'c8299cf750a84e12d60b372c8ca7e1e8'
- '2c4870ef22f87ef885f3be392d1aaa90')
+ 'f36222e7ce20c8e4dc27376f9be60f6c'
+ '670931649c60fcb3ef2e0119ed532bd4'
+ '8a71abc4224f575008f974a099b5cf6f'
+ 'ecf9d21d2d6dfbc29dc18b616cbce4e1')
if [ "$CARCH" != "mips64el" ]; then
# Don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
@@ -90,6 +94,11 @@ build() {
# https://bugs.archlinux.org/task/28653
patch -Np1 -i "${srcdir}/ext4-options.patch"
+ # fix module initialisation
+ # https://bugs.archlinux.org/task/32122
+ patch -Np1 -i "${srcdir}/module-symbol-waiting-3.0.patch"
+ patch -Np1 -i "${srcdir}/module-init-wait-3.0.patch"
+
if [ "$CARCH" == "mips64el" ]; then
sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre-lts-rt|" Makefile
sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \
@@ -102,7 +111,7 @@ build() {
# https://git.kernel.org/?p=linux/hotplug/udev.git;a=blob_plain;f=README
# and make USB storage support builtin (e.g. for booting from USB
# disks without slowly loading an initramfs)
- sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \
+ sed -ri \
-e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \
-e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \
-e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \
diff --git a/kernels/linux-libre-lts-rt/ext4-options.patch b/kernels/linux-libre-lts-rt/ext4-options.patch
index 812b05f04..ef1b2417d 100755
--- a/kernels/linux-libre-lts-rt/ext4-options.patch
+++ b/kernels/linux-libre-lts-rt/ext4-options.patch
@@ -46,4 +46,4 @@ index 502c61f..30de9cd 100644
+#endif
default:
ext4_msg(sb, KERN_ERR,
- "Unrecognized mount option \"%s\" " \ No newline at end of file
+ "Unrecognized mount option \"%s\" "
diff --git a/kernels/linux-libre-lts-rt/linux-libre-lts-rt.install b/kernels/linux-libre-lts-rt/linux-libre-lts-rt.install
index d2f0ae05a..98e85eeaf 100755
--- a/kernels/linux-libre-lts-rt/linux-libre-lts-rt.install
+++ b/kernels/linux-libre-lts-rt/linux-libre-lts-rt.install
@@ -2,7 +2,7 @@
# arg 2: the old package version
KERNEL_NAME=-lts-rt
-KERNEL_VERSION=3.0.43-1-rt65-LIBRE-LTS-RT
+KERNEL_VERSION=3.0.52-1-rt76-LIBRE-LTS-RT
# set a sane PATH to ensure that critical utils like depmod will be found
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
diff --git a/kernels/linux-libre-lts-rt/module-init-wait-3.0.patch b/kernels/linux-libre-lts-rt/module-init-wait-3.0.patch
new file mode 100644
index 000000000..1bcfd2491
--- /dev/null
+++ b/kernels/linux-libre-lts-rt/module-init-wait-3.0.patch
@@ -0,0 +1,77 @@
+From: Rusty Russell <rusty@rustcorp.com.au>
+Date: Fri, 28 Sep 2012 05:01:03 +0000 (+0930)
+Subject: module: wait when loading a module which is currently initializing.
+X-Git-Tag: v3.7-rc1~2^2~32
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=9bb9c3be568346538
+
+module: wait when loading a module which is currently initializing.
+
+The original module-init-tools module loader used a fnctl lock on the
+.ko file to avoid attempts to simultaneously load a module.
+Unfortunately, you can't get an exclusive fcntl lock on a read-only
+fd, making this not work for read-only mounted filesystems.
+module-init-tools has a hacky sleep-and-loop for this now.
+
+It's not that hard to wait in the kernel, and only return -EEXIST once
+the first module has finished loading (or continue loading the module
+if the first one failed to initialize for some reason). It's also
+consistent with what we do for dependent modules which are still loading.
+
+Suggested-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+---
+
+diff --git a/kernel/module.c b/kernel/module.c
+index 63cf6e7..74bc195 100644
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -2845,6 +2845,20 @@ static int post_relocation(struct module *mod, const struct load_info *info)
+ return module_finalize(info->hdr, info->sechdrs, mod);
+ }
+
++/* Is this module of this name done loading? No locks held. */
++static bool finished_loading(const char *name)
++{
++ struct module *mod;
++ bool ret;
++
++ mutex_lock(&module_mutex);
++ mod = find_module(name);
++ ret = !mod || mod->state != MODULE_STATE_COMING;
++ mutex_unlock(&module_mutex);
++
++ return ret;
++}
++
+ /* Allocate and load the module: note that size of section 0 is always
+ zero, and we rely on this for optional sections. */
+ static struct module *load_module(void __user *umod,
+@@ -2852,7 +2866,7 @@ static struct module *load_module(void __user *umod,
+ const char __user *uargs)
+ {
+ struct load_info info = { NULL, };
+- struct module *mod;
++ struct module *mod, *old;
+ long err;
+
+ pr_debug("load_module: umod=%p, len=%lu, uargs=%p\n",
+@@ -2918,8 +2932,18 @@ static struct module *load_module(void __user *umod,
+ * function to insert in a way safe to concurrent readers.
+ * The mutex protects against concurrent writers.
+ */
++again:
+ mutex_lock(&module_mutex);
+- if (find_module(mod->name)) {
++ if ((old = find_module(mod->name)) != NULL) {
++ if (old->state == MODULE_STATE_COMING) {
++ /* Wait in case it fails to load. */
++ mutex_unlock(&module_mutex);
++ err = wait_event_interruptible(module_wq,
++ finished_loading(mod->name));
++ if (err)
++ goto free_arch_cleanup;
++ goto again;
++ }
+ err = -EEXIST;
+ goto unlock;
+ }
diff --git a/kernels/linux-libre-lts-rt/module-symbol-waiting-3.0.patch b/kernels/linux-libre-lts-rt/module-symbol-waiting-3.0.patch
new file mode 100644
index 000000000..b87a38ff5
--- /dev/null
+++ b/kernels/linux-libre-lts-rt/module-symbol-waiting-3.0.patch
@@ -0,0 +1,66 @@
+From: Rusty Russell <rusty@rustcorp.com.au>
+Date: Fri, 28 Sep 2012 05:01:03 +0000 (+0930)
+Subject: module: fix symbol waiting when module fails before init
+X-Git-Tag: v3.7-rc1~2^2~33
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=6f13909f4fe9652f1
+
+module: fix symbol waiting when module fails before init
+
+We use resolve_symbol_wait(), which blocks if the module containing
+the symbol is still loading. However:
+
+1) The module_wq we use is only woken after calling the modules' init
+ function, but there are other failure paths after the module is
+ placed in the linked list where we need to do the same thing.
+
+2) wake_up() only wakes one waiter, and our waitqueue is shared by all
+ modules, so we need to wake them all.
+
+3) wake_up_all() doesn't imply a memory barrier: I feel happier calling
+ it after we've grabbed and dropped the module_mutex, not just after
+ the state assignment.
+
+Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
+---
+
+diff --git a/kernel/module.c b/kernel/module.c
+index 7f2ee45f..63cf6e7 100644
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -2959,7 +2959,7 @@ static struct module *load_module(void __user *umod,
+ /* Unlink carefully: kallsyms could be walking list. */
+ list_del_rcu(&mod->list);
+ module_bug_cleanup(mod);
+-
++ wake_up_all(&module_wq);
+ ddebug:
+ dynamic_debug_remove(info.debug);
+ unlock:
+@@ -3034,7 +3034,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ blocking_notifier_call_chain(&module_notify_list,
+ MODULE_STATE_GOING, mod);
+ free_module(mod);
+- wake_up(&module_wq);
++ wake_up_all(&module_wq);
+ return ret;
+ }
+ if (ret > 0) {
+@@ -3046,9 +3046,8 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ dump_stack();
+ }
+
+- /* Now it's a first class citizen! Wake up anyone waiting for it. */
++ /* Now it's a first class citizen! */
+ mod->state = MODULE_STATE_LIVE;
+- wake_up(&module_wq);
+ blocking_notifier_call_chain(&module_notify_list,
+ MODULE_STATE_LIVE, mod);
+
+@@ -3071,6 +3070,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod,
+ mod->init_ro_size = 0;
+ mod->init_text_size = 0;
+ mutex_unlock(&module_mutex);
++ wake_up_all(&module_wq);
+
+ return 0;
+ }
diff --git a/kernels/linux-libre-rt/PKGBUILD b/kernels/linux-libre-rt/PKGBUILD
index 30361d313..32a69fba2 100755
--- a/kernels/linux-libre-rt/PKGBUILD
+++ b/kernels/linux-libre-rt/PKGBUILD
@@ -11,12 +11,12 @@
pkgbase=linux-libre-rt # Build stock -LIBRE-RT kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.6
-_releasever=6
-_rtpatchver=rt17
+_releasever=7
+_rtpatchver=rt18
_pkgver=${_basekernel}.${_releasever}
pkgver=${_basekernel}.${_releasever}_${_rtpatchver}
pkgrel=1
-_lxopkgver=${_basekernel}.6 # nearly always the same as pkgver
+_lxopkgver=${_basekernel}.7 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -35,10 +35,11 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'change-default-console-loglevel.patch'
'module-symbol-waiting-3.6.patch'
'module-init-wait-3.6.patch'
+ 'irq_cfg_pointer-3.6.6.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2")
md5sums=('a2312edd0265b5b07bd4b50afae2b380'
- '887e4a0fd0fb10da9410f5d1a75466b8'
- '20cd3b6ed53047a633d1e2b1ba32973e'
+ 'a4e642180c7d757a642175fe32e4a264'
+ '01f97c0630de43763699d580f48e1c74'
'11161582d9050710ccfecbe077fc5a63'
'ac8f20b0cd83acb9525b5557e1fafeaf'
'82496e68851d1960543a07ba51cdb44a'
@@ -48,7 +49,8 @@ md5sums=('a2312edd0265b5b07bd4b50afae2b380'
'9d3c56a4b999c8bfbd4018089a62f662'
'670931649c60fcb3ef2e0119ed532bd4'
'8a71abc4224f575008f974a099b5cf6f'
- 'a281ee5d89a016d72840bddb2d742635')
+ '4909a0271af4e5f373136b382826717f'
+ '1dd80f353c705fef988346a8ef05d13f')
if [ "$CARCH" != "mips64el" ]; then
# Don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
@@ -81,6 +83,9 @@ build() {
patch -Np1 -i "${srcdir}/module-symbol-waiting-3.6.patch"
patch -Np1 -i "${srcdir}/module-init-wait-3.6.patch"
+ # fix FS#32615 - Check for valid irq_cfg pointer in smp_irq_move_cleanup_interrupt
+ patch -Np1 -i "${srcdir}/irq_cfg_pointer-3.6.6.patch"
+
if [ "$CARCH" == "mips64el" ]; then
sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre-rt|" Makefile
sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \
diff --git a/kernels/linux-libre-rt/irq_cfg_pointer-3.6.6.patch b/kernels/linux-libre-rt/irq_cfg_pointer-3.6.6.patch
new file mode 100644
index 000000000..32583c0ac
--- /dev/null
+++ b/kernels/linux-libre-rt/irq_cfg_pointer-3.6.6.patch
@@ -0,0 +1,16 @@
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux.git;a=blobdiff_plain;f=arch%2Fx86%2Fkernel%2Fapic%2Fio_apic.c;h=1817fa911024f07151d3edf91bd350722c9f79f8;hp=c265593ec2cdc3df35fda1586aaf91514fab62fa;hb=94777fc51b3ad85ff9f705ddf7cdd0eb3bbad5a6;hpb=3e8fa263a97079c74880675c451587bb6899e661
+
+diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
+index c265593..1817fa9 100644
+--- a/arch/x86/kernel/apic/io_apic.c
++++ b/arch/x86/kernel/apic/io_apic.c
+@@ -2257,6 +2257,9 @@ asmlinkage void smp_irq_move_cleanup_interrupt(void)
+ continue;
+
+ cfg = irq_cfg(irq);
++ if (!cfg)
++ continue;
++
+ raw_spin_lock(&desc->lock);
+
+ /*
diff --git a/kernels/linux-libre-rt/linux-libre-rt.install b/kernels/linux-libre-rt/linux-libre-rt.install
index c7a44aeee..7925ec89c 100755
--- a/kernels/linux-libre-rt/linux-libre-rt.install
+++ b/kernels/linux-libre-rt/linux-libre-rt.install
@@ -2,7 +2,7 @@
# arg 2: the old package version
KERNEL_NAME=-rt
-KERNEL_VERSION=3.6.6-1-rt17-LIBRE-RT
+KERNEL_VERSION=3.6.7-1-rt18-LIBRE-RT
# set a sane PATH to ensure that critical utils like depmod will be found
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
diff --git a/kernels/paxctl/PKGBUILD b/kernels/paxctl/PKGBUILD
new file mode 100644
index 000000000..4d1ac4968
--- /dev/null
+++ b/kernels/paxctl/PKGBUILD
@@ -0,0 +1,18 @@
+# Contributor: sh0 <mee@sh0.org>
+
+pkgname='paxctl'
+pkgver='0.7'
+pkgrel=1
+pkgdesc='Manages various PaX related program header flags for Elf32, Elf64, binaries'
+url="http://pax.grsecurity.net/"
+arch=('i686' 'x86_64' 'mips64el')
+license=('GPL')
+depends=()
+source=("http://pax.grsecurity.net/${pkgname}-${pkgver}.tar.bz2")
+md5sums=('25bf9df751976e87be20243e75291263')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make || return 1
+ make DESTDIR="${pkgdir}" install || return 1
+}
diff --git a/kernels/paxutils/PKGBUILD b/kernels/paxutils/PKGBUILD
new file mode 100644
index 000000000..3d6d1e772
--- /dev/null
+++ b/kernels/paxutils/PKGBUILD
@@ -0,0 +1,24 @@
+# Maintainer: André Silva <emulatorman@lavabit.com>
+# Maintainer: Márcio Silva <coadde@lavabit.com>
+
+pkgname=paxutils
+pkgdesc='PaX utilities to configure flags for several binaries to work with PaX kernels'
+pkgver=0.1.0
+pkgrel=2
+arch=(any)
+url='https://projects.parabolagnulinux.org/abslibre.git/tree/kernels/paxutils/'
+license=(GPL2)
+depends=(bash paxctl)
+replaces=('linux-pax-flags' 'linux-libre-pax-flags')
+conflicts=('linux-pax-flags' 'linux-libre-pax-flags')
+provides=('linux-pax-flags' 'linux-libre-pax-flags')
+source=($pkgname)
+sha256sums=(bf1fda4919e7ed8052711c91933d9da5d86945ba44133c94e1952dedb4d1759b)
+
+build() {
+ return 0
+}
+
+package() {
+ install -D -m755 $srcdir/$pkgname $pkgdir/usr/bin/$pkgname
+}
diff --git a/kernels/paxutils/paxutils b/kernels/paxutils/paxutils
new file mode 100755
index 000000000..22f5a8171
--- /dev/null
+++ b/kernels/paxutils/paxutils
@@ -0,0 +1,174 @@
+#!/bin/bash
+
+[ "$UID" = "0" ] || {
+ sudo $0
+ exit $!
+}
+
+function homedir() {
+ egrep ^$1 /etc/passwd | cut -d: -f 6
+}
+
+declare -A perms
+
+perms=(
+ # RANDMMAP off
+ ['cPSMXEr']='
+ /usr/bin/grub-script-check
+ '
+ # MPROTECT and RANDMMAP off
+ ['cPSmXEr']='
+ /usr/bin/elinks
+ /usr/bin/pyrogenesis
+ /usr/lib/iceweasel/iceweasel
+ /usr/lib/iceweasel/plugin-container
+ /usr/lib/icecat/icecat
+ /usr/lib/icecat/plugin-container
+ /usr/lib/polkit-1/polkitd
+ /usr/lib/icedove/icedove
+ '
+ # SEGMEXEC and MPROTECT off
+ # (RANDEXEC is not activatable for qemu. The binaries seem to be compiled
+ # with PIE enabled, though.)
+ ['cPsmxER']='
+ /usr/bin/qemu-alpha
+ /usr/bin/qemu-arm
+ /usr/bin/qemu-armeb
+ /usr/bin/qemu-cris
+ /usr/bin/qemu-i386
+ /usr/bin/qemu-m68k
+ /usr/bin/qemu-microblaze
+ /usr/bin/qemu-microblazeel
+ /usr/bin/qemu-mips
+ /usr/bin/qemu-mipsel
+ /usr/bin/qemu-ppc
+ /usr/bin/qemu-ppc64
+ /usr/bin/qemu-ppc64abi32
+ /usr/bin/qemu-s390x
+ /usr/bin/qemu-sh4
+ /usr/bin/qemu-sh4eb
+ /usr/bin/qemu-sparc
+ /usr/bin/qemu-sparc32plus
+ /usr/bin/qemu-sparc64
+ /usr/bin/qemu-unicore32
+ /usr/bin/qemu-x86_64
+ '
+ # MPROTECT off
+ ['cPSmXER']="
+ /usr/bin/blender
+ /usr/bin/clamscan
+ /usr/bin/freshclam
+ /usr/bin/glxdemo
+ /usr/bin/glxgears
+ /usr/bin/glxinfo
+ /usr/bin/kdeinit4
+ /usr/bin/kdenlive
+ /usr/bin/kmail
+ /usr/bin/kwin
+ /usr/bin/liferea
+ /usr/bin/mono
+ /usr/bin/mplayer
+ /usr/bin/okular
+ /usr/bin/qemu-system-alpha
+ /usr/bin/qemu-system-arm
+ /usr/bin/qemu-system-cris
+ /usr/bin/qemu-system-i386
+ /usr/bin/qemu-system-lm32
+ /usr/bin/qemu-system-m68k
+ /usr/bin/qemu-system-microblaze
+ /usr/bin/qemu-system-microblazeel
+ /usr/bin/qemu-system-mips
+ /usr/bin/qemu-system-mips64
+ /usr/bin/qemu-system-mips64el
+ /usr/bin/qemu-system-mipsel
+ /usr/bin/qemu-system-ppc
+ /usr/bin/qemu-system-ppc64
+ /usr/bin/qemu-system-ppcemb
+ /usr/bin/qemu-system-s390x
+ /usr/bin/qemu-system-sh4
+ /usr/bin/qemu-system-sh4eb
+ /usr/bin/qemu-system-sparc
+ /usr/bin/qemu-system-sparc64
+ /usr/bin/qemu-system-x86_64
+ /usr/bin/qemu-system-xtensa
+ /usr/bin/qemu-system-xtensaeb
+ /usr/bin/ruby
+ /usr/bin/systemsettings
+ /usr/bin/tcc
+ /usr/bin/valgrind
+ /usr/lib/erlang/erts-*/bin/beam
+ /usr/lib/erlang/erts-*/bin/beam.smp
+ /usr/lib/ghc-*/ghc
+ /usr/lib/valgrind/cachegrind-amd64-linux
+ /usr/lib/valgrind/cachegrind-x86-linux
+ /usr/lib/valgrind/callgrind-amd64-linux
+ /usr/lib/valgrind/callgrind-x86-linux
+ /usr/lib/valgrind/drd-amd64-linux
+ /usr/lib/valgrind/drd-x86-linux
+ /usr/lib/valgrind/exp-bbv-amd64-linux
+ /usr/lib/valgrind/exp-bbv-x86-linux
+ /usr/lib/valgrind/exp-dhat-amd64-linux
+ /usr/lib/valgrind/exp-dhat-x86-linux
+ /usr/lib/valgrind/exp-sgcheck-amd64-linux
+ /usr/lib/valgrind/exp-sgcheck-x86-linux
+ /usr/lib/valgrind/helgrind-amd64-linux
+ /usr/lib/valgrind/helgrind-x86-linux
+ /usr/lib/valgrind/lackey-amd64-linux
+ /usr/lib/valgrind/lackey-x86-linux
+ /usr/lib/valgrind/massif-amd64-linux
+ /usr/lib/valgrind/massif-x86-linux
+ /usr/lib/valgrind/memcheck-amd64-linux
+ /usr/lib/valgrind/memcheck-x86-linux
+ /usr/lib/valgrind/none-amd64-linux
+ /usr/lib/valgrind/none-x86-linux
+ /usr/lib/xbmc/xbmc.bin
+ /usr/sbin/clamd
+ /usr/sbin/grub-probe
+ /usr/sbin/vbetool
+ "
+ # PAGEEXEC, MPROTECT, EMUTRAMP and RANDMMAP off
+ ['cpSmXer']='
+ /usr/bin/sbcl
+ '
+ # All off
+ ['cpsmxer']='
+ /usr/bin/wine
+ /usr/bin/wine-preloader
+ /usr/lib/jvm/java-6-openjdk/bin/java
+ /usr/lib/jvm/java-6-openjdk/bin/javac
+ /usr/lib/jvm/java-6-openjdk/jre/bin/java
+ /usr/lib/jvm/java-7-openjdk/bin/javac
+ /usr/lib/jvm/java-7-openjdk/jre/bin/java
+ '
+)
+
+echo Some programs do not work properly without deactivating some of the PaX
+echo features. Please close all instances of them if you want to change the
+echo configuration for the following binaries:
+
+for perm in ${!perms[@]}; do
+ for path in ${perms[$perm]}; do
+ [ -f $path ] && echo " * $path"
+ done
+done
+
+echo
+echo Continue writing PaX headers? \[Y/n\]
+
+read a
+
+case $a in
+ "Y"|"y"|"")
+ for perm in ${!perms[@]}; do
+ for path in ${perms[$perm]}; do
+ [ -f $path ] && {
+ echo $perm $path
+ paxctl -$perm $path
+ }
+ done
+ done
+ ;;
+ *)
+ exit 0
+ ;;
+esac
diff --git a/kernels/xe-guest-utilities/PKGBUILD b/kernels/xe-guest-utilities/PKGBUILD
index b866a6f58..a982f40d2 100755
--- a/kernels/xe-guest-utilities/PKGBUILD
+++ b/kernels/xe-guest-utilities/PKGBUILD
@@ -2,27 +2,27 @@
# Contributor (Parabola): André Silva <andre.paulista@adinet.com.uy>
pkgname=xe-guest-utilities
-pkgver=6.0.0
-pkgrel=5
+pkgver=6.0.2
+pkgrel=1
pkgdesc="Citrix XenServer Tools"
arch=('i686' 'x86_64')
url="http://citrix.com/English/ps2/products/product.asp?contentID=683148&ntref=hp_nav_US"
license=('GPL' 'LGPL')
optdepends=('linux-libre: DomU kernel for x86_64'
'linux-libre-xen: DomU kernel for i686'
- 'kernel-libre-lts: DomU kernel for i686 (long time supported)')
+ 'linux-libre-lts-xen: DomU kernel for i686 (long time supported)')
makedepends=('rpmextract')
-source=(ftp://ftp.prz.edu.pl/pub/archlinux/archrak/src/xe-guest-utilities-${pkgver}-743.i386.rpm
- ftp://ftp.prz.edu.pl/pub/archlinux/archrak/src/xe-guest-utilities-xenstore-${pkgver}-743.i386.rpm
- ftp://ftp.prz.edu.pl/pub/archlinux/archrak/src/xe-guest-utilities-${pkgver}-743.x86_64.rpm
- ftp://ftp.prz.edu.pl/pub/archlinux/archrak/src/xe-guest-utilities-xenstore-${pkgver}-743.x86_64.rpm
+source=(ftp://ftp.prz.edu.pl/pub/archlinux/aur/src/xe-guest-utilities-${pkgver}-756.i386.rpm
+ ftp://ftp.prz.edu.pl/pub/archlinux/aur/src/xe-guest-utilities-xenstore-${pkgver}-756.i386.rpm
+ ftp://ftp.prz.edu.pl/pub/archlinux/aur/src/xe-guest-utilities-${pkgver}-756.x86_64.rpm
+ ftp://ftp.prz.edu.pl/pub/archlinux/aur/src/xe-guest-utilities-xenstore-${pkgver}-756.x86_64.rpm
xe-guest-utilities-parabola.patch
ip_address.patch)
-md5sums=('894d33028b2712650be324b7ba01c6c4'
- 'e100f97421ff522cb228aa749881a082'
- 'ffaf02afa2105d32e011a32c80921256'
- '9b9570b5cc27832df303c8ef9cd11d36'
+md5sums=('7f1b670b6fec6f55764bc19ead41b07d'
+ '7d9a2c9db65d76f93a5df709989915af'
+ '953e858c03570105ea855fc3b32d43ff'
+ '5cb44deb684f7069b05052ed92d0ac22'
'0d8a8ebe124d585a2b101150df8f5ff7'
'86b4a69b412f874bf5b4db8ac8858644')
diff --git a/kernels/xen-docs/PKGBUILD b/kernels/xen-docs/PKGBUILD
new file mode 100644
index 000000000..6d4782bbd
--- /dev/null
+++ b/kernels/xen-docs/PKGBUILD
@@ -0,0 +1,20 @@
+pkgname=xen-docs
+pkgver=4.2.0
+pkgrel=2
+pkgdesc="Xen 4 (docs)"
+arch=(i686 x86_64)
+url="http://xen.org/"
+license="GPL"
+depends=('markdown')
+conflicts=('xen4' 'xen3' 'xen-hv-tools' 'libxen4')
+
+
+source=(http://bits.xensource.com/oss-xen/release/${pkgver}/xen-${pkgver}.tar.gz)
+
+build() {
+ cd $srcdir/xen-${pkgver}
+ unset CFLAGS LDFLAGS
+ make PYTHON=python2 DESTDIR=$pkgdir install-docs
+ }
+
+md5sums=('f4f217969afc38f09251039966d91a87')
diff --git a/kernels/xen/09_xen b/kernels/xen/09_xen
index 094b7f427..42309149c 100755..100644
--- a/kernels/xen/09_xen
+++ b/kernels/xen/09_xen
@@ -1,69 +1,69 @@
#! /bin/sh -e
-if [ -f /usr/lib/grub/grub-mkconfig_lib ]; then
- . /usr/lib/grub/grub-mkconfig_lib
+if [ -f /usr/share/grub/grub-mkconfig_lib ]; then
+ . /usr/share/grub/grub-mkconfig_lib
else
# no grub file, so we notify and exit gracefully
- echo "Cannot find grub config file, exiting." >&2
- exit 0
+ echo "Cannot find grub config file, exiting." >&2
+ exit 0
fi
-XEN_HYPERVISOR_CMDLINE=
+XEN_HYPERVISOR_CMDLINE="xsave=1"
XEN_LINUX_CMDLINE="console=tty0"
[ -r /etc/xen/grub.conf ] && . /etc/xen/grub.conf
CLASS="--class gnu-linux --class gnu --class os"
if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then
- OS=GNU/Linux
+ OS=GNU/Linux
else
- OS="${GRUB_DISTRIBUTOR}"
- CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr '[A-Z]' '[a-z]' | cut -d' ' -f1) ${CLASS}"
+ OS="${GRUB_DISTRIBUTOR}"
+ CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr '[A-Z]' '[a-z]' | cut -d' ' -f1) ${CLASS}"
fi
# loop-AES arranges things so that /dev/loop/X can be our root device, but
# the initrds that Linux uses don't like that.
case ${GRUB_DEVICE} in
- /dev/loop/*|/dev/loop[0-9])
- GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"`
- ;;
+ /dev/loop/*|/dev/loop[0-9])
+ GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"`
+ ;;
esac
if [ "x${GRUB_DEVICE_UUID}" = "x" ] || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \
|| ! test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" \
|| [ "`grub-probe -t abstraction --device ${GRUB_DEVICE} | sed -e 's,.*\(lvm\).*,\1,'`" = "lvm" ] ; then
- LINUX_ROOT_DEVICE=${GRUB_DEVICE}
+ LINUX_ROOT_DEVICE=${GRUB_DEVICE}
else
- LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
+ LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
fi
xen_entry ()
{
- os="$1"
- xen_version="$2"
- version="$3"
- xen_args="$4"
- args="$5"
- printf "menuentry 'Xen %s / %s, with Linux %s' --class xen ${CLASS} {\n" "${xen_version}" "${os}" "${version}"
- save_default_entry | sed -e "s/^/\t/"
-
- if [ -z "${prepare_boot_cache}" ]; then
- prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/")"
- fi
- printf '%s\n' "${prepare_boot_cache}"
- cat << EOF
+ os="$1"
+ xen_version="$2"
+ version="$3"
+ xen_args="$4"
+ args="$5"
+ printf "menuentry 'Xen %s / %s, with Linux %s' --class xen ${CLASS} {\n" "${xen_version}" "${os}" "${version}"
+ save_default_entry | sed -e "s/^/\t/"
+
+ if [ -z "${prepare_boot_cache}" ]; then
+ prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/")"
+ fi
+ printf '%s\n' "${prepare_boot_cache}"
+ cat << EOF
echo '$(printf "Loading Xen %s ..." ${xen_version})'
multiboot ${rel_dirname}/${xen_basename} ${rel_dirname}/${xen_basename} ${xen_args}
echo $(printf "$(gettext "Loading Linux %s ...")" ${version})
module ${rel_dirname}/${basename} ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}
EOF
- if test -n "${initrd}" ; then
- cat << EOF
+ if test -n "${initrd}" ; then
+ cat << EOF
echo "Loading initial ramdisk ..."
module ${rel_dirname}/${initrd}
EOF
- fi
- cat << EOF
+ fi
+ cat << EOF
}
EOF
}
@@ -74,50 +74,48 @@ done`
prepare_boot_cache=
while [ "x$xen_list" != "x" ] ; do
- xen=`version_find_latest $xen_list`
- echo "Found Xen hypervisor image: $xen" >&2
- xen_basename=`basename $xen`
- xen_dirname=`dirname $xen`
- rel_xen_dirname=`make_system_path_relative_to_its_root $xen_dirname`
- xen_version=`echo $xen_basename | sed -e "s,^[^0-9]*-,,g" | sed -e "s,.gz,,g"`
- alt_xen_version=`echo $xen_version | sed -e "s,\.old$,,g"`
-
- xen_configfiles=`grep -l 'CONFIG_XEN_PRIVILEGED_GUEST=y' /boot/config-*`
-
- list="/boot/vmlinuz-linux-libre";
-
- while [ "x$list" != "x" ] ; do
- linux=`version_find_latest $list`
- echo -e "\tFound linux image: $linux" >&2
- basename=`basename $linux`
- dirname=`dirname $linux`
- rel_dirname=`make_system_path_relative_to_its_root $dirname`
- version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
- base_init=`echo $basename | sed -e "s,vmlinuz,initramfs,g"`
- alt_version="${base_init}-fallback"
- linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
- initrd=
-
- for i in "${base_init}.img"; do
- if test -e "${dirname}/${i}" ; then
- initrd="$i"
- break
- fi
- done
- if test -n "${initrd}" ; then
- echo -e "\tFound initrd image: ${dirname}/${initrd}" >&2
- else
+ xen=`version_find_latest $xen_list`
+ echo "Found Xen hypervisor image: $xen" >&2
+ xen_basename=`basename $xen`
+ xen_dirname=`dirname $xen`
+ rel_xen_dirname=`make_system_path_relative_to_its_root $xen_dirname`
+ xen_version=`echo $xen_basename | sed -e "s,^[^0-9]*-,,g" | sed -e "s,.gz,,g"`
+ alt_xen_version=`echo $xen_version | sed -e "s,\.old$,,g"`
+
+ list="/boot/vmlinuz-linux";
+
+ while [ "x$list" != "x" ] ; do
+ linux=`version_find_latest $list`
+ echo -e "\tFound linux image: $linux" >&2
+ basename=`basename $linux`
+ dirname=`dirname $linux`
+ rel_dirname=`make_system_path_relative_to_its_root $dirname`
+ version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
+ base_init=`echo $basename | sed -e "s,vmlinuz,initramfs,g"`
+ alt_version="${base_init}-fallback"
+ linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
+ initrd=
+
+ for i in "${base_init}.img"; do
+ if test -e "${dirname}/${i}" ; then
+ initrd="$i"
+ break
+ fi
+ done
+ if test -n "${initrd}" ; then
+ echo -e "\tFound initrd image: ${dirname}/${initrd}" >&2
+ else
# "UUID=" magic is parsed by initrds. Since there's no initrd, it can't work here.
- linux_root_device_thisversion=${GRUB_DEVICE}
- fi
+ linux_root_device_thisversion=${GRUB_DEVICE}
+ fi
- xen_entry "${OS}" "${xen_version}" "${version}" \
- "${XEN_HYPERVISOR_CMDLINE}" \
- "${XEN_LINUX_CMDLINE}"
+ xen_entry "${OS}" "${xen_version}" "${version}" \
+ "${XEN_HYPERVISOR_CMDLINE}" \
+ "${XEN_LINUX_CMDLINE}"
- list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
- done
+ list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
+ done
- xen_list=`echo $xen_list | tr ' ' '\n' | grep -vx $xen | tr '\n' ' '`
+ xen_list=`echo $xen_list | tr ' ' '\n' | grep -vx $xen | tr '\n' ' '`
done
diff --git a/kernels/xen/24341.patch b/kernels/xen/24341.patch
deleted file mode 100755
index 5554004d3..000000000
--- a/kernels/xen/24341.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/xen/arch/x86/x86_64/mmconfig_64.c 2011-10-20 15:05:49.000000000 -0200
-+++ b/xen/arch/x86/x86_64/mmconfig_64.c 2012-02-14 23:45:47.481729733 -0200
-@@ -23,7 +23,7 @@
- char __iomem *virt;
- };
- static struct mmcfg_virt *pci_mmcfg_virt;
--static int __initdata mmcfg_pci_segment_shift;
-+static unsigned int mmcfg_pci_segment_shift;
-
- static char __iomem *get_virt(unsigned int seg, unsigned bus)
- {
diff --git a/kernels/xen/24344.patch b/kernels/xen/24344.patch
deleted file mode 100755
index 642b90867..000000000
--- a/kernels/xen/24344.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- a/tools/libxc/xc_cpuid_x86.c 2011-10-20 15:05:42.000000000 -0200
-+++ b/tools/libxc/xc_cpuid_x86.c 2012-02-15 00:01:46.307514813 -0200
-@@ -42,23 +42,23 @@
- static void cpuid(const unsigned int *input, unsigned int *regs)
- {
- unsigned int count = (input[1] == XEN_CPUID_INPUT_UNUSED) ? 0 : input[1];
-- asm (
- #ifdef __i386__
-+/* Use the stack to avoid reg constraint failures with some gcc flags */
-+ asm (
- "push %%ebx; push %%edx\n\t"
--#else
-- "push %%rbx; push %%rdx\n\t"
--#endif
- "cpuid\n\t"
- "mov %%ebx,4(%4)\n\t"
- "mov %%edx,12(%4)\n\t"
--#ifdef __i386__
- "pop %%edx; pop %%ebx\n\t"
-+ : "=a" (regs[0]), "=c" (regs[2])
-+ : "0" (input[0]), "1" (count), "S" (regs)
-+ : "memory" );
- #else
-- "pop %%rdx; pop %%rbx\n\t"
-+ asm (
-+ "cpuid"
-+ : "=a" (regs[0]), "=b" (regs[1]), "=c" (regs[2]), "=d" (regs[3])
-+ : "0" (input[0]), "2" (count) );
- #endif
-- : "=a" (regs[0]), "=c" (regs[2])
-- : "0" (input[0]), "1" (count), "S" (regs)
-- : "memory" );
- }
diff --git a/kernels/xen/24345.patch b/kernels/xen/24345.patch
deleted file mode 100755
index e75a1b38c..000000000
--- a/kernels/xen/24345.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- a/tools/misc/xen-detect.c 2011-10-20 15:05:43.000000000 -0200
-+++ b/tools/misc/xen-detect.c 2012-02-15 00:05:55.524455578 -0200
-@@ -35,18 +35,21 @@
-
- static void cpuid(uint32_t idx, uint32_t *regs, int pv_context)
- {
-- asm volatile (
- #ifdef __i386__
--#define R(x) "%%e"#x"x"
--#else
--#define R(x) "%%r"#x"x"
--#endif
-- "push "R(a)"; push "R(b)"; push "R(c)"; push "R(d)"\n\t"
-+/* Use the stack to avoid reg constraint failures with some gcc flags */
-+ asm volatile (
-+ "push %%eax; push %%ebx; push %%ecx; push %%edx\n\t"
- "test %1,%1 ; jz 1f ; ud2a ; .ascii \"xen\" ; 1: cpuid\n\t"
- "mov %%eax,(%2); mov %%ebx,4(%2)\n\t"
- "mov %%ecx,8(%2); mov %%edx,12(%2)\n\t"
-- "pop "R(d)"; pop "R(c)"; pop "R(b)"; pop "R(a)"\n\t"
-+ "pop %%edx; pop %%ecx; pop %%ebx; pop %%eax\n\t"
- : : "a" (idx), "c" (pv_context), "S" (regs) : "memory" );
-+#else
-+ asm volatile (
-+ "test %5,%5 ; jz 1f ; ud2a ; .ascii \"xen\" ; 1: cpuid\n\t"
-+ : "=a" (regs[0]), "=b" (regs[1]), "=c" (regs[2]), "=d" (regs[3])
-+ : "0" (idx), "1" (pv_context), "2" (0) );
-+#endif
- }
-
- static int check_for_xen(int pv_context)
diff --git a/kernels/xen/PKGBUILD b/kernels/xen/PKGBUILD
index c51ffeaa9..33a2dccb1 100755..100644
--- a/kernels/xen/PKGBUILD
+++ b/kernels/xen/PKGBUILD
@@ -1,104 +1,122 @@
-# Maintainer M0Rf30
-# Contributor WaxyMouthfeel
-# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy>
+# Maintainer: Limao Luo <luolimao+AUR@gmail.com>
+# Contributor: Luceo
+# Contributor: Revellion
+
pkgname=xen
-pkgver=4.1.2
-pkgrel=3.1
-pkgdesc="Xen 4 (hypervisor and tools)"
+pkgver=4.2.0
+pkgrel=12
+pkgdesc="Xen Hypervisor & Tools"
arch=(i686 x86_64)
-url="http://xen.org/"
-license="GPL"
-
-if [[ $CARCH == "x86_64" ]]; then
- depends=('xz' 'bzip2' 'iproute' 'net-tools' 'bridge-utils' 'python2' 'sdl' 'zlib' 'e2fsprogs' 'bin86' 'pkgconfig' 'gnutls' 'lzo2' 'lib32-glibc')
-else
- depends=('xz' 'bzip2' 'iproute' 'net-tools' 'bridge-utils' 'python2' 'sdl' 'zlib' 'e2fsprogs' 'bin86' 'pkgconfig' 'gnutls' 'lzo2' 'glibc')
-fi
-
-optdepends=('xen-docs: Xen Official Documentation')
-makedepends=('dev86' 'ocaml-findlib' 'iasl')
-conflicts=('xen4' 'xen3' 'xen-hv-tools' 'libxen4')
-provides=('xen')
-backup=('etc/xen/xend-config.sxp' 'etc/xen/xend-pci-permissive.sxp' 'etc/xen/xend-pci-quirks.sxp')
-options=(!strip)
-optional=(xen-docs)
-source=(http://bits.xensource.com/oss-xen/release/${pkgver}/xen-${pkgver}.tar.gz
- 09_xen
- xen.patch
- parabolainit.patch
- dom0_xz_decompression.patch
- 24341.patch
- 24344.patch
- 24345.patch)
+url=http://xen.org
+license=(GPL)
+depends=(bin86 bluez bridge-utils glib2 gnutls libaio libjpeg-turbo libpng lzo2 sdl wget vde2 yajl)
+[[ "$CARCH" == "x86_64" ]] && depends+=(lib32-glibc)
+makedepends=(dev86 git iasl markdown ocaml-findlib)
+optdepends=('xen-docs: Official Xen Documentation')
+conflicts=(xen-4.2{,-testing-hg} xen-{gdbsx,hg-unstable,rc})
+backup=(etc/$pkgname/xend-{config,pci-{permissive,quirks}}.sxp etc/modules-load.d/$pkgname.conf)
+options=(!buildflags !emptydirs !strip)
+install=$pkgname.install
+source=(http://bits.xensource.com/oss-xen/release/$pkgver/$pkgname-$pkgver.tar.gz
+ 09_xen
+ archinit.patch
+ texi2html.patch
+ proc-xen.mount
+ var-lib-xenstored.mount
+ xenconsoled.service
+ xendomains.service
+ xendomU@.service
+ xenstored.service
+ $pkgname.conf)
+sha256sums=('43f4a086e4e0330145a27b7ace8365c42b5afbc95cefadafe067be91bd3e5cfb'
+ 'e8dd740c0f18ea41bb80afad36ca981669e6ab86eb3848fbb40f0dff3b8aa3e6'
+ '35900d3ae2f2cc27834b8a7cb11f134b582f01bde033598c407c8e58ad58fdb9'
+ '08e5bf65c833a608470ad118ce369e32f9c267e1787f2900c06708af321225e6'
+ '139eed988bfaf8edc8ccdfd0b668382bd63db48ce17be91776182a7e28e9d88c'
+ 'c19146931c6ab8e53092bd9b2ebbfda5c76fd22ad3b1d42dcda3dd1b61f123ff'
+ 'ba8f1c10b3f3df1f9fda0782a691fed67661e36f49be74471c86850639fee3ba'
+ '0bd45d9de6456c4f9adf32e726f2db3a3cd0423c1d161b442e8a1666d2e68e3f'
+ '1862a14607582d14247b74435dfb16411fd68904aa19e2a93c5e6ac301169d3c'
+ '0a1960fd51a2f4e8e856c7392e33cc9607ac4a80e9d68b316b6a4281f34728e0'
+ '50a9b7fd19e8beb1dea09755f07318f36be0b7ec53d3c9e74f3266a63e682c0c')
+sha512sums=('4fb56c79d722fb307bc657f16d02079c6636427e7650c4354193632d38d2d1db8e588f844ff0ca6e757c108ed639a528565ec9fc7c00bb4d5b6fbc9d122d8a70'
+ '23402f54e1a40c058566d6c0f18ac2e89ea85eea8bedf669f059e30ad76b3b90d81b7ff34d8e8c07ab4fea7f82ae32c80a66df2fd95fb3b296e982cdcc93d0b6'
+ '9ce0c009f055c9be42435be9eeeec980285cbef4fb52cbd8d81f76ae1e7760575b5c9f958e3d44612d2740eafa1e18ee48f30a5571f0c06bd031d4e102abb22f'
+ '562f12e723116c705fc9d0fd4a2afd382a93465be7f616d1e20e87daf39c11029fbc57ec46e38d3ff61c482fdc9ac4df9e07600a77515867d9da6f0faf3da7f9'
+ '6afdf16e32bb837faf6333334f86855a746f1f46fee9673a4fddc62eecf41f9856bc34397807203c6f5071f0b1ce74532214084042154585c0d39514450db25c'
+ '00e340f4d3635e3850ca24baea1da08467523c17815feb74161e18397b607fef904db2165fd9bf4632a6e8a6e37aeddad4e56965e1c99b5213c98b3f9afc6aad'
+ '27d7289a8bf6e15bddcb360287001429205b57ee4d791b0337328879ffd76b8e375e3c1dd0de0ab57dd4bd1e2a2bc1748c44cc05b2528632a3e6af60f626de9d'
+ 'f00034f8b826b828659a0177f0a6454113c625e69a817dfe32e461767f6643e0288bfc2a22d23358504240df627af6e3b8f5ffa0077e241e590b33d3f252e74c'
+ '31fefc739f0f0e568df03dcf9aa02e0265ff4fbf77e7ae62d6a318fcc34e87a0ffd3fc4b84ff8c9cc95511e2e74b7b61e6b5471cd0b3cd47ee0da86b1ea90268'
+ '87aceb1c646e49940bfbc47da85d7e20c9436449b152c0842b357033f66aba68a590f1d56c4a3f437d093047a611f28fd67d381692d9b21a582e598ecf1a72a2'
+ 'ccaa2ff82e4203b11e5dec9aeccac2e165721d8067e0094603ecaa7a70b78c9eb9e2287a32687883d26b6ceae6f8d2ad7636ddf949eb658637b3ceaa6999711b')
build() {
-
-
- cd $srcdir/xen-${pkgver}
-
- patch -p1 -i ../xen.patch
- patch -p1 -i ../parabolainit.patch
- patch -p1 -i ../dom0_xz_decompression.patch
- patch -p1 -i ../24341.patch
- patch -p1 -i ../24344.patch
- patch -p1 -i ../24345.patch
-
-unset CFLAGS LDFLAGS
-
-make PYTHON=python2 DESTDIR=$pkgdir install-xen
-make PYTHON=python2 DESTDIR=$pkgdir install-tools
-#make PYTHON=python2 DESTDIR=$pkgdir install-stubdom
-
- sed -i 's#XENDOM_CONFIG=/etc/sysconfig/xendomains#XENDOM_CONFIG=/etc/conf.d/xendomains#' $pkgdir/etc/init.d/xendomains
- sed -i "s#touch /var/lock/subsys/xend#mkdir -p /var/lock/subsys\n touch /var/lock/subsys/xend#" $pkgdir/etc/init.d/xend
-
- [ -d $pkgdir/usr/lib64 ] && ( cd $pkgdir/usr && cp -R lib64/* lib/ && rm -R lib64 )
- ( cd $pkgdir/etc && mv init.d rc.d ) || return 1
- rm -f $pkgdir/usr/share/man/man1/qemu-img.1* \
- $pkgdir/usr/share/man/man1/qemu.1*
- # First experiment to generate grub2.cfg entry
- mkdir -p $pkgdir/etc/grub.d
- chmod +x $srcdir/09_xen
- cp $srcdir/09_xen $pkgdir/etc/grub.d
-
- ############ kill unwanted stuff ############
-
-# stubdom: newlib
-rm -rf $pkgdir/usr/*-xen-elf
-
-# hypervisor symlinks
-rm -rf $pkgdir/boot/xen-4.1.gz
-rm -rf $pkgdir/boot/xen-4.gz
-rm -rf $pkgdir/boot/xen.gz
-
-# silly doc dir fun
-rm -fr $pkgdir/usr/share/doc/xen
-rm -rf $pkgdir/usr/share/doc/qemu
-
-# Pointless helper
-rm -f $pkgdir/usr/sbin/xen-python-path
-
-# qemu stuff (unused or available from upstream)
-rm -rf $pkgdir/usr/share/xen/man
-rm -rf $pkgdir/usr/bin/qemu-*-xen
-for file in bios.bin openbios-sparc32 openbios-sparc64 ppc_rom.bin \
- pxe-e1000.bin pxe-ne2k_pci.bin pxe-pcnet.bin pxe-rtl8139.bin \
- vgabios.bin vgabios-cirrus.bin video.x openbios-ppc bamboo.dtb
-do
- rm -f $pkgdir/usr/share/xen/qemu/$file
-done
-
-# adhere to Static Library Packaging Guidelines
-rm -rf $pkgdir/usr/lib/*.a
-
-
+ cd "$srcdir"/$pkgname-$pkgver/
+
+ patch -Np1 -i ../archinit.patch
+ patch -Np1 -i ../texi2html.patch
+
+ ./autogen.sh
+ ./configure PYTHON=/usr/bin/python2
}
-md5sums=('73561faf3c1b5e36ec5c089b5db848ad'
- '8d50beba46ffd89a3b959176245b676e'
- 'f149bae1a6b420e49c51b9f3a74338a4'
- '7a1ed81ecc828037724bb3280058c9fc'
- '4aebccf16b578ed97aa8bab945011f35'
- '1b0c05a555bc99fc8416dd52b6c6ae95'
- 'b6225be5bec3fe462f9166f9fde9c347'
- 'd282946a2873a78b2b2c3944571eb2fe')
+package() {
+ cd "$srcdir"/$pkgname-$pkgver/
+
+ make PYTHON=python2 DESTDIR="$pkgdir" install-xen install-tools
+ # stubdom won't build with multiple makethreads
+ make -j1 PYTHON=python2 DESTDIR="$pkgdir" install-stubdom
+
+ cd ../
+ for f in ${source[@]}; do
+ [[ $f =~ .mount || $f =~ .service ]] && install -Dm644 $f "$pkgdir"/usr/lib/systemd/system/$f
+ done
+ install -Dm644 $pkgname.conf "$pkgdir"/etc/modules-load.d/$pkgname.conf
+ install -Dm755 09_xen "$pkgdir"/etc/grub.d/09_xen
+
+ cd "$pkgdir"
+ sed -i ':XENDOM_CONFIG=/etc/:s:sysconfig/xendomains:conf.d/xendomains:' etc/init.d/xendomains
+ sed -i 's:touch /var/lock/subsys/xend:mkdir -p /var/lock/subsys\n &:' etc/init.d/xend
+
+ if [[ -d usr/lib64 ]]; then
+ cd usr/
+ cp -r lib64/* lib/
+ rm -rf lib64
+ fi
+
+ mv etc/{init,rc}.d
+
+ mv usr/local/etc/qemu/ etc/
+ rm -rf usr/local/share/
+ mv etc/rc.d/xendomains etc/xen/scripts/xendomains
+
+ ##### Kill unwanted stuff #####
+ # stubdom: newlib
+ rm -rf usr/*-xen-elf
+
+ # hypervisor symlinks
+ rm -f boot/xen{,-4,-4.2}.gz
+
+ # silly doc dir fun
+ rm -rf usr/share/doc/xen
+ rm -rf usr/share/doc/qemu
+
+ # Pointless helper
+ rm -f usr/sbin/xen-python-path
+
+ # qemu stuff (unused or available from upstream)
+ rm -rf usr/share/xen/man
+ rm -rf usr/bin/qemu-*-xen
+ for file in bios.bin openbios-sparc32 openbios-sparc64 ppc_rom.bin \
+ pxe-e1000.bin pxe-ne2k_pci.bin pxe-pcnet.bin pxe-rtl8139.bin \
+ vgabios.bin vgabios-cirrus.bin video.x openbios-ppc bamboo.dtb; do
+ rm -f usr/share/xen/qemu/$file
+ done
+
+ # adhere to Static Library Packaging Guidelines
+ rm -rf usr/lib/*.a
+
+ # Fix errors from deprecated xend
+ rm etc/udev/rules.d/xend.rules
+}
diff --git a/kernels/xen/archinit.patch b/kernels/xen/archinit.patch
new file mode 100644
index 000000000..f5bece6e2
--- /dev/null
+++ b/kernels/xen/archinit.patch
@@ -0,0 +1,450 @@
+--- a/tools/hotplug/Linux/init.d/xencommons 2011-07-03 03:08:44.953747064 -0700
++++ b/tools/hotplug/Linux/init.d/xencommons 2011-07-05 13:47:54.627029164 -0700
+@@ -17,6 +17,8 @@
+ # Short-Description: Start/stop xenstored and xenconsoled
+ # Description: Starts and stops the daemons neeeded for xl/xend
+ ### END INIT INFO
++. /etc/rc.conf
++. /etc/rc.d/functions
+
+ if [ -d /etc/sysconfig ]; then
+ xencommons_config=/etc/sysconfig
+@@ -26,7 +28,7 @@
+
+ test -f $xencommons_config/xencommons && . $xencommons_config/xencommons
+
+-XENCONSOLED_PIDFILE=/var/run/xenconsoled.pid
++XENCONSOLED_PIDFILE=/run/daemons/xenconsoled.pid
+ shopt -s extglob
+
+ # not running in Xen dom0 or domU
+@@ -69,7 +71,7 @@
+ modprobe pciback 2>/dev/null
+ modprobe xen-acpi-processor 2>/dev/null
+ modprobe blktap2 2>/dev/null || modprobe blktap 2>/dev/null
+- mkdir -p /var/run/xen
++ #mkdir -p /var/run/xen
+
+ if ! `xenstore-read -s / >/dev/null 2>&1`
+ then
+@@ -78,55 +80,66 @@
+ test -z "$XENSTORED_TRACE" || XENSTORED_ARGS=" -T /var/log/xen/xenstored-trace.log"
+
+ if [ -n "$XENSTORED" ] ; then
+- echo -n Starting $XENSTORED...
+- $XENSTORED --pid-file /var/run/xenstored.pid $XENSTORED_ARGS
++ #echo -n Starting $XENSTORED...
++ stat_busy "Starting $XENSTORED"
++ $XENSTORED --pid-file /run/daemons/xenstored.pid $XENSTORED_ARGS
+ elif [ -x /usr/sbin/oxenstored ] ; then
+- echo -n Starting oxenstored...
+- /usr/sbin/oxenstored --pid-file /var/run/xenstored.pid $XENSTORED_ARGS
++ #echo -n Starting oxenstored...
++ stat_busy "Starting oxenstored"
++ /usr/sbin/oxenstored --pid-file /run/daemons/xenstored.pid $XENSTORED_ARGS
+ elif [ -x /usr/sbin/xenstored ] ; then
+- echo -n Starting C xenstored...
+- /usr/sbin/xenstored --pid-file /var/run/xenstored.pid $XENSTORED_ARGS
++ #echo -n Starting C xenstored...
++ stat_busy "Starting C xenstored"
++ /usr/sbin/xenstored --pid-file /run/daemons/xenstored.pid $XENSTORED_ARGS
+ else
+- echo "No xenstored found"
++ #echo "No xenstored found"
++ stat_fail
+ exit 1
+ fi
+
+ # Wait for xenstored to actually come up, timing out after 30 seconds
+ while [ $time -lt $timeout ] && ! `xenstore-read -s / >/dev/null 2>&1` ; do
+- echo -n .
++ #echo -n .
+ time=$(($time+1))
+ sleep 1
+ done
+- echo
++ #echo
+
+ # Exit if we timed out
+ if ! [ $time -lt $timeout ] ; then
+- echo Could not start xenstored
++ #echo Could not start xenstored
++ stat_fail
+ exit 1
+ fi
+
+- echo Setting domain 0 name...
++ #echo Setting domain 0 name...
++ stat_busy "Setting domain0 name"
+ xenstore-write "/local/domain/0/name" "Domain-0"
+ fi
+
+- echo Starting xenconsoled...
++ #echo Starting xenconsoled...
++ stat_busy "Starting xenconsoled"
+ test -z "$XENCONSOLED_TRACE" || XENCONSOLED_ARGS=" --log=$XENCONSOLED_TRACE"
+ xenconsoled --pid-file=$XENCONSOLED_PIDFILE $XENCONSOLED_ARGS
+ test -z "$XENBACKENDD_DEBUG" || XENBACKENDD_ARGS="-d"
+ test "`uname`" != "NetBSD" || xenbackendd $XENBACKENDD_ARGS
+- echo Starting QEMU as disk backend for dom0
++ #echo Starting QEMU as disk backend for dom0
++ stat_busy "Starting QEMU as disk backend for dom0"
+ test -z "$QEMU_XEN" && QEMU_XEN=/usr/lib/xen/bin/qemu-system-i386
+ $QEMU_XEN -xen-domid 0 -xen-attach -name dom0 -nographic -M xenpv -daemonize -monitor /dev/null
++ stat_done
+ }
+ do_stop () {
+- echo Stopping xenconsoled
++ #echo Stopping xenconsoled
++ stat_busy "Stopping xenconsoled"
+ if read 2>/dev/null <$XENCONSOLED_PIDFILE pid; then
+ kill $pid
+ while kill -9 $pid >/dev/null 2>&1; do sleep 0.1; done
+ rm -f $XENCONSOLED_PIDFILE
+ fi
++ stat_done
+
+- echo WARNING: Not stopping xenstored, as it cannot be restarted.
++ #echo WARNING: Not stopping xenstored, as it cannot be restarted.
+ }
+
+ case "$1" in
+--- a/tools/hotplug/Linux/init.d/xend 2011-07-03 03:08:44.953747064 -0700
++++ b/tools/hotplug/Linux/init.d/xend 2011-07-05 01:47:40.981951191 -0700
+@@ -18,6 +18,10 @@
+ # Description: Starts and stops the Xen control daemon.
+ ### END INIT INFO
+
++. /etc/rc.conf
++. /etc/rc.d/functions
++
++
+ shopt -s extglob
+
+ # Wait for Xend to be up
+@@ -37,23 +41,30 @@
+ case "$1" in
+ start)
+ if [ -z "`ps -C xenconsoled -o pid=`" ]; then
+- echo "xencommons should be started first."
++ printhl "xencommons should be started first."
+ exit 1
+ fi
+ # mkdir shouldn't be needed as most distros have this already created. Default to using subsys.
+ # See docs/misc/distro_mapping.txt
+- mkdir -p /var/lock
+- if [ -d /var/lock/subsys ] ; then
+- touch /var/lock/subsys/xend
++ if [ -d /run/lock/subsys ] ; then
++ touch /run/lock/subsys/xend
+ else
+- touch /var/lock/xend
++ touch /run/lock/xend
+ fi
++ stat_busy "Starting xend"
+ xend start
+ await_daemons_up
++ stat_done
++ add_daemon xend
+ ;;
++
++
+ stop)
++ stat_busy "Stopping xend"
+ xend stop
+- rm -f /var/lock/subsys/xend /var/lock/xend
++ rm -f /run/lock/xend /var/lock/xend
++ stat_done
++ rm_daemon xend
+ ;;
+ status)
+ xend status
+@@ -62,8 +73,10 @@
+ xend reload
+ ;;
+ restart|force-reload)
++ stat_busy "Restarting xend"
+ xend restart
+ await_daemons_up
++ stat_done
+ ;;
+ *)
+ # do not advertise unreasonable commands that there is no reason
+--- a/tools/hotplug/Linux/init.d/xendomains 2011-07-03 03:08:44.953747064 -0700
++++ b/tools/hotplug/Linux/init.d/xendomains 2011-07-05 13:46:36.208222760 -0700
+@@ -26,6 +26,9 @@
+ # Description: Start / stop domains automatically when domain 0
+ # boots / shuts down.
+ ### END INIT INFO
++. /etc/rc.conf
++. /etc/rc.d/functions
++
+
+ CMD=xm
+ $CMD list &> /dev/null
+@@ -46,93 +49,52 @@
+ exit 0
+ fi
+
+-# See docs/misc/distro_mapping.txt
+-if [ -d /var/lock/subsys ]; then
+- LOCKFILE=/var/lock/subsys/xendomains
+-else
+- LOCKFILE=/var/lock/xendomains
+-fi
+-
+-if [ -d /etc/sysconfig ]; then
+- XENDOM_CONFIG=/etc/sysconfig/xendomains
+-else
+- XENDOM_CONFIG=/etc/default/xendomains
+-fi
++LOCKFILE=/run/lock/xendomains
++XENDOM_CONFIG=/etc/default/xendomains
+
+-test -r $XENDOM_CONFIG || { echo "$XENDOM_CONFIG not existing";
++test -r $XENDOM_CONFIG || {
++ printhl "$XENDOM_CONFIG not existing";
+ if [ "$1" = "stop" ]; then exit 0;
+ else exit 6; fi; }
+
+ . $XENDOM_CONFIG
+
+-# Use the SUSE rc_ init script functions;
+-# emulate them on LSB, RH and other systems
+-if test -e /etc/rc.status; then
+- # SUSE rc script library
+- . /etc/rc.status
+-else
+- _cmd=$1
+- declare -a _SMSG
+- if test "${_cmd}" = "status"; then
++_cmd=$1
++declare -a _SMSG
++if test "${_cmd}" = "status"; then
+ _SMSG=(running dead dead unused unknown)
+ _RC_UNUSED=3
+- else
++else
+ _SMSG=(done failed failed missed failed skipped unused failed failed)
+ _RC_UNUSED=6
+- fi
+- if test -e /etc/init.d/functions; then
+- # REDHAT
+- . /etc/init.d/functions
+- echo_rc()
+- {
+- #echo -n " [${_SMSG[${_RC_RV}]}] "
+- if test ${_RC_RV} = 0; then
+- success " [${_SMSG[${_RC_RV}]}] "
+- else
+- failure " [${_SMSG[${_RC_RV}]}] "
+- fi
+- }
+- elif test -e /lib/lsb/init-functions; then
+- # LSB
+- . /lib/lsb/init-functions
+- if alias log_success_msg >/dev/null 2>/dev/null; then
+- echo_rc()
+- {
+- echo " [${_SMSG[${_RC_RV}]}] "
+- }
+- else
+- echo_rc()
+- {
+- if test ${_RC_RV} = 0; then
+- log_success_msg " [${_SMSG[${_RC_RV}]}] "
+- else
+- log_failure_msg " [${_SMSG[${_RC_RV}]}] "
+- fi
+- }
+- fi
+- else
+- # emulate it
+- echo_rc()
+- {
+- echo " [${_SMSG[${_RC_RV}]}] "
+- }
+- fi
+- rc_reset() { _RC_RV=0; }
+- rc_failed()
+- {
++fi
++
++
++
++echo_rc() {
++ echo
++ printhl "Return Status: ${_SMSG[${_RC_RV}]}"
++}
++
++
++rc_reset() { _RC_RV=0; }
++
++
++rc_failed() {
+ if test -z "$1"; then
+- _RC_RV=1;
++ _RC_RV=1;
+ elif test "$1" != "0"; then
+- _RC_RV=$1;
+- fi
++ _RC_RV=$1;
++ fi
+ return ${_RC_RV}
+- }
+- rc_check()
+- {
++}
++
++rc_check() {
+ return rc_failed $?
+- }
+- rc_status()
+- {
++}
++
++
++rc_status() {
+ rc_failed $?
+ if test "$1" = "-r"; then _RC_RV=0; shift; fi
+ if test "$1" = "-s"; then rc_failed 5; echo_rc; rc_failed 3; shift; fi
+@@ -140,26 +102,24 @@
+ if test "$1" = "-v"; then echo_rc; shift; fi
+ if test "$1" = "-r"; then _RC_RV=0; shift; fi
+ return ${_RC_RV}
+- }
+- rc_exit() { exit ${_RC_RV}; }
+- rc_active()
+- {
++}
++
++
++rc_exit() { exit ${_RC_RV}; }
++
++
++rc_active() {
+ if test -z "$RUNLEVEL"; then read RUNLEVEL REST < <(/sbin/runlevel); fi
+ if test -e /etc/init.d/S[0-9][0-9]${1}; then return 0; fi
+ return 1
+- }
+-fi
++}
+
+-if ! which usleep >&/dev/null
+-then
+- usleep()
+- {
+- if [ -n "$1" ]
+- then
+- sleep $(( $1 / 1000000 ))
+- fi
+- }
+-fi
++usleep() {
++ if [ -n "$1" ]
++ then
++ sleep $(( $1 / 1000000 ))
++ fi
++}
+
+ # Reset status of this service
+ rc_reset
+@@ -240,10 +200,12 @@
+ start()
+ {
+ if [ -f $LOCKFILE ]; then
+- echo -e "xendomains already running (lockfile exists)"
++ stat_busy "xendomains already running (lockfile exists)"
++ stat_fail
+ return;
+ fi
+
++ printhl "Starting Xen Domains"
+ saved_domains=" "
+ if [ "$XENDOMAINS_RESTORE" = "true" ] &&
+ contains_something "$XENDOMAINS_SAVE"
+@@ -304,6 +266,7 @@
+ fi
+ done
+ fi
++ add_daemon xendomains
+ }
+
+ all_zombies()
+@@ -357,7 +320,7 @@
+ if test "$XENDOMAINS_AUTO_ONLY" = "true"; then
+ rdnames
+ fi
+- echo -n "Shutting down Xen domains:"
++ printhl "Shutting down Xen domains"
+ name=;id=
+ while read LN; do
+ parseln "$LN" || continue
+@@ -470,6 +433,7 @@
+ rm -f $LOCKFILE
+
+ exec 2>&3
++ rm_daemon xendomains
+ }
+
+ check_domain_up()
+--- a/tools/hotplug/Linux/init.d/xen-watchdog 2011-07-03 03:08:44.957080397 -0700
++++ b/tools/hotplug/Linux/init.d/xen-watchdog 2011-07-05 13:20:22.515289867 -0700
+@@ -17,49 +17,32 @@
+ ### END INIT INFO
+ #
+
++. /etc/rc.conf
++. /etc/rc.d/functions
++
+ DAEMON=/usr/sbin/xenwatchdogd
+ base=$(basename $DAEMON)
++initname="xen-watchdog"
+
+-# Source function library.
+-if [ -e /etc/init.d/functions ] ; then
+- . /etc/init.d/functions
+-elif [ -e /lib/lsb/init-functions ] ; then
+- . /lib/lsb/init-functions
+- success () {
+- log_success_msg $*
+- }
+- failure () {
+- log_failure_msg $*
+- }
+-else
+- success () {
+- echo $*
+- }
+- failure () {
+- echo $*
+- }
+-fi
+
+ start() {
+ local r
+- echo -n $"Starting domain watchdog daemon: "
++ stat_busy "Starting domain watchdog daemon"
+
+ $DAEMON 30 15
+ r=$?
+- [ "$r" -eq 0 ] && success $"$base startup" || failure $"$base startup"
+- echo
++ [ "$r" -eq 0 ] && stat_done ; add_daemon $initname || stat_fail
+
+ return $r
+ }
+
+ stop() {
+ local r
+- echo -n $"Stopping domain watchdog daemon: "
++ stat_busy "Stopping domain watchdog daemon"
+
+ killall -USR1 $base 2>/dev/null
+ r=$?
+- [ "$r" -eq 0 ] && success $"$base stop" || failure $"$base stop"
+- echo
++ [ "$r" -eq 0 ] && stat_done ; rm_daemon $initname || stat_fail
+
+ return $r
+ }
diff --git a/kernels/xen/dom0_xz_decompression.patch b/kernels/xen/dom0_xz_decompression.patch
deleted file mode 100755
index 277ebcfd2..000000000
--- a/kernels/xen/dom0_xz_decompression.patch
+++ /dev/null
@@ -1,3528 +0,0 @@
-diff --git a/xen/common/Makefile b/xen/common/Makefile
---- a/xen/common/Makefile
-+++ b/xen/common/Makefile
-@@ -43,7 +43,7 @@
- obj-y += rbtree.o
- obj-y += lzo.o
-
--obj-$(CONFIG_X86) += decompress.o bunzip2.o unlzma.o unlzo.o
-+obj-$(CONFIG_X86) += decompress.o bunzip2.o unxz.o unlzma.o unlzo.o
-
- obj-$(perfc) += perfc.o
- obj-$(crash_debug) += gdbstub.o
-diff --git a/xen/common/decompress.c b/xen/common/decompress.c
---- a/xen/common/decompress.c
-+++ b/xen/common/decompress.c
-@@ -20,6 +20,9 @@
- if ( len >= 3 && !memcmp(inbuf, "\x42\x5a\x68", 3) )
- return bunzip2(inbuf, len, NULL, NULL, outbuf, NULL, error);
-
-+ if ( len >= 6 && !memcmp(inbuf, "\3757zXZ", 6) )
-+ return unxz(inbuf, len, NULL, NULL, outbuf, NULL, error);
-+
- if ( len >= 2 && !memcmp(inbuf, "\135\000", 2) )
- return unlzma(inbuf, len, NULL, NULL, outbuf, NULL, error);
-
-diff --git a/xen/common/decompress.h b/xen/common/decompress.h
---- a/xen/common/decompress.h
-+++ b/xen/common/decompress.h
-@@ -8,6 +8,7 @@
-
- #define STATIC
- #define INIT __init
-+#define INITDATA __initdata
-
- static void(*__initdata error)(const char *);
- #define set_error_fn(x) error = x;
-diff --git a/xen/common/unxz.c b/xen/common/unxz.c
-new file mode 100644
---- /dev/null
-+++ b/xen/common/unxz.c
-@@ -0,0 +1,306 @@
-+/*
-+ * Wrapper for decompressing XZ-compressed kernel, initramfs, and initrd
-+ *
-+ * Author: Lasse Collin <lasse.collin@tukaani.org>
-+ *
-+ * This file has been put into the public domain.
-+ * You can do whatever you want with this file.
-+ */
-+
-+/*
-+ * Important notes about in-place decompression
-+ *
-+ * At least on x86, the kernel is decompressed in place: the compressed data
-+ * is placed to the end of the output buffer, and the decompressor overwrites
-+ * most of the compressed data. There must be enough safety margin to
-+ * guarantee that the write position is always behind the read position.
-+ *
-+ * The safety margin for XZ with LZMA2 or BCJ+LZMA2 is calculated below.
-+ * Note that the margin with XZ is bigger than with Deflate (gzip)!
-+ *
-+ * The worst case for in-place decompression is that the beginning of
-+ * the file is compressed extremely well, and the rest of the file is
-+ * uncompressible. Thus, we must look for worst-case expansion when the
-+ * compressor is encoding uncompressible data.
-+ *
-+ * The structure of the .xz file in case of a compresed kernel is as follows.
-+ * Sizes (as bytes) of the fields are in parenthesis.
-+ *
-+ * Stream Header (12)
-+ * Block Header:
-+ * Block Header (8-12)
-+ * Compressed Data (N)
-+ * Block Padding (0-3)
-+ * CRC32 (4)
-+ * Index (8-20)
-+ * Stream Footer (12)
-+ *
-+ * Normally there is exactly one Block, but let's assume that there are
-+ * 2-4 Blocks just in case. Because Stream Header and also Block Header
-+ * of the first Block don't make the decompressor produce any uncompressed
-+ * data, we can ignore them from our calculations. Block Headers of possible
-+ * additional Blocks have to be taken into account still. With these
-+ * assumptions, it is safe to assume that the total header overhead is
-+ * less than 128 bytes.
-+ *
-+ * Compressed Data contains LZMA2 or BCJ+LZMA2 encoded data. Since BCJ
-+ * doesn't change the size of the data, it is enough to calculate the
-+ * safety margin for LZMA2.
-+ *
-+ * LZMA2 stores the data in chunks. Each chunk has a header whose size is
-+ * a maximum of 6 bytes, but to get round 2^n numbers, let's assume that
-+ * the maximum chunk header size is 8 bytes. After the chunk header, there
-+ * may be up to 64 KiB of actual payload in the chunk. Often the payload is
-+ * quite a bit smaller though; to be safe, let's assume that an average
-+ * chunk has only 32 KiB of payload.
-+ *
-+ * The maximum uncompressed size of the payload is 2 MiB. The minimum
-+ * uncompressed size of the payload is in practice never less than the
-+ * payload size itself. The LZMA2 format would allow uncompressed size
-+ * to be less than the payload size, but no sane compressor creates such
-+ * files. LZMA2 supports storing uncompressible data in uncompressed form,
-+ * so there's never a need to create payloads whose uncompressed size is
-+ * smaller than the compressed size.
-+ *
-+ * The assumption, that the uncompressed size of the payload is never
-+ * smaller than the payload itself, is valid only when talking about
-+ * the payload as a whole. It is possible that the payload has parts where
-+ * the decompressor consumes more input than it produces output. Calculating
-+ * the worst case for this would be tricky. Instead of trying to do that,
-+ * let's simply make sure that the decompressor never overwrites any bytes
-+ * of the payload which it is currently reading.
-+ *
-+ * Now we have enough information to calculate the safety margin. We need
-+ * - 128 bytes for the .xz file format headers;
-+ * - 8 bytes per every 32 KiB of uncompressed size (one LZMA2 chunk header
-+ * per chunk, each chunk having average payload size of 32 KiB); and
-+ * - 64 KiB (biggest possible LZMA2 chunk payload size) to make sure that
-+ * the decompressor never overwrites anything from the LZMA2 chunk
-+ * payload it is currently reading.
-+ *
-+ * We get the following formula:
-+ *
-+ * safety_margin = 128 + uncompressed_size * 8 / 32768 + 65536
-+ * = 128 + (uncompressed_size >> 12) + 65536
-+ *
-+ * For comparision, according to arch/x86/boot/compressed/misc.c, the
-+ * equivalent formula for Deflate is this:
-+ *
-+ * safety_margin = 18 + (uncompressed_size >> 12) + 32768
-+ *
-+ * Thus, when updating Deflate-only in-place kernel decompressor to
-+ * support XZ, the fixed overhead has to be increased from 18+32768 bytes
-+ * to 128+65536 bytes.
-+ */
-+
-+#include "decompress.h"
-+
-+#define XZ_EXTERN STATIC
-+
-+/*
-+ * For boot time use, we enable only the BCJ filter of the current
-+ * architecture or none if no BCJ filter is available for the architecture.
-+ */
-+#ifdef CONFIG_X86
-+# define XZ_DEC_X86
-+#endif
-+#ifdef CONFIG_PPC
-+# define XZ_DEC_POWERPC
-+#endif
-+#ifdef CONFIG_ARM
-+# define XZ_DEC_ARM
-+#endif
-+#ifdef CONFIG_IA64
-+# define XZ_DEC_IA64
-+#endif
-+#ifdef CONFIG_SPARC
-+# define XZ_DEC_SPARC
-+#endif
-+
-+/*
-+ * This will get the basic headers so that memeq() and others
-+ * can be defined.
-+ */
-+#include "xz/private.h"
-+
-+/*
-+ * memeq and memzero are not used much and any remotely sane implementation
-+ * is fast enough. memcpy/memmove speed matters in multi-call mode, but
-+ * the kernel image is decompressed in single-call mode, in which only
-+ * memcpy speed can matter and only if there is a lot of uncompressible data
-+ * (LZMA2 stores uncompressible chunks in uncompressed form). Thus, the
-+ * functions below should just be kept small; it's probably not worth
-+ * optimizing for speed.
-+ */
-+
-+#ifndef memeq
-+#define memeq(p1, p2, sz) (memcmp(p1, p2, sz) == 0)
-+#endif
-+
-+#ifndef memzero
-+#define memzero(p, sz) memset(p, 0, sz)
-+#endif
-+
-+#include "xz/crc32.c"
-+#include "xz/dec_stream.c"
-+#include "xz/dec_lzma2.c"
-+#include "xz/dec_bcj.c"
-+
-+/* Size of the input and output buffers in multi-call mode */
-+#define XZ_IOBUF_SIZE 4096
-+
-+/*
-+ * This function implements the API defined in <linux/decompress/generic.h>.
-+ *
-+ * This wrapper will automatically choose single-call or multi-call mode
-+ * of the native XZ decoder API. The single-call mode can be used only when
-+ * both input and output buffers are available as a single chunk, i.e. when
-+ * fill() and flush() won't be used.
-+ */
-+STATIC int INIT unxz(unsigned char *in, unsigned int in_size,
-+ int (*fill)(void *dest, unsigned int size),
-+ int (*flush)(void *src, unsigned int size),
-+ unsigned char *out, unsigned int *in_used,
-+ void (*error_fn)(const char *x))
-+{
-+ struct xz_buf b;
-+ struct xz_dec *s;
-+ enum xz_ret ret;
-+ bool_t must_free_in = false;
-+
-+ set_error_fn(error_fn);
-+
-+ xz_crc32_init();
-+
-+ if (in_used != NULL)
-+ *in_used = 0;
-+
-+ if (fill == NULL && flush == NULL)
-+ s = xz_dec_init(XZ_SINGLE, 0);
-+ else
-+ s = xz_dec_init(XZ_DYNALLOC, (uint32_t)-1);
-+
-+ if (s == NULL)
-+ goto error_alloc_state;
-+
-+ if (flush == NULL) {
-+ b.out = out;
-+ b.out_size = (size_t)-1;
-+ } else {
-+ b.out_size = XZ_IOBUF_SIZE;
-+ b.out = malloc(XZ_IOBUF_SIZE);
-+ if (b.out == NULL)
-+ goto error_alloc_out;
-+ }
-+
-+ if (in == NULL) {
-+ must_free_in = true;
-+ in = malloc(XZ_IOBUF_SIZE);
-+ if (in == NULL)
-+ goto error_alloc_in;
-+ }
-+
-+ b.in = in;
-+ b.in_pos = 0;
-+ b.in_size = in_size;
-+ b.out_pos = 0;
-+
-+ if (fill == NULL && flush == NULL) {
-+ ret = xz_dec_run(s, &b);
-+ } else {
-+ do {
-+ if (b.in_pos == b.in_size && fill != NULL) {
-+ if (in_used != NULL)
-+ *in_used += b.in_pos;
-+
-+ b.in_pos = 0;
-+
-+ in_size = fill(in, XZ_IOBUF_SIZE);
-+ if (in_size < 0) {
-+ /*
-+ * This isn't an optimal error code
-+ * but it probably isn't worth making
-+ * a new one either.
-+ */
-+ ret = XZ_BUF_ERROR;
-+ break;
-+ }
-+
-+ b.in_size = in_size;
-+ }
-+
-+ ret = xz_dec_run(s, &b);
-+
-+ if (flush != NULL && (b.out_pos == b.out_size
-+ || (ret != XZ_OK && b.out_pos > 0))) {
-+ /*
-+ * Setting ret here may hide an error
-+ * returned by xz_dec_run(), but probably
-+ * it's not too bad.
-+ */
-+ if (flush(b.out, b.out_pos) != (int)b.out_pos)
-+ ret = XZ_BUF_ERROR;
-+
-+ b.out_pos = 0;
-+ }
-+ } while (ret == XZ_OK);
-+
-+ if (must_free_in)
-+ free(in);
-+
-+ if (flush != NULL)
-+ free(b.out);
-+ }
-+
-+ if (in_used != NULL)
-+ *in_used += b.in_pos;
-+
-+ xz_dec_end(s);
-+
-+ switch (ret) {
-+ case XZ_STREAM_END:
-+ return 0;
-+
-+ case XZ_MEM_ERROR:
-+ /* This can occur only in multi-call mode. */
-+ error("XZ decompressor ran out of memory");
-+ break;
-+
-+ case XZ_FORMAT_ERROR:
-+ error("Input is not in the XZ format (wrong magic bytes)");
-+ break;
-+
-+ case XZ_OPTIONS_ERROR:
-+ error("Input was encoded with settings that are not "
-+ "supported by this XZ decoder");
-+ break;
-+
-+ case XZ_DATA_ERROR:
-+ case XZ_BUF_ERROR:
-+ error("XZ-compressed data is corrupt");
-+ break;
-+
-+ default:
-+ error("Bug in the XZ decompressor");
-+ break;
-+ }
-+
-+ return -1;
-+
-+error_alloc_in:
-+ if (flush != NULL)
-+ free(b.out);
-+
-+error_alloc_out:
-+ xz_dec_end(s);
-+
-+error_alloc_state:
-+ error("XZ decompressor ran out of memory");
-+ return -1;
-+}
-+
-+/*
-+ * This macro is used by architecture-specific files to decompress
-+ * the kernel image.
-+ */
-+#define decompress unxz
-diff --git a/xen/common/xz/crc32.c b/xen/common/xz/crc32.c
-new file mode 100644
---- /dev/null
-+++ b/xen/common/xz/crc32.c
-@@ -0,0 +1,51 @@
-+/*
-+ * CRC32 using the polynomial from IEEE-802.3
-+ *
-+ * Authors: Lasse Collin <lasse.collin@tukaani.org>
-+ * Igor Pavlov <http://7-zip.org/>
-+ *
-+ * This file has been put into the public domain.
-+ * You can do whatever you want with this file.
-+ */
-+
-+/*
-+ * This is not the fastest implementation, but it is pretty compact.
-+ * The fastest versions of xz_crc32() on modern CPUs without hardware
-+ * accelerated CRC instruction are 3-5 times as fast as this version,
-+ * but they are bigger and use more memory for the lookup table.
-+ */
-+
-+#include "private.h"
-+
-+XZ_EXTERN uint32_t INITDATA xz_crc32_table[256];
-+
-+XZ_EXTERN void INIT xz_crc32_init(void)
-+{
-+ const uint32_t poly = 0xEDB88320;
-+
-+ uint32_t i;
-+ uint32_t j;
-+ uint32_t r;
-+
-+ for (i = 0; i < 256; ++i) {
-+ r = i;
-+ for (j = 0; j < 8; ++j)
-+ r = (r >> 1) ^ (poly & ~((r & 1) - 1));
-+
-+ xz_crc32_table[i] = r;
-+ }
-+
-+ return;
-+}
-+
-+XZ_EXTERN uint32_t INIT xz_crc32(const uint8_t *buf, size_t size, uint32_t crc)
-+{
-+ crc = ~crc;
-+
-+ while (size != 0) {
-+ crc = xz_crc32_table[*buf++ ^ (crc & 0xFF)] ^ (crc >> 8);
-+ --size;
-+ }
-+
-+ return ~crc;
-+}
-diff --git a/xen/common/xz/dec_bcj.c b/xen/common/xz/dec_bcj.c
-new file mode 100644
---- /dev/null
-+++ b/xen/common/xz/dec_bcj.c
-@@ -0,0 +1,562 @@
-+/*
-+ * Branch/Call/Jump (BCJ) filter decoders
-+ *
-+ * Authors: Lasse Collin <lasse.collin@tukaani.org>
-+ * Igor Pavlov <http://7-zip.org/>
-+ *
-+ * This file has been put into the public domain.
-+ * You can do whatever you want with this file.
-+ */
-+
-+#include "private.h"
-+
-+/*
-+ * The rest of the file is inside this ifdef. It makes things a little more
-+ * convenient when building without support for any BCJ filters.
-+ */
-+#ifdef XZ_DEC_BCJ
-+
-+struct xz_dec_bcj {
-+ /* Type of the BCJ filter being used */
-+ enum {
-+ BCJ_X86 = 4, /* x86 or x86-64 */
-+ BCJ_POWERPC = 5, /* Big endian only */
-+ BCJ_IA64 = 6, /* Big or little endian */
-+ BCJ_ARM = 7, /* Little endian only */
-+ BCJ_ARMTHUMB = 8, /* Little endian only */
-+ BCJ_SPARC = 9 /* Big or little endian */
-+ } type;
-+
-+ /*
-+ * Return value of the next filter in the chain. We need to preserve
-+ * this information across calls, because we must not call the next
-+ * filter anymore once it has returned XZ_STREAM_END.
-+ */
-+ enum xz_ret ret;
-+
-+ /* True if we are operating in single-call mode. */
-+ bool_t single_call;
-+
-+ /*
-+ * Absolute position relative to the beginning of the uncompressed
-+ * data (in a single .xz Block). We care only about the lowest 32
-+ * bits so this doesn't need to be uint64_t even with big files.
-+ */
-+ uint32_t pos;
-+
-+ /* x86 filter state */
-+ uint32_t x86_prev_mask;
-+
-+ /* Temporary space to hold the variables from struct xz_buf */
-+ uint8_t *out;
-+ size_t out_pos;
-+ size_t out_size;
-+
-+ struct {
-+ /* Amount of already filtered data in the beginning of buf */
-+ size_t filtered;
-+
-+ /* Total amount of data currently stored in buf */
-+ size_t size;
-+
-+ /*
-+ * Buffer to hold a mix of filtered and unfiltered data. This
-+ * needs to be big enough to hold Alignment + 2 * Look-ahead:
-+ *
-+ * Type Alignment Look-ahead
-+ * x86 1 4
-+ * PowerPC 4 0
-+ * IA-64 16 0
-+ * ARM 4 0
-+ * ARM-Thumb 2 2
-+ * SPARC 4 0
-+ */
-+ uint8_t buf[16];
-+ } temp;
-+};
-+
-+#ifdef XZ_DEC_X86
-+/*
-+ * This is used to test the most significant byte of a memory address
-+ * in an x86 instruction.
-+ */
-+static inline int INIT bcj_x86_test_msbyte(uint8_t b)
-+{
-+ return b == 0x00 || b == 0xFF;
-+}
-+
-+static size_t INIT bcj_x86(struct xz_dec_bcj *s, uint8_t *buf, size_t size)
-+{
-+ static /*const*/ bool_t INITDATA mask_to_allowed_status[8]
-+ = { true, true, true, false, true, false, false, false };
-+
-+ static /*const*/ uint8_t INITDATA mask_to_bit_num[8]
-+ = { 0, 1, 2, 2, 3, 3, 3, 3 };
-+
-+ size_t i;
-+ size_t prev_pos = (size_t)-1;
-+ uint32_t prev_mask = s->x86_prev_mask;
-+ uint32_t src;
-+ uint32_t dest;
-+ uint32_t j;
-+ uint8_t b;
-+
-+ if (size <= 4)
-+ return 0;
-+
-+ size -= 4;
-+ for (i = 0; i < size; ++i) {
-+ if ((buf[i] & 0xFE) != 0xE8)
-+ continue;
-+
-+ prev_pos = i - prev_pos;
-+ if (prev_pos > 3) {
-+ prev_mask = 0;
-+ } else {
-+ prev_mask = (prev_mask << (prev_pos - 1)) & 7;
-+ if (prev_mask != 0) {
-+ b = buf[i + 4 - mask_to_bit_num[prev_mask]];
-+ if (!mask_to_allowed_status[prev_mask]
-+ || bcj_x86_test_msbyte(b)) {
-+ prev_pos = i;
-+ prev_mask = (prev_mask << 1) | 1;
-+ continue;
-+ }
-+ }
-+ }
-+
-+ prev_pos = i;
-+
-+ if (bcj_x86_test_msbyte(buf[i + 4])) {
-+ src = get_unaligned_le32(buf + i + 1);
-+ while (true) {
-+ dest = src - (s->pos + (uint32_t)i + 5);
-+ if (prev_mask == 0)
-+ break;
-+
-+ j = mask_to_bit_num[prev_mask] * 8;
-+ b = (uint8_t)(dest >> (24 - j));
-+ if (!bcj_x86_test_msbyte(b))
-+ break;
-+
-+ src = dest ^ (((uint32_t)1 << (32 - j)) - 1);
-+ }
-+
-+ dest &= 0x01FFFFFF;
-+ dest |= (uint32_t)0 - (dest & 0x01000000);
-+ put_unaligned_le32(dest, buf + i + 1);
-+ i += 4;
-+ } else {
-+ prev_mask = (prev_mask << 1) | 1;
-+ }
-+ }
-+
-+ prev_pos = i - prev_pos;
-+ s->x86_prev_mask = prev_pos > 3 ? 0 : prev_mask << (prev_pos - 1);
-+ return i;
-+}
-+#endif
-+
-+#ifdef XZ_DEC_POWERPC
-+static size_t INIT bcj_powerpc(struct xz_dec_bcj *s, uint8_t *buf, size_t size)
-+{
-+ size_t i;
-+ uint32_t instr;
-+
-+ for (i = 0; i + 4 <= size; i += 4) {
-+ instr = get_unaligned_be32(buf + i);
-+ if ((instr & 0xFC000003) == 0x48000001) {
-+ instr &= 0x03FFFFFC;
-+ instr -= s->pos + (uint32_t)i;
-+ instr &= 0x03FFFFFC;
-+ instr |= 0x48000001;
-+ put_unaligned_be32(instr, buf + i);
-+ }
-+ }
-+
-+ return i;
-+}
-+#endif
-+
-+#ifdef XZ_DEC_IA64
-+static size_t INIT bcj_ia64(struct xz_dec_bcj *s, uint8_t *buf, size_t size)
-+{
-+ static const uint8_t branch_table[32] = {
-+ 0, 0, 0, 0, 0, 0, 0, 0,
-+ 0, 0, 0, 0, 0, 0, 0, 0,
-+ 4, 4, 6, 6, 0, 0, 7, 7,
-+ 4, 4, 0, 0, 4, 4, 0, 0
-+ };
-+
-+ /*
-+ * The local variables take a little bit stack space, but it's less
-+ * than what LZMA2 decoder takes, so it doesn't make sense to reduce
-+ * stack usage here without doing that for the LZMA2 decoder too.
-+ */
-+
-+ /* Loop counters */
-+ size_t i;
-+ size_t j;
-+
-+ /* Instruction slot (0, 1, or 2) in the 128-bit instruction word */
-+ uint32_t slot;
-+
-+ /* Bitwise offset of the instruction indicated by slot */
-+ uint32_t bit_pos;
-+
-+ /* bit_pos split into byte and bit parts */
-+ uint32_t byte_pos;
-+ uint32_t bit_res;
-+
-+ /* Address part of an instruction */
-+ uint32_t addr;
-+
-+ /* Mask used to detect which instructions to convert */
-+ uint32_t mask;
-+
-+ /* 41-bit instruction stored somewhere in the lowest 48 bits */
-+ uint64_t instr;
-+
-+ /* Instruction normalized with bit_res for easier manipulation */
-+ uint64_t norm;
-+
-+ for (i = 0; i + 16 <= size; i += 16) {
-+ mask = branch_table[buf[i] & 0x1F];
-+ for (slot = 0, bit_pos = 5; slot < 3; ++slot, bit_pos += 41) {
-+ if (((mask >> slot) & 1) == 0)
-+ continue;
-+
-+ byte_pos = bit_pos >> 3;
-+ bit_res = bit_pos & 7;
-+ instr = 0;
-+ for (j = 0; j < 6; ++j)
-+ instr |= (uint64_t)(buf[i + j + byte_pos])
-+ << (8 * j);
-+
-+ norm = instr >> bit_res;
-+
-+ if (((norm >> 37) & 0x0F) == 0x05
-+ && ((norm >> 9) & 0x07) == 0) {
-+ addr = (norm >> 13) & 0x0FFFFF;
-+ addr |= ((uint32_t)(norm >> 36) & 1) << 20;
-+ addr <<= 4;
-+ addr -= s->pos + (uint32_t)i;
-+ addr >>= 4;
-+
-+ norm &= ~((uint64_t)0x8FFFFF << 13);
-+ norm |= (uint64_t)(addr & 0x0FFFFF) << 13;
-+ norm |= (uint64_t)(addr & 0x100000)
-+ << (36 - 20);
-+
-+ instr &= (1 << bit_res) - 1;
-+ instr |= norm << bit_res;
-+
-+ for (j = 0; j < 6; j++)
-+ buf[i + j + byte_pos]
-+ = (uint8_t)(instr >> (8 * j));
-+ }
-+ }
-+ }
-+
-+ return i;
-+}
-+#endif
-+
-+#ifdef XZ_DEC_ARM
-+static size_t INIT bcj_arm(struct xz_dec_bcj *s, uint8_t *buf, size_t size)
-+{
-+ size_t i;
-+ uint32_t addr;
-+
-+ for (i = 0; i + 4 <= size; i += 4) {
-+ if (buf[i + 3] == 0xEB) {
-+ addr = (uint32_t)buf[i] | ((uint32_t)buf[i + 1] << 8)
-+ | ((uint32_t)buf[i + 2] << 16);
-+ addr <<= 2;
-+ addr -= s->pos + (uint32_t)i + 8;
-+ addr >>= 2;
-+ buf[i] = (uint8_t)addr;
-+ buf[i + 1] = (uint8_t)(addr >> 8);
-+ buf[i + 2] = (uint8_t)(addr >> 16);
-+ }
-+ }
-+
-+ return i;
-+}
-+#endif
-+
-+#ifdef XZ_DEC_ARMTHUMB
-+static size_t INIT bcj_armthumb(struct xz_dec_bcj *s, uint8_t *buf, size_t size)
-+{
-+ size_t i;
-+ uint32_t addr;
-+
-+ for (i = 0; i + 4 <= size; i += 2) {
-+ if ((buf[i + 1] & 0xF8) == 0xF0
-+ && (buf[i + 3] & 0xF8) == 0xF8) {
-+ addr = (((uint32_t)buf[i + 1] & 0x07) << 19)
-+ | ((uint32_t)buf[i] << 11)
-+ | (((uint32_t)buf[i + 3] & 0x07) << 8)
-+ | (uint32_t)buf[i + 2];
-+ addr <<= 1;
-+ addr -= s->pos + (uint32_t)i + 4;
-+ addr >>= 1;
-+ buf[i + 1] = (uint8_t)(0xF0 | ((addr >> 19) & 0x07));
-+ buf[i] = (uint8_t)(addr >> 11);
-+ buf[i + 3] = (uint8_t)(0xF8 | ((addr >> 8) & 0x07));
-+ buf[i + 2] = (uint8_t)addr;
-+ i += 2;
-+ }
-+ }
-+
-+ return i;
-+}
-+#endif
-+
-+#ifdef XZ_DEC_SPARC
-+static size_t INIT bcj_sparc(struct xz_dec_bcj *s, uint8_t *buf, size_t size)
-+{
-+ size_t i;
-+ uint32_t instr;
-+
-+ for (i = 0; i + 4 <= size; i += 4) {
-+ instr = get_unaligned_be32(buf + i);
-+ if ((instr >> 22) == 0x100 || (instr >> 22) == 0x1FF) {
-+ instr <<= 2;
-+ instr -= s->pos + (uint32_t)i;
-+ instr >>= 2;
-+ instr = ((uint32_t)0x40000000 - (instr & 0x400000))
-+ | 0x40000000 | (instr & 0x3FFFFF);
-+ put_unaligned_be32(instr, buf + i);
-+ }
-+ }
-+
-+ return i;
-+}
-+#endif
-+
-+/*
-+ * Apply the selected BCJ filter. Update *pos and s->pos to match the amount
-+ * of data that got filtered.
-+ *
-+ * NOTE: This is implemented as a switch statement to avoid using function
-+ * pointers, which could be problematic in the kernel boot code, which must
-+ * avoid pointers to static data (at least on x86).
-+ */
-+static void INIT bcj_apply(struct xz_dec_bcj *s,
-+ uint8_t *buf, size_t *pos, size_t size)
-+{
-+ size_t filtered;
-+
-+ buf += *pos;
-+ size -= *pos;
-+
-+ switch (s->type) {
-+#ifdef XZ_DEC_X86
-+ case BCJ_X86:
-+ filtered = bcj_x86(s, buf, size);
-+ break;
-+#endif
-+#ifdef XZ_DEC_POWERPC
-+ case BCJ_POWERPC:
-+ filtered = bcj_powerpc(s, buf, size);
-+ break;
-+#endif
-+#ifdef XZ_DEC_IA64
-+ case BCJ_IA64:
-+ filtered = bcj_ia64(s, buf, size);
-+ break;
-+#endif
-+#ifdef XZ_DEC_ARM
-+ case BCJ_ARM:
-+ filtered = bcj_arm(s, buf, size);
-+ break;
-+#endif
-+#ifdef XZ_DEC_ARMTHUMB
-+ case BCJ_ARMTHUMB:
-+ filtered = bcj_armthumb(s, buf, size);
-+ break;
-+#endif
-+#ifdef XZ_DEC_SPARC
-+ case BCJ_SPARC:
-+ filtered = bcj_sparc(s, buf, size);
-+ break;
-+#endif
-+ default:
-+ /* Never reached but silence compiler warnings. */
-+ filtered = 0;
-+ break;
-+ }
-+
-+ *pos += filtered;
-+ s->pos += filtered;
-+}
-+
-+/*
-+ * Flush pending filtered data from temp to the output buffer.
-+ * Move the remaining mixture of possibly filtered and unfiltered
-+ * data to the beginning of temp.
-+ */
-+static void INIT bcj_flush(struct xz_dec_bcj *s, struct xz_buf *b)
-+{
-+ size_t copy_size;
-+
-+ copy_size = min_t(size_t, s->temp.filtered, b->out_size - b->out_pos);
-+ memcpy(b->out + b->out_pos, s->temp.buf, copy_size);
-+ b->out_pos += copy_size;
-+
-+ s->temp.filtered -= copy_size;
-+ s->temp.size -= copy_size;
-+ memmove(s->temp.buf, s->temp.buf + copy_size, s->temp.size);
-+}
-+
-+/*
-+ * The BCJ filter functions are primitive in sense that they process the
-+ * data in chunks of 1-16 bytes. To hide this issue, this function does
-+ * some buffering.
-+ */
-+XZ_EXTERN enum xz_ret INIT xz_dec_bcj_run(struct xz_dec_bcj *s,
-+ struct xz_dec_lzma2 *lzma2,
-+ struct xz_buf *b)
-+{
-+ size_t out_start;
-+
-+ /*
-+ * Flush pending already filtered data to the output buffer. Return
-+ * immediatelly if we couldn't flush everything, or if the next
-+ * filter in the chain had already returned XZ_STREAM_END.
-+ */
-+ if (s->temp.filtered > 0) {
-+ bcj_flush(s, b);
-+ if (s->temp.filtered > 0)
-+ return XZ_OK;
-+
-+ if (s->ret == XZ_STREAM_END)
-+ return XZ_STREAM_END;
-+ }
-+
-+ /*
-+ * If we have more output space than what is currently pending in
-+ * temp, copy the unfiltered data from temp to the output buffer
-+ * and try to fill the output buffer by decoding more data from the
-+ * next filter in the chain. Apply the BCJ filter on the new data
-+ * in the output buffer. If everything cannot be filtered, copy it
-+ * to temp and rewind the output buffer position accordingly.
-+ */
-+ if (s->temp.size < b->out_size - b->out_pos) {
-+ out_start = b->out_pos;
-+ memcpy(b->out + b->out_pos, s->temp.buf, s->temp.size);
-+ b->out_pos += s->temp.size;
-+
-+ s->ret = xz_dec_lzma2_run(lzma2, b);
-+ if (s->ret != XZ_STREAM_END
-+ && (s->ret != XZ_OK || s->single_call))
-+ return s->ret;
-+
-+ bcj_apply(s, b->out, &out_start, b->out_pos);
-+
-+ /*
-+ * As an exception, if the next filter returned XZ_STREAM_END,
-+ * we can do that too, since the last few bytes that remain
-+ * unfiltered are meant to remain unfiltered.
-+ */
-+ if (s->ret == XZ_STREAM_END)
-+ return XZ_STREAM_END;
-+
-+ s->temp.size = b->out_pos - out_start;
-+ b->out_pos -= s->temp.size;
-+ memcpy(s->temp.buf, b->out + b->out_pos, s->temp.size);
-+ }
-+
-+ /*
-+ * If we have unfiltered data in temp, try to fill by decoding more
-+ * data from the next filter. Apply the BCJ filter on temp. Then we
-+ * hopefully can fill the actual output buffer by copying filtered
-+ * data from temp. A mix of filtered and unfiltered data may be left
-+ * in temp; it will be taken care on the next call to this function.
-+ */
-+ if (s->temp.size > 0) {
-+ /* Make b->out{,_pos,_size} temporarily point to s->temp. */
-+ s->out = b->out;
-+ s->out_pos = b->out_pos;
-+ s->out_size = b->out_size;
-+ b->out = s->temp.buf;
-+ b->out_pos = s->temp.size;
-+ b->out_size = sizeof(s->temp.buf);
-+
-+ s->ret = xz_dec_lzma2_run(lzma2, b);
-+
-+ s->temp.size = b->out_pos;
-+ b->out = s->out;
-+ b->out_pos = s->out_pos;
-+ b->out_size = s->out_size;
-+
-+ if (s->ret != XZ_OK && s->ret != XZ_STREAM_END)
-+ return s->ret;
-+
-+ bcj_apply(s, s->temp.buf, &s->temp.filtered, s->temp.size);
-+
-+ /*
-+ * If the next filter returned XZ_STREAM_END, we mark that
-+ * everything is filtered, since the last unfiltered bytes
-+ * of the stream are meant to be left as is.
-+ */
-+ if (s->ret == XZ_STREAM_END)
-+ s->temp.filtered = s->temp.size;
-+
-+ bcj_flush(s, b);
-+ if (s->temp.filtered > 0)
-+ return XZ_OK;
-+ }
-+
-+ return s->ret;
-+}
-+
-+XZ_EXTERN struct xz_dec_bcj *INIT xz_dec_bcj_create(bool_t single_call)
-+{
-+ struct xz_dec_bcj *s = malloc(sizeof(*s));
-+ if (s != NULL)
-+ s->single_call = single_call;
-+
-+ return s;
-+}
-+
-+XZ_EXTERN enum xz_ret INIT xz_dec_bcj_reset(struct xz_dec_bcj *s, uint8_t id)
-+{
-+ switch (id) {
-+#ifdef XZ_DEC_X86
-+ case BCJ_X86:
-+#endif
-+#ifdef XZ_DEC_POWERPC
-+ case BCJ_POWERPC:
-+#endif
-+#ifdef XZ_DEC_IA64
-+ case BCJ_IA64:
-+#endif
-+#ifdef XZ_DEC_ARM
-+ case BCJ_ARM:
-+#endif
-+#ifdef XZ_DEC_ARMTHUMB
-+ case BCJ_ARMTHUMB:
-+#endif
-+#ifdef XZ_DEC_SPARC
-+ case BCJ_SPARC:
-+#endif
-+ break;
-+
-+ default:
-+ /* Unsupported Filter ID */
-+ return XZ_OPTIONS_ERROR;
-+ }
-+
-+ s->type = id;
-+ s->ret = XZ_OK;
-+ s->pos = 0;
-+ s->x86_prev_mask = 0;
-+ s->temp.filtered = 0;
-+ s->temp.size = 0;
-+
-+ return XZ_OK;
-+}
-+
-+#endif
-diff --git a/xen/common/xz/dec_lzma2.c b/xen/common/xz/dec_lzma2.c
-new file mode 100644
---- /dev/null
-+++ b/xen/common/xz/dec_lzma2.c
-@@ -0,0 +1,1171 @@
-+/*
-+ * LZMA2 decoder
-+ *
-+ * Authors: Lasse Collin <lasse.collin@tukaani.org>
-+ * Igor Pavlov <http://7-zip.org/>
-+ *
-+ * This file has been put into the public domain.
-+ * You can do whatever you want with this file.
-+ */
-+
-+#include "private.h"
-+#include "lzma2.h"
-+
-+/*
-+ * Range decoder initialization eats the first five bytes of each LZMA chunk.
-+ */
-+#define RC_INIT_BYTES 5
-+
-+/*
-+ * Minimum number of usable input buffer to safely decode one LZMA symbol.
-+ * The worst case is that we decode 22 bits using probabilities and 26
-+ * direct bits. This may decode at maximum of 20 bytes of input. However,
-+ * lzma_main() does an extra normalization before returning, thus we
-+ * need to put 21 here.
-+ */
-+#define LZMA_IN_REQUIRED 21
-+
-+/*
-+ * Dictionary (history buffer)
-+ *
-+ * These are always true:
-+ * start <= pos <= full <= end
-+ * pos <= limit <= end
-+ *
-+ * In multi-call mode, also these are true:
-+ * end == size
-+ * size <= size_max
-+ * allocated <= size
-+ *
-+ * Most of these variables are size_t to support single-call mode,
-+ * in which the dictionary variables address the actual output
-+ * buffer directly.
-+ */
-+struct dictionary {
-+ /* Beginning of the history buffer */
-+ uint8_t *buf;
-+
-+ /* Old position in buf (before decoding more data) */
-+ size_t start;
-+
-+ /* Position in buf */
-+ size_t pos;
-+
-+ /*
-+ * How full dictionary is. This is used to detect corrupt input that
-+ * would read beyond the beginning of the uncompressed stream.
-+ */
-+ size_t full;
-+
-+ /* Write limit; we don't write to buf[limit] or later bytes. */
-+ size_t limit;
-+
-+ /*
-+ * End of the dictionary buffer. In multi-call mode, this is
-+ * the same as the dictionary size. In single-call mode, this
-+ * indicates the size of the output buffer.
-+ */
-+ size_t end;
-+
-+ /*
-+ * Size of the dictionary as specified in Block Header. This is used
-+ * together with "full" to detect corrupt input that would make us
-+ * read beyond the beginning of the uncompressed stream.
-+ */
-+ uint32_t size;
-+
-+ /*
-+ * Maximum allowed dictionary size in multi-call mode.
-+ * This is ignored in single-call mode.
-+ */
-+ uint32_t size_max;
-+
-+ /*
-+ * Amount of memory currently allocated for the dictionary.
-+ * This is used only with XZ_DYNALLOC. (With XZ_PREALLOC,
-+ * size_max is always the same as the allocated size.)
-+ */
-+ uint32_t allocated;
-+
-+ /* Operation mode */
-+ enum xz_mode mode;
-+};
-+
-+/* Range decoder */
-+struct rc_dec {
-+ uint32_t range;
-+ uint32_t code;
-+
-+ /*
-+ * Number of initializing bytes remaining to be read
-+ * by rc_read_init().
-+ */
-+ uint32_t init_bytes_left;
-+
-+ /*
-+ * Buffer from which we read our input. It can be either
-+ * temp.buf or the caller-provided input buffer.
-+ */
-+ const uint8_t *in;
-+ size_t in_pos;
-+ size_t in_limit;
-+};
-+
-+/* Probabilities for a length decoder. */
-+struct lzma_len_dec {
-+ /* Probability of match length being at least 10 */
-+ uint16_t choice;
-+
-+ /* Probability of match length being at least 18 */
-+ uint16_t choice2;
-+
-+ /* Probabilities for match lengths 2-9 */
-+ uint16_t low[POS_STATES_MAX][LEN_LOW_SYMBOLS];
-+
-+ /* Probabilities for match lengths 10-17 */
-+ uint16_t mid[POS_STATES_MAX][LEN_MID_SYMBOLS];
-+
-+ /* Probabilities for match lengths 18-273 */
-+ uint16_t high[LEN_HIGH_SYMBOLS];
-+};
-+
-+struct lzma_dec {
-+ /* Distances of latest four matches */
-+ uint32_t rep0;
-+ uint32_t rep1;
-+ uint32_t rep2;
-+ uint32_t rep3;
-+
-+ /* Types of the most recently seen LZMA symbols */
-+ enum lzma_state state;
-+
-+ /*
-+ * Length of a match. This is updated so that dict_repeat can
-+ * be called again to finish repeating the whole match.
-+ */
-+ uint32_t len;
-+
-+ /*
-+ * LZMA properties or related bit masks (number of literal
-+ * context bits, a mask dervied from the number of literal
-+ * position bits, and a mask dervied from the number
-+ * position bits)
-+ */
-+ uint32_t lc;
-+ uint32_t literal_pos_mask; /* (1 << lp) - 1 */
-+ uint32_t pos_mask; /* (1 << pb) - 1 */
-+
-+ /* If 1, it's a match. Otherwise it's a single 8-bit literal. */
-+ uint16_t is_match[STATES][POS_STATES_MAX];
-+
-+ /* If 1, it's a repeated match. The distance is one of rep0 .. rep3. */
-+ uint16_t is_rep[STATES];
-+
-+ /*
-+ * If 0, distance of a repeated match is rep0.
-+ * Otherwise check is_rep1.
-+ */
-+ uint16_t is_rep0[STATES];
-+
-+ /*
-+ * If 0, distance of a repeated match is rep1.
-+ * Otherwise check is_rep2.
-+ */
-+ uint16_t is_rep1[STATES];
-+
-+ /* If 0, distance of a repeated match is rep2. Otherwise it is rep3. */
-+ uint16_t is_rep2[STATES];
-+
-+ /*
-+ * If 1, the repeated match has length of one byte. Otherwise
-+ * the length is decoded from rep_len_decoder.
-+ */
-+ uint16_t is_rep0_long[STATES][POS_STATES_MAX];
-+
-+ /*
-+ * Probability tree for the highest two bits of the match
-+ * distance. There is a separate probability tree for match
-+ * lengths of 2 (i.e. MATCH_LEN_MIN), 3, 4, and [5, 273].
-+ */
-+ uint16_t dist_slot[DIST_STATES][DIST_SLOTS];
-+
-+ /*
-+ * Probility trees for additional bits for match distance
-+ * when the distance is in the range [4, 127].
-+ */
-+ uint16_t dist_special[FULL_DISTANCES - DIST_MODEL_END];
-+
-+ /*
-+ * Probability tree for the lowest four bits of a match
-+ * distance that is equal to or greater than 128.
-+ */
-+ uint16_t dist_align[ALIGN_SIZE];
-+
-+ /* Length of a normal match */
-+ struct lzma_len_dec match_len_dec;
-+
-+ /* Length of a repeated match */
-+ struct lzma_len_dec rep_len_dec;
-+
-+ /* Probabilities of literals */
-+ uint16_t literal[LITERAL_CODERS_MAX][LITERAL_CODER_SIZE];
-+};
-+
-+struct lzma2_dec {
-+ /* Position in xz_dec_lzma2_run(). */
-+ enum lzma2_seq {
-+ SEQ_CONTROL,
-+ SEQ_UNCOMPRESSED_1,
-+ SEQ_UNCOMPRESSED_2,
-+ SEQ_COMPRESSED_0,
-+ SEQ_COMPRESSED_1,
-+ SEQ_PROPERTIES,
-+ SEQ_LZMA_PREPARE,
-+ SEQ_LZMA_RUN,
-+ SEQ_COPY
-+ } sequence;
-+
-+ /* Next position after decoding the compressed size of the chunk. */
-+ enum lzma2_seq next_sequence;
-+
-+ /* Uncompressed size of LZMA chunk (2 MiB at maximum) */
-+ uint32_t uncompressed;
-+
-+ /*
-+ * Compressed size of LZMA chunk or compressed/uncompressed
-+ * size of uncompressed chunk (64 KiB at maximum)
-+ */
-+ uint32_t compressed;
-+
-+ /*
-+ * True if dictionary reset is needed. This is false before
-+ * the first chunk (LZMA or uncompressed).
-+ */
-+ bool_t need_dict_reset;
-+
-+ /*
-+ * True if new LZMA properties are needed. This is false
-+ * before the first LZMA chunk.
-+ */
-+ bool_t need_props;
-+};
-+
-+struct xz_dec_lzma2 {
-+ /*
-+ * The order below is important on x86 to reduce code size and
-+ * it shouldn't hurt on other platforms. Everything up to and
-+ * including lzma.pos_mask are in the first 128 bytes on x86-32,
-+ * which allows using smaller instructions to access those
-+ * variables. On x86-64, fewer variables fit into the first 128
-+ * bytes, but this is still the best order without sacrificing
-+ * the readability by splitting the structures.
-+ */
-+ struct rc_dec rc;
-+ struct dictionary dict;
-+ struct lzma2_dec lzma2;
-+ struct lzma_dec lzma;
-+
-+ /*
-+ * Temporary buffer which holds small number of input bytes between
-+ * decoder calls. See lzma2_lzma() for details.
-+ */
-+ struct {
-+ uint32_t size;
-+ uint8_t buf[3 * LZMA_IN_REQUIRED];
-+ } temp;
-+};
-+
-+/**************
-+ * Dictionary *
-+ **************/
-+
-+/*
-+ * Reset the dictionary state. When in single-call mode, set up the beginning
-+ * of the dictionary to point to the actual output buffer.
-+ */
-+static void INIT dict_reset(struct dictionary *dict, struct xz_buf *b)
-+{
-+ if (DEC_IS_SINGLE(dict->mode)) {
-+ dict->buf = b->out + b->out_pos;
-+ dict->end = b->out_size - b->out_pos;
-+ }
-+
-+ dict->start = 0;
-+ dict->pos = 0;
-+ dict->limit = 0;
-+ dict->full = 0;
-+}
-+
-+/* Set dictionary write limit */
-+static void INIT dict_limit(struct dictionary *dict, size_t out_max)
-+{
-+ if (dict->end - dict->pos <= out_max)
-+ dict->limit = dict->end;
-+ else
-+ dict->limit = dict->pos + out_max;
-+}
-+
-+/* Return true if at least one byte can be written into the dictionary. */
-+static inline bool_t INIT dict_has_space(const struct dictionary *dict)
-+{
-+ return dict->pos < dict->limit;
-+}
-+
-+/*
-+ * Get a byte from the dictionary at the given distance. The distance is
-+ * assumed to valid, or as a special case, zero when the dictionary is
-+ * still empty. This special case is needed for single-call decoding to
-+ * avoid writing a '\0' to the end of the destination buffer.
-+ */
-+static inline uint32_t INIT dict_get(const struct dictionary *dict, uint32_t dist)
-+{
-+ size_t offset = dict->pos - dist - 1;
-+
-+ if (dist >= dict->pos)
-+ offset += dict->end;
-+
-+ return dict->full > 0 ? dict->buf[offset] : 0;
-+}
-+
-+/*
-+ * Put one byte into the dictionary. It is assumed that there is space for it.
-+ */
-+static inline void INIT dict_put(struct dictionary *dict, uint8_t byte)
-+{
-+ dict->buf[dict->pos++] = byte;
-+
-+ if (dict->full < dict->pos)
-+ dict->full = dict->pos;
-+}
-+
-+/*
-+ * Repeat given number of bytes from the given distance. If the distance is
-+ * invalid, false is returned. On success, true is returned and *len is
-+ * updated to indicate how many bytes were left to be repeated.
-+ */
-+static bool_t INIT dict_repeat(struct dictionary *dict, uint32_t *len, uint32_t dist)
-+{
-+ size_t back;
-+ uint32_t left;
-+
-+ if (dist >= dict->full || dist >= dict->size)
-+ return false;
-+
-+ left = min_t(size_t, dict->limit - dict->pos, *len);
-+ *len -= left;
-+
-+ back = dict->pos - dist - 1;
-+ if (dist >= dict->pos)
-+ back += dict->end;
-+
-+ do {
-+ dict->buf[dict->pos++] = dict->buf[back++];
-+ if (back == dict->end)
-+ back = 0;
-+ } while (--left > 0);
-+
-+ if (dict->full < dict->pos)
-+ dict->full = dict->pos;
-+
-+ return true;
-+}
-+
-+/* Copy uncompressed data as is from input to dictionary and output buffers. */
-+static void INIT dict_uncompressed(struct dictionary *dict, struct xz_buf *b,
-+ uint32_t *left)
-+{
-+ size_t copy_size;
-+
-+ while (*left > 0 && b->in_pos < b->in_size
-+ && b->out_pos < b->out_size) {
-+ copy_size = min(b->in_size - b->in_pos,
-+ b->out_size - b->out_pos);
-+ if (copy_size > dict->end - dict->pos)
-+ copy_size = dict->end - dict->pos;
-+ if (copy_size > *left)
-+ copy_size = *left;
-+
-+ *left -= copy_size;
-+
-+ memcpy(dict->buf + dict->pos, b->in + b->in_pos, copy_size);
-+ dict->pos += copy_size;
-+
-+ if (dict->full < dict->pos)
-+ dict->full = dict->pos;
-+
-+ if (DEC_IS_MULTI(dict->mode)) {
-+ if (dict->pos == dict->end)
-+ dict->pos = 0;
-+
-+ memcpy(b->out + b->out_pos, b->in + b->in_pos,
-+ copy_size);
-+ }
-+
-+ dict->start = dict->pos;
-+
-+ b->out_pos += copy_size;
-+ b->in_pos += copy_size;
-+ }
-+}
-+
-+/*
-+ * Flush pending data from dictionary to b->out. It is assumed that there is
-+ * enough space in b->out. This is guaranteed because caller uses dict_limit()
-+ * before decoding data into the dictionary.
-+ */
-+static uint32_t INIT dict_flush(struct dictionary *dict, struct xz_buf *b)
-+{
-+ size_t copy_size = dict->pos - dict->start;
-+
-+ if (DEC_IS_MULTI(dict->mode)) {
-+ if (dict->pos == dict->end)
-+ dict->pos = 0;
-+
-+ memcpy(b->out + b->out_pos, dict->buf + dict->start,
-+ copy_size);
-+ }
-+
-+ dict->start = dict->pos;
-+ b->out_pos += copy_size;
-+ return copy_size;
-+}
-+
-+/*****************
-+ * Range decoder *
-+ *****************/
-+
-+/* Reset the range decoder. */
-+static void INIT rc_reset(struct rc_dec *rc)
-+{
-+ rc->range = (uint32_t)-1;
-+ rc->code = 0;
-+ rc->init_bytes_left = RC_INIT_BYTES;
-+}
-+
-+/*
-+ * Read the first five initial bytes into rc->code if they haven't been
-+ * read already. (Yes, the first byte gets completely ignored.)
-+ */
-+static bool_t INIT rc_read_init(struct rc_dec *rc, struct xz_buf *b)
-+{
-+ while (rc->init_bytes_left > 0) {
-+ if (b->in_pos == b->in_size)
-+ return false;
-+
-+ rc->code = (rc->code << 8) + b->in[b->in_pos++];
-+ --rc->init_bytes_left;
-+ }
-+
-+ return true;
-+}
-+
-+/* Return true if there may not be enough input for the next decoding loop. */
-+static inline bool_t INIT rc_limit_exceeded(const struct rc_dec *rc)
-+{
-+ return rc->in_pos > rc->in_limit;
-+}
-+
-+/*
-+ * Return true if it is possible (from point of view of range decoder) that
-+ * we have reached the end of the LZMA chunk.
-+ */
-+static inline bool_t INIT rc_is_finished(const struct rc_dec *rc)
-+{
-+ return rc->code == 0;
-+}
-+
-+/* Read the next input byte if needed. */
-+static always_inline void rc_normalize(struct rc_dec *rc)
-+{
-+ if (rc->range < RC_TOP_VALUE) {
-+ rc->range <<= RC_SHIFT_BITS;
-+ rc->code = (rc->code << RC_SHIFT_BITS) + rc->in[rc->in_pos++];
-+ }
-+}
-+
-+/*
-+ * Decode one bit. In some versions, this function has been splitted in three
-+ * functions so that the compiler is supposed to be able to more easily avoid
-+ * an extra branch. In this particular version of the LZMA decoder, this
-+ * doesn't seem to be a good idea (tested with GCC 3.3.6, 3.4.6, and 4.3.3
-+ * on x86). Using a non-splitted version results in nicer looking code too.
-+ *
-+ * NOTE: This must return an int. Do not make it return a bool or the speed
-+ * of the code generated by GCC 3.x decreases 10-15 %. (GCC 4.3 doesn't care,
-+ * and it generates 10-20 % faster code than GCC 3.x from this file anyway.)
-+ */
-+static always_inline int rc_bit(struct rc_dec *rc, uint16_t *prob)
-+{
-+ uint32_t bound;
-+ int bit;
-+
-+ rc_normalize(rc);
-+ bound = (rc->range >> RC_BIT_MODEL_TOTAL_BITS) * *prob;
-+ if (rc->code < bound) {
-+ rc->range = bound;
-+ *prob += (RC_BIT_MODEL_TOTAL - *prob) >> RC_MOVE_BITS;
-+ bit = 0;
-+ } else {
-+ rc->range -= bound;
-+ rc->code -= bound;
-+ *prob -= *prob >> RC_MOVE_BITS;
-+ bit = 1;
-+ }
-+
-+ return bit;
-+}
-+
-+/* Decode a bittree starting from the most significant bit. */
-+static always_inline uint32_t rc_bittree(struct rc_dec *rc,
-+ uint16_t *probs, uint32_t limit)
-+{
-+ uint32_t symbol = 1;
-+
-+ do {
-+ if (rc_bit(rc, &probs[symbol]))
-+ symbol = (symbol << 1) + 1;
-+ else
-+ symbol <<= 1;
-+ } while (symbol < limit);
-+
-+ return symbol;
-+}
-+
-+/* Decode a bittree starting from the least significant bit. */
-+static always_inline void rc_bittree_reverse(struct rc_dec *rc,
-+ uint16_t *probs,
-+ uint32_t *dest, uint32_t limit)
-+{
-+ uint32_t symbol = 1;
-+ uint32_t i = 0;
-+
-+ do {
-+ if (rc_bit(rc, &probs[symbol])) {
-+ symbol = (symbol << 1) + 1;
-+ *dest += 1 << i;
-+ } else {
-+ symbol <<= 1;
-+ }
-+ } while (++i < limit);
-+}
-+
-+/* Decode direct bits (fixed fifty-fifty probability) */
-+static inline void INIT rc_direct(struct rc_dec *rc, uint32_t *dest, uint32_t limit)
-+{
-+ uint32_t mask;
-+
-+ do {
-+ rc_normalize(rc);
-+ rc->range >>= 1;
-+ rc->code -= rc->range;
-+ mask = (uint32_t)0 - (rc->code >> 31);
-+ rc->code += rc->range & mask;
-+ *dest = (*dest << 1) + (mask + 1);
-+ } while (--limit > 0);
-+}
-+
-+/********
-+ * LZMA *
-+ ********/
-+
-+/* Get pointer to literal coder probability array. */
-+static uint16_t *INIT lzma_literal_probs(struct xz_dec_lzma2 *s)
-+{
-+ uint32_t prev_byte = dict_get(&s->dict, 0);
-+ uint32_t low = prev_byte >> (8 - s->lzma.lc);
-+ uint32_t high = (s->dict.pos & s->lzma.literal_pos_mask) << s->lzma.lc;
-+ return s->lzma.literal[low + high];
-+}
-+
-+/* Decode a literal (one 8-bit byte) */
-+static void INIT lzma_literal(struct xz_dec_lzma2 *s)
-+{
-+ uint16_t *probs;
-+ uint32_t symbol;
-+ uint32_t match_byte;
-+ uint32_t match_bit;
-+ uint32_t offset;
-+ uint32_t i;
-+
-+ probs = lzma_literal_probs(s);
-+
-+ if (lzma_state_is_literal(s->lzma.state)) {
-+ symbol = rc_bittree(&s->rc, probs, 0x100);
-+ } else {
-+ symbol = 1;
-+ match_byte = dict_get(&s->dict, s->lzma.rep0) << 1;
-+ offset = 0x100;
-+
-+ do {
-+ match_bit = match_byte & offset;
-+ match_byte <<= 1;
-+ i = offset + match_bit + symbol;
-+
-+ if (rc_bit(&s->rc, &probs[i])) {
-+ symbol = (symbol << 1) + 1;
-+ offset &= match_bit;
-+ } else {
-+ symbol <<= 1;
-+ offset &= ~match_bit;
-+ }
-+ } while (symbol < 0x100);
-+ }
-+
-+ dict_put(&s->dict, (uint8_t)symbol);
-+ lzma_state_literal(&s->lzma.state);
-+}
-+
-+/* Decode the length of the match into s->lzma.len. */
-+static void INIT lzma_len(struct xz_dec_lzma2 *s, struct lzma_len_dec *l,
-+ uint32_t pos_state)
-+{
-+ uint16_t *probs;
-+ uint32_t limit;
-+
-+ if (!rc_bit(&s->rc, &l->choice)) {
-+ probs = l->low[pos_state];
-+ limit = LEN_LOW_SYMBOLS;
-+ s->lzma.len = MATCH_LEN_MIN;
-+ } else {
-+ if (!rc_bit(&s->rc, &l->choice2)) {
-+ probs = l->mid[pos_state];
-+ limit = LEN_MID_SYMBOLS;
-+ s->lzma.len = MATCH_LEN_MIN + LEN_LOW_SYMBOLS;
-+ } else {
-+ probs = l->high;
-+ limit = LEN_HIGH_SYMBOLS;
-+ s->lzma.len = MATCH_LEN_MIN + LEN_LOW_SYMBOLS
-+ + LEN_MID_SYMBOLS;
-+ }
-+ }
-+
-+ s->lzma.len += rc_bittree(&s->rc, probs, limit) - limit;
-+}
-+
-+/* Decode a match. The distance will be stored in s->lzma.rep0. */
-+static void INIT lzma_match(struct xz_dec_lzma2 *s, uint32_t pos_state)
-+{
-+ uint16_t *probs;
-+ uint32_t dist_slot;
-+ uint32_t limit;
-+
-+ lzma_state_match(&s->lzma.state);
-+
-+ s->lzma.rep3 = s->lzma.rep2;
-+ s->lzma.rep2 = s->lzma.rep1;
-+ s->lzma.rep1 = s->lzma.rep0;
-+
-+ lzma_len(s, &s->lzma.match_len_dec, pos_state);
-+
-+ probs = s->lzma.dist_slot[lzma_get_dist_state(s->lzma.len)];
-+ dist_slot = rc_bittree(&s->rc, probs, DIST_SLOTS) - DIST_SLOTS;
-+
-+ if (dist_slot < DIST_MODEL_START) {
-+ s->lzma.rep0 = dist_slot;
-+ } else {
-+ limit = (dist_slot >> 1) - 1;
-+ s->lzma.rep0 = 2 + (dist_slot & 1);
-+
-+ if (dist_slot < DIST_MODEL_END) {
-+ s->lzma.rep0 <<= limit;
-+ probs = s->lzma.dist_special + s->lzma.rep0
-+ - dist_slot - 1;
-+ rc_bittree_reverse(&s->rc, probs,
-+ &s->lzma.rep0, limit);
-+ } else {
-+ rc_direct(&s->rc, &s->lzma.rep0, limit - ALIGN_BITS);
-+ s->lzma.rep0 <<= ALIGN_BITS;
-+ rc_bittree_reverse(&s->rc, s->lzma.dist_align,
-+ &s->lzma.rep0, ALIGN_BITS);
-+ }
-+ }
-+}
-+
-+/*
-+ * Decode a repeated match. The distance is one of the four most recently
-+ * seen matches. The distance will be stored in s->lzma.rep0.
-+ */
-+static void INIT lzma_rep_match(struct xz_dec_lzma2 *s, uint32_t pos_state)
-+{
-+ uint32_t tmp;
-+
-+ if (!rc_bit(&s->rc, &s->lzma.is_rep0[s->lzma.state])) {
-+ if (!rc_bit(&s->rc, &s->lzma.is_rep0_long[
-+ s->lzma.state][pos_state])) {
-+ lzma_state_short_rep(&s->lzma.state);
-+ s->lzma.len = 1;
-+ return;
-+ }
-+ } else {
-+ if (!rc_bit(&s->rc, &s->lzma.is_rep1[s->lzma.state])) {
-+ tmp = s->lzma.rep1;
-+ } else {
-+ if (!rc_bit(&s->rc, &s->lzma.is_rep2[s->lzma.state])) {
-+ tmp = s->lzma.rep2;
-+ } else {
-+ tmp = s->lzma.rep3;
-+ s->lzma.rep3 = s->lzma.rep2;
-+ }
-+
-+ s->lzma.rep2 = s->lzma.rep1;
-+ }
-+
-+ s->lzma.rep1 = s->lzma.rep0;
-+ s->lzma.rep0 = tmp;
-+ }
-+
-+ lzma_state_long_rep(&s->lzma.state);
-+ lzma_len(s, &s->lzma.rep_len_dec, pos_state);
-+}
-+
-+/* LZMA decoder core */
-+static bool_t INIT lzma_main(struct xz_dec_lzma2 *s)
-+{
-+ uint32_t pos_state;
-+
-+ /*
-+ * If the dictionary was reached during the previous call, try to
-+ * finish the possibly pending repeat in the dictionary.
-+ */
-+ if (dict_has_space(&s->dict) && s->lzma.len > 0)
-+ dict_repeat(&s->dict, &s->lzma.len, s->lzma.rep0);
-+
-+ /*
-+ * Decode more LZMA symbols. One iteration may consume up to
-+ * LZMA_IN_REQUIRED - 1 bytes.
-+ */
-+ while (dict_has_space(&s->dict) && !rc_limit_exceeded(&s->rc)) {
-+ pos_state = s->dict.pos & s->lzma.pos_mask;
-+
-+ if (!rc_bit(&s->rc, &s->lzma.is_match[
-+ s->lzma.state][pos_state])) {
-+ lzma_literal(s);
-+ } else {
-+ if (rc_bit(&s->rc, &s->lzma.is_rep[s->lzma.state]))
-+ lzma_rep_match(s, pos_state);
-+ else
-+ lzma_match(s, pos_state);
-+
-+ if (!dict_repeat(&s->dict, &s->lzma.len, s->lzma.rep0))
-+ return false;
-+ }
-+ }
-+
-+ /*
-+ * Having the range decoder always normalized when we are outside
-+ * this function makes it easier to correctly handle end of the chunk.
-+ */
-+ rc_normalize(&s->rc);
-+
-+ return true;
-+}
-+
-+/*
-+ * Reset the LZMA decoder and range decoder state. Dictionary is nore reset
-+ * here, because LZMA state may be reset without resetting the dictionary.
-+ */
-+static void INIT lzma_reset(struct xz_dec_lzma2 *s)
-+{
-+ uint16_t *probs;
-+ size_t i;
-+
-+ s->lzma.state = STATE_LIT_LIT;
-+ s->lzma.rep0 = 0;
-+ s->lzma.rep1 = 0;
-+ s->lzma.rep2 = 0;
-+ s->lzma.rep3 = 0;
-+
-+ /*
-+ * All probabilities are initialized to the same value. This hack
-+ * makes the code smaller by avoiding a separate loop for each
-+ * probability array.
-+ *
-+ * This could be optimized so that only that part of literal
-+ * probabilities that are actually required. In the common case
-+ * we would write 12 KiB less.
-+ */
-+ probs = s->lzma.is_match[0];
-+ for (i = 0; i < PROBS_TOTAL; ++i)
-+ probs[i] = RC_BIT_MODEL_TOTAL / 2;
-+
-+ rc_reset(&s->rc);
-+}
-+
-+/*
-+ * Decode and validate LZMA properties (lc/lp/pb) and calculate the bit masks
-+ * from the decoded lp and pb values. On success, the LZMA decoder state is
-+ * reset and true is returned.
-+ */
-+static bool_t INIT lzma_props(struct xz_dec_lzma2 *s, uint8_t props)
-+{
-+ if (props > (4 * 5 + 4) * 9 + 8)
-+ return false;
-+
-+ s->lzma.pos_mask = 0;
-+ while (props >= 9 * 5) {
-+ props -= 9 * 5;
-+ ++s->lzma.pos_mask;
-+ }
-+
-+ s->lzma.pos_mask = (1 << s->lzma.pos_mask) - 1;
-+
-+ s->lzma.literal_pos_mask = 0;
-+ while (props >= 9) {
-+ props -= 9;
-+ ++s->lzma.literal_pos_mask;
-+ }
-+
-+ s->lzma.lc = props;
-+
-+ if (s->lzma.lc + s->lzma.literal_pos_mask > 4)
-+ return false;
-+
-+ s->lzma.literal_pos_mask = (1 << s->lzma.literal_pos_mask) - 1;
-+
-+ lzma_reset(s);
-+
-+ return true;
-+}
-+
-+/*********
-+ * LZMA2 *
-+ *********/
-+
-+/*
-+ * The LZMA decoder assumes that if the input limit (s->rc.in_limit) hasn't
-+ * been exceeded, it is safe to read up to LZMA_IN_REQUIRED bytes. This
-+ * wrapper function takes care of making the LZMA decoder's assumption safe.
-+ *
-+ * As long as there is plenty of input left to be decoded in the current LZMA
-+ * chunk, we decode directly from the caller-supplied input buffer until
-+ * there's LZMA_IN_REQUIRED bytes left. Those remaining bytes are copied into
-+ * s->temp.buf, which (hopefully) gets filled on the next call to this
-+ * function. We decode a few bytes from the temporary buffer so that we can
-+ * continue decoding from the caller-supplied input buffer again.
-+ */
-+static bool_t INIT lzma2_lzma(struct xz_dec_lzma2 *s, struct xz_buf *b)
-+{
-+ size_t in_avail;
-+ uint32_t tmp;
-+
-+ in_avail = b->in_size - b->in_pos;
-+ if (s->temp.size > 0 || s->lzma2.compressed == 0) {
-+ tmp = 2 * LZMA_IN_REQUIRED - s->temp.size;
-+ if (tmp > s->lzma2.compressed - s->temp.size)
-+ tmp = s->lzma2.compressed - s->temp.size;
-+ if (tmp > in_avail)
-+ tmp = in_avail;
-+
-+ memcpy(s->temp.buf + s->temp.size, b->in + b->in_pos, tmp);
-+
-+ if (s->temp.size + tmp == s->lzma2.compressed) {
-+ memzero(s->temp.buf + s->temp.size + tmp,
-+ sizeof(s->temp.buf)
-+ - s->temp.size - tmp);
-+ s->rc.in_limit = s->temp.size + tmp;
-+ } else if (s->temp.size + tmp < LZMA_IN_REQUIRED) {
-+ s->temp.size += tmp;
-+ b->in_pos += tmp;
-+ return true;
-+ } else {
-+ s->rc.in_limit = s->temp.size + tmp - LZMA_IN_REQUIRED;
-+ }
-+
-+ s->rc.in = s->temp.buf;
-+ s->rc.in_pos = 0;
-+
-+ if (!lzma_main(s) || s->rc.in_pos > s->temp.size + tmp)
-+ return false;
-+
-+ s->lzma2.compressed -= s->rc.in_pos;
-+
-+ if (s->rc.in_pos < s->temp.size) {
-+ s->temp.size -= s->rc.in_pos;
-+ memmove(s->temp.buf, s->temp.buf + s->rc.in_pos,
-+ s->temp.size);
-+ return true;
-+ }
-+
-+ b->in_pos += s->rc.in_pos - s->temp.size;
-+ s->temp.size = 0;
-+ }
-+
-+ in_avail = b->in_size - b->in_pos;
-+ if (in_avail >= LZMA_IN_REQUIRED) {
-+ s->rc.in = b->in;
-+ s->rc.in_pos = b->in_pos;
-+
-+ if (in_avail >= s->lzma2.compressed + LZMA_IN_REQUIRED)
-+ s->rc.in_limit = b->in_pos + s->lzma2.compressed;
-+ else
-+ s->rc.in_limit = b->in_size - LZMA_IN_REQUIRED;
-+
-+ if (!lzma_main(s))
-+ return false;
-+
-+ in_avail = s->rc.in_pos - b->in_pos;
-+ if (in_avail > s->lzma2.compressed)
-+ return false;
-+
-+ s->lzma2.compressed -= in_avail;
-+ b->in_pos = s->rc.in_pos;
-+ }
-+
-+ in_avail = b->in_size - b->in_pos;
-+ if (in_avail < LZMA_IN_REQUIRED) {
-+ if (in_avail > s->lzma2.compressed)
-+ in_avail = s->lzma2.compressed;
-+
-+ memcpy(s->temp.buf, b->in + b->in_pos, in_avail);
-+ s->temp.size = in_avail;
-+ b->in_pos += in_avail;
-+ }
-+
-+ return true;
-+}
-+
-+/*
-+ * Take care of the LZMA2 control layer, and forward the job of actual LZMA
-+ * decoding or copying of uncompressed chunks to other functions.
-+ */
-+XZ_EXTERN enum xz_ret INIT xz_dec_lzma2_run(struct xz_dec_lzma2 *s,
-+ struct xz_buf *b)
-+{
-+ uint32_t tmp;
-+
-+ while (b->in_pos < b->in_size || s->lzma2.sequence == SEQ_LZMA_RUN) {
-+ switch (s->lzma2.sequence) {
-+ case SEQ_CONTROL:
-+ /*
-+ * LZMA2 control byte
-+ *
-+ * Exact values:
-+ * 0x00 End marker
-+ * 0x01 Dictionary reset followed by
-+ * an uncompressed chunk
-+ * 0x02 Uncompressed chunk (no dictionary reset)
-+ *
-+ * Highest three bits (s->control & 0xE0):
-+ * 0xE0 Dictionary reset, new properties and state
-+ * reset, followed by LZMA compressed chunk
-+ * 0xC0 New properties and state reset, followed
-+ * by LZMA compressed chunk (no dictionary
-+ * reset)
-+ * 0xA0 State reset using old properties,
-+ * followed by LZMA compressed chunk (no
-+ * dictionary reset)
-+ * 0x80 LZMA chunk (no dictionary or state reset)
-+ *
-+ * For LZMA compressed chunks, the lowest five bits
-+ * (s->control & 1F) are the highest bits of the
-+ * uncompressed size (bits 16-20).
-+ *
-+ * A new LZMA2 stream must begin with a dictionary
-+ * reset. The first LZMA chunk must set new
-+ * properties and reset the LZMA state.
-+ *
-+ * Values that don't match anything described above
-+ * are invalid and we return XZ_DATA_ERROR.
-+ */
-+ tmp = b->in[b->in_pos++];
-+
-+ if (tmp >= 0xE0 || tmp == 0x01) {
-+ s->lzma2.need_props = true;
-+ s->lzma2.need_dict_reset = false;
-+ dict_reset(&s->dict, b);
-+ } else if (s->lzma2.need_dict_reset) {
-+ return XZ_DATA_ERROR;
-+ }
-+
-+ if (tmp >= 0x80) {
-+ s->lzma2.uncompressed = (tmp & 0x1F) << 16;
-+ s->lzma2.sequence = SEQ_UNCOMPRESSED_1;
-+
-+ if (tmp >= 0xC0) {
-+ /*
-+ * When there are new properties,
-+ * state reset is done at
-+ * SEQ_PROPERTIES.
-+ */
-+ s->lzma2.need_props = false;
-+ s->lzma2.next_sequence
-+ = SEQ_PROPERTIES;
-+
-+ } else if (s->lzma2.need_props) {
-+ return XZ_DATA_ERROR;
-+
-+ } else {
-+ s->lzma2.next_sequence
-+ = SEQ_LZMA_PREPARE;
-+ if (tmp >= 0xA0)
-+ lzma_reset(s);
-+ }
-+ } else {
-+ if (tmp == 0x00)
-+ return XZ_STREAM_END;
-+
-+ if (tmp > 0x02)
-+ return XZ_DATA_ERROR;
-+
-+ s->lzma2.sequence = SEQ_COMPRESSED_0;
-+ s->lzma2.next_sequence = SEQ_COPY;
-+ }
-+
-+ break;
-+
-+ case SEQ_UNCOMPRESSED_1:
-+ s->lzma2.uncompressed
-+ += (uint32_t)b->in[b->in_pos++] << 8;
-+ s->lzma2.sequence = SEQ_UNCOMPRESSED_2;
-+ break;
-+
-+ case SEQ_UNCOMPRESSED_2:
-+ s->lzma2.uncompressed
-+ += (uint32_t)b->in[b->in_pos++] + 1;
-+ s->lzma2.sequence = SEQ_COMPRESSED_0;
-+ break;
-+
-+ case SEQ_COMPRESSED_0:
-+ s->lzma2.compressed
-+ = (uint32_t)b->in[b->in_pos++] << 8;
-+ s->lzma2.sequence = SEQ_COMPRESSED_1;
-+ break;
-+
-+ case SEQ_COMPRESSED_1:
-+ s->lzma2.compressed
-+ += (uint32_t)b->in[b->in_pos++] + 1;
-+ s->lzma2.sequence = s->lzma2.next_sequence;
-+ break;
-+
-+ case SEQ_PROPERTIES:
-+ if (!lzma_props(s, b->in[b->in_pos++]))
-+ return XZ_DATA_ERROR;
-+
-+ s->lzma2.sequence = SEQ_LZMA_PREPARE;
-+
-+ case SEQ_LZMA_PREPARE:
-+ if (s->lzma2.compressed < RC_INIT_BYTES)
-+ return XZ_DATA_ERROR;
-+
-+ if (!rc_read_init(&s->rc, b))
-+ return XZ_OK;
-+
-+ s->lzma2.compressed -= RC_INIT_BYTES;
-+ s->lzma2.sequence = SEQ_LZMA_RUN;
-+
-+ case SEQ_LZMA_RUN:
-+ /*
-+ * Set dictionary limit to indicate how much we want
-+ * to be encoded at maximum. Decode new data into the
-+ * dictionary. Flush the new data from dictionary to
-+ * b->out. Check if we finished decoding this chunk.
-+ * In case the dictionary got full but we didn't fill
-+ * the output buffer yet, we may run this loop
-+ * multiple times without changing s->lzma2.sequence.
-+ */
-+ dict_limit(&s->dict, min_t(size_t,
-+ b->out_size - b->out_pos,
-+ s->lzma2.uncompressed));
-+ if (!lzma2_lzma(s, b))
-+ return XZ_DATA_ERROR;
-+
-+ s->lzma2.uncompressed -= dict_flush(&s->dict, b);
-+
-+ if (s->lzma2.uncompressed == 0) {
-+ if (s->lzma2.compressed > 0 || s->lzma.len > 0
-+ || !rc_is_finished(&s->rc))
-+ return XZ_DATA_ERROR;
-+
-+ rc_reset(&s->rc);
-+ s->lzma2.sequence = SEQ_CONTROL;
-+
-+ } else if (b->out_pos == b->out_size
-+ || (b->in_pos == b->in_size
-+ && s->temp.size
-+ < s->lzma2.compressed)) {
-+ return XZ_OK;
-+ }
-+
-+ break;
-+
-+ case SEQ_COPY:
-+ dict_uncompressed(&s->dict, b, &s->lzma2.compressed);
-+ if (s->lzma2.compressed > 0)
-+ return XZ_OK;
-+
-+ s->lzma2.sequence = SEQ_CONTROL;
-+ break;
-+ }
-+ }
-+
-+ return XZ_OK;
-+}
-+
-+XZ_EXTERN struct xz_dec_lzma2 *INIT xz_dec_lzma2_create(enum xz_mode mode,
-+ uint32_t dict_max)
-+{
-+ struct xz_dec_lzma2 *s = malloc(sizeof(*s));
-+ if (s == NULL)
-+ return NULL;
-+
-+ s->dict.mode = mode;
-+ s->dict.size_max = dict_max;
-+
-+ if (DEC_IS_PREALLOC(mode)) {
-+ s->dict.buf = large_malloc(dict_max);
-+ if (s->dict.buf == NULL) {
-+ free(s);
-+ return NULL;
-+ }
-+ } else if (DEC_IS_DYNALLOC(mode)) {
-+ s->dict.buf = NULL;
-+ s->dict.allocated = 0;
-+ }
-+
-+ return s;
-+}
-+
-+XZ_EXTERN enum xz_ret INIT xz_dec_lzma2_reset(struct xz_dec_lzma2 *s, uint8_t props)
-+{
-+ /* This limits dictionary size to 3 GiB to keep parsing simpler. */
-+ if (props > 39)
-+ return XZ_OPTIONS_ERROR;
-+
-+ s->dict.size = 2 + (props & 1);
-+ s->dict.size <<= (props >> 1) + 11;
-+
-+ if (DEC_IS_MULTI(s->dict.mode)) {
-+ if (s->dict.size > s->dict.size_max)
-+ return XZ_MEMLIMIT_ERROR;
-+
-+ s->dict.end = s->dict.size;
-+
-+ if (DEC_IS_DYNALLOC(s->dict.mode)) {
-+ if (s->dict.allocated < s->dict.size) {
-+ large_free(s->dict.buf);
-+ s->dict.buf = large_malloc(s->dict.size);
-+ if (s->dict.buf == NULL) {
-+ s->dict.allocated = 0;
-+ return XZ_MEM_ERROR;
-+ }
-+ }
-+ }
-+ }
-+
-+ s->lzma.len = 0;
-+
-+ s->lzma2.sequence = SEQ_CONTROL;
-+ s->lzma2.need_dict_reset = true;
-+
-+ s->temp.size = 0;
-+
-+ return XZ_OK;
-+}
-+
-+XZ_EXTERN void INIT xz_dec_lzma2_end(struct xz_dec_lzma2 *s)
-+{
-+ if (DEC_IS_MULTI(s->dict.mode))
-+ large_free(s->dict.buf);
-+
-+ free(s);
-+}
-diff --git a/xen/common/xz/dec_stream.c b/xen/common/xz/dec_stream.c
-new file mode 100644
---- /dev/null
-+++ b/xen/common/xz/dec_stream.c
-@@ -0,0 +1,821 @@
-+/*
-+ * .xz Stream decoder
-+ *
-+ * Author: Lasse Collin <lasse.collin@tukaani.org>
-+ *
-+ * This file has been put into the public domain.
-+ * You can do whatever you want with this file.
-+ */
-+
-+#include "private.h"
-+#include "stream.h"
-+
-+/* Hash used to validate the Index field */
-+struct xz_dec_hash {
-+ vli_type unpadded;
-+ vli_type uncompressed;
-+ uint32_t crc32;
-+};
-+
-+struct xz_dec {
-+ /* Position in dec_main() */
-+ enum {
-+ SEQ_STREAM_HEADER,
-+ SEQ_BLOCK_START,
-+ SEQ_BLOCK_HEADER,
-+ SEQ_BLOCK_UNCOMPRESS,
-+ SEQ_BLOCK_PADDING,
-+ SEQ_BLOCK_CHECK,
-+ SEQ_INDEX,
-+ SEQ_INDEX_PADDING,
-+ SEQ_INDEX_CRC32,
-+ SEQ_STREAM_FOOTER
-+ } sequence;
-+
-+ /* Position in variable-length integers and Check fields */
-+ uint32_t pos;
-+
-+ /* Variable-length integer decoded by dec_vli() */
-+ vli_type vli;
-+
-+ /* Saved in_pos and out_pos */
-+ size_t in_start;
-+ size_t out_start;
-+
-+ /* CRC32 value in Block or Index */
-+ uint32_t crc32;
-+
-+ /* Type of the integrity check calculated from uncompressed data */
-+ enum xz_check check_type;
-+
-+ /* Operation mode */
-+ enum xz_mode mode;
-+
-+ /*
-+ * True if the next call to xz_dec_run() is allowed to return
-+ * XZ_BUF_ERROR.
-+ */
-+ bool_t allow_buf_error;
-+
-+ /* Information stored in Block Header */
-+ struct {
-+ /*
-+ * Value stored in the Compressed Size field, or
-+ * VLI_UNKNOWN if Compressed Size is not present.
-+ */
-+ vli_type compressed;
-+
-+ /*
-+ * Value stored in the Uncompressed Size field, or
-+ * VLI_UNKNOWN if Uncompressed Size is not present.
-+ */
-+ vli_type uncompressed;
-+
-+ /* Size of the Block Header field */
-+ uint32_t size;
-+ } block_header;
-+
-+ /* Information collected when decoding Blocks */
-+ struct {
-+ /* Observed compressed size of the current Block */
-+ vli_type compressed;
-+
-+ /* Observed uncompressed size of the current Block */
-+ vli_type uncompressed;
-+
-+ /* Number of Blocks decoded so far */
-+ vli_type count;
-+
-+ /*
-+ * Hash calculated from the Block sizes. This is used to
-+ * validate the Index field.
-+ */
-+ struct xz_dec_hash hash;
-+ } block;
-+
-+ /* Variables needed when verifying the Index field */
-+ struct {
-+ /* Position in dec_index() */
-+ enum {
-+ SEQ_INDEX_COUNT,
-+ SEQ_INDEX_UNPADDED,
-+ SEQ_INDEX_UNCOMPRESSED
-+ } sequence;
-+
-+ /* Size of the Index in bytes */
-+ vli_type size;
-+
-+ /* Number of Records (matches block.count in valid files) */
-+ vli_type count;
-+
-+ /*
-+ * Hash calculated from the Records (matches block.hash in
-+ * valid files).
-+ */
-+ struct xz_dec_hash hash;
-+ } index;
-+
-+ /*
-+ * Temporary buffer needed to hold Stream Header, Block Header,
-+ * and Stream Footer. The Block Header is the biggest (1 KiB)
-+ * so we reserve space according to that. buf[] has to be aligned
-+ * to a multiple of four bytes; the size_t variables before it
-+ * should guarantee this.
-+ */
-+ struct {
-+ size_t pos;
-+ size_t size;
-+ uint8_t buf[1024];
-+ } temp;
-+
-+ struct xz_dec_lzma2 *lzma2;
-+
-+#ifdef XZ_DEC_BCJ
-+ struct xz_dec_bcj *bcj;
-+ bool_t bcj_active;
-+#endif
-+};
-+
-+#ifdef XZ_DEC_ANY_CHECK
-+/* Sizes of the Check field with different Check IDs */
-+static const uint8_t check_sizes[16] = {
-+ 0,
-+ 4, 4, 4,
-+ 8, 8, 8,
-+ 16, 16, 16,
-+ 32, 32, 32,
-+ 64, 64, 64
-+};
-+#endif
-+
-+/*
-+ * Fill s->temp by copying data starting from b->in[b->in_pos]. Caller
-+ * must have set s->temp.pos to indicate how much data we are supposed
-+ * to copy into s->temp.buf. Return true once s->temp.pos has reached
-+ * s->temp.size.
-+ */
-+static bool_t INIT fill_temp(struct xz_dec *s, struct xz_buf *b)
-+{
-+ size_t copy_size = min_t(size_t,
-+ b->in_size - b->in_pos, s->temp.size - s->temp.pos);
-+
-+ memcpy(s->temp.buf + s->temp.pos, b->in + b->in_pos, copy_size);
-+ b->in_pos += copy_size;
-+ s->temp.pos += copy_size;
-+
-+ if (s->temp.pos == s->temp.size) {
-+ s->temp.pos = 0;
-+ return true;
-+ }
-+
-+ return false;
-+}
-+
-+/* Decode a variable-length integer (little-endian base-128 encoding) */
-+static enum xz_ret INIT dec_vli(struct xz_dec *s, const uint8_t *in,
-+ size_t *in_pos, size_t in_size)
-+{
-+ uint8_t byte;
-+
-+ if (s->pos == 0)
-+ s->vli = 0;
-+
-+ while (*in_pos < in_size) {
-+ byte = in[*in_pos];
-+ ++*in_pos;
-+
-+ s->vli |= (vli_type)(byte & 0x7F) << s->pos;
-+
-+ if ((byte & 0x80) == 0) {
-+ /* Don't allow non-minimal encodings. */
-+ if (byte == 0 && s->pos != 0)
-+ return XZ_DATA_ERROR;
-+
-+ s->pos = 0;
-+ return XZ_STREAM_END;
-+ }
-+
-+ s->pos += 7;
-+ if (s->pos == 7 * VLI_BYTES_MAX)
-+ return XZ_DATA_ERROR;
-+ }
-+
-+ return XZ_OK;
-+}
-+
-+/*
-+ * Decode the Compressed Data field from a Block. Update and validate
-+ * the observed compressed and uncompressed sizes of the Block so that
-+ * they don't exceed the values possibly stored in the Block Header
-+ * (validation assumes that no integer overflow occurs, since vli_type
-+ * is normally uint64_t). Update the CRC32 if presence of the CRC32
-+ * field was indicated in Stream Header.
-+ *
-+ * Once the decoding is finished, validate that the observed sizes match
-+ * the sizes possibly stored in the Block Header. Update the hash and
-+ * Block count, which are later used to validate the Index field.
-+ */
-+static enum xz_ret INIT dec_block(struct xz_dec *s, struct xz_buf *b)
-+{
-+ enum xz_ret ret;
-+
-+ s->in_start = b->in_pos;
-+ s->out_start = b->out_pos;
-+
-+#ifdef XZ_DEC_BCJ
-+ if (s->bcj_active)
-+ ret = xz_dec_bcj_run(s->bcj, s->lzma2, b);
-+ else
-+#endif
-+ ret = xz_dec_lzma2_run(s->lzma2, b);
-+
-+ s->block.compressed += b->in_pos - s->in_start;
-+ s->block.uncompressed += b->out_pos - s->out_start;
-+
-+ /*
-+ * There is no need to separately check for VLI_UNKNOWN, since
-+ * the observed sizes are always smaller than VLI_UNKNOWN.
-+ */
-+ if (s->block.compressed > s->block_header.compressed
-+ || s->block.uncompressed
-+ > s->block_header.uncompressed)
-+ return XZ_DATA_ERROR;
-+
-+ if (s->check_type == XZ_CHECK_CRC32)
-+ s->crc32 = xz_crc32(b->out + s->out_start,
-+ b->out_pos - s->out_start, s->crc32);
-+
-+ if (ret == XZ_STREAM_END) {
-+ if (s->block_header.compressed != VLI_UNKNOWN
-+ && s->block_header.compressed
-+ != s->block.compressed)
-+ return XZ_DATA_ERROR;
-+
-+ if (s->block_header.uncompressed != VLI_UNKNOWN
-+ && s->block_header.uncompressed
-+ != s->block.uncompressed)
-+ return XZ_DATA_ERROR;
-+
-+ s->block.hash.unpadded += s->block_header.size
-+ + s->block.compressed;
-+
-+#ifdef XZ_DEC_ANY_CHECK
-+ s->block.hash.unpadded += check_sizes[s->check_type];
-+#else
-+ if (s->check_type == XZ_CHECK_CRC32)
-+ s->block.hash.unpadded += 4;
-+#endif
-+
-+ s->block.hash.uncompressed += s->block.uncompressed;
-+ s->block.hash.crc32 = xz_crc32(
-+ (const uint8_t *)&s->block.hash,
-+ sizeof(s->block.hash), s->block.hash.crc32);
-+
-+ ++s->block.count;
-+ }
-+
-+ return ret;
-+}
-+
-+/* Update the Index size and the CRC32 value. */
-+static void INIT index_update(struct xz_dec *s, const struct xz_buf *b)
-+{
-+ size_t in_used = b->in_pos - s->in_start;
-+ s->index.size += in_used;
-+ s->crc32 = xz_crc32(b->in + s->in_start, in_used, s->crc32);
-+}
-+
-+/*
-+ * Decode the Number of Records, Unpadded Size, and Uncompressed Size
-+ * fields from the Index field. That is, Index Padding and CRC32 are not
-+ * decoded by this function.
-+ *
-+ * This can return XZ_OK (more input needed), XZ_STREAM_END (everything
-+ * successfully decoded), or XZ_DATA_ERROR (input is corrupt).
-+ */
-+static enum xz_ret INIT dec_index(struct xz_dec *s, struct xz_buf *b)
-+{
-+ enum xz_ret ret;
-+
-+ do {
-+ ret = dec_vli(s, b->in, &b->in_pos, b->in_size);
-+ if (ret != XZ_STREAM_END) {
-+ index_update(s, b);
-+ return ret;
-+ }
-+
-+ switch (s->index.sequence) {
-+ case SEQ_INDEX_COUNT:
-+ s->index.count = s->vli;
-+
-+ /*
-+ * Validate that the Number of Records field
-+ * indicates the same number of Records as
-+ * there were Blocks in the Stream.
-+ */
-+ if (s->index.count != s->block.count)
-+ return XZ_DATA_ERROR;
-+
-+ s->index.sequence = SEQ_INDEX_UNPADDED;
-+ break;
-+
-+ case SEQ_INDEX_UNPADDED:
-+ s->index.hash.unpadded += s->vli;
-+ s->index.sequence = SEQ_INDEX_UNCOMPRESSED;
-+ break;
-+
-+ case SEQ_INDEX_UNCOMPRESSED:
-+ s->index.hash.uncompressed += s->vli;
-+ s->index.hash.crc32 = xz_crc32(
-+ (const uint8_t *)&s->index.hash,
-+ sizeof(s->index.hash),
-+ s->index.hash.crc32);
-+ --s->index.count;
-+ s->index.sequence = SEQ_INDEX_UNPADDED;
-+ break;
-+ }
-+ } while (s->index.count > 0);
-+
-+ return XZ_STREAM_END;
-+}
-+
-+/*
-+ * Validate that the next four input bytes match the value of s->crc32.
-+ * s->pos must be zero when starting to validate the first byte.
-+ */
-+static enum xz_ret INIT crc32_validate(struct xz_dec *s, struct xz_buf *b)
-+{
-+ do {
-+ if (b->in_pos == b->in_size)
-+ return XZ_OK;
-+
-+ if (((s->crc32 >> s->pos) & 0xFF) != b->in[b->in_pos++])
-+ return XZ_DATA_ERROR;
-+
-+ s->pos += 8;
-+
-+ } while (s->pos < 32);
-+
-+ s->crc32 = 0;
-+ s->pos = 0;
-+
-+ return XZ_STREAM_END;
-+}
-+
-+#ifdef XZ_DEC_ANY_CHECK
-+/*
-+ * Skip over the Check field when the Check ID is not supported.
-+ * Returns true once the whole Check field has been skipped over.
-+ */
-+static bool_t INIT check_skip(struct xz_dec *s, struct xz_buf *b)
-+{
-+ while (s->pos < check_sizes[s->check_type]) {
-+ if (b->in_pos == b->in_size)
-+ return false;
-+
-+ ++b->in_pos;
-+ ++s->pos;
-+ }
-+
-+ s->pos = 0;
-+
-+ return true;
-+}
-+#endif
-+
-+/* Decode the Stream Header field (the first 12 bytes of the .xz Stream). */
-+static enum xz_ret INIT dec_stream_header(struct xz_dec *s)
-+{
-+ if (!memeq(s->temp.buf, HEADER_MAGIC, HEADER_MAGIC_SIZE))
-+ return XZ_FORMAT_ERROR;
-+
-+ if (xz_crc32(s->temp.buf + HEADER_MAGIC_SIZE, 2, 0)
-+ != get_le32(s->temp.buf + HEADER_MAGIC_SIZE + 2))
-+ return XZ_DATA_ERROR;
-+
-+ if (s->temp.buf[HEADER_MAGIC_SIZE] != 0)
-+ return XZ_OPTIONS_ERROR;
-+
-+ /*
-+ * Of integrity checks, we support only none (Check ID = 0) and
-+ * CRC32 (Check ID = 1). However, if XZ_DEC_ANY_CHECK is defined,
-+ * we will accept other check types too, but then the check won't
-+ * be verified and a warning (XZ_UNSUPPORTED_CHECK) will be given.
-+ */
-+ s->check_type = s->temp.buf[HEADER_MAGIC_SIZE + 1];
-+
-+#ifdef XZ_DEC_ANY_CHECK
-+ if (s->check_type > XZ_CHECK_MAX)
-+ return XZ_OPTIONS_ERROR;
-+
-+ if (s->check_type > XZ_CHECK_CRC32)
-+ return XZ_UNSUPPORTED_CHECK;
-+#else
-+ if (s->check_type > XZ_CHECK_CRC32)
-+ return XZ_OPTIONS_ERROR;
-+#endif
-+
-+ return XZ_OK;
-+}
-+
-+/* Decode the Stream Footer field (the last 12 bytes of the .xz Stream) */
-+static enum xz_ret INIT dec_stream_footer(struct xz_dec *s)
-+{
-+ if (!memeq(s->temp.buf + 10, FOOTER_MAGIC, FOOTER_MAGIC_SIZE))
-+ return XZ_DATA_ERROR;
-+
-+ if (xz_crc32(s->temp.buf + 4, 6, 0) != get_le32(s->temp.buf))
-+ return XZ_DATA_ERROR;
-+
-+ /*
-+ * Validate Backward Size. Note that we never added the size of the
-+ * Index CRC32 field to s->index.size, thus we use s->index.size / 4
-+ * instead of s->index.size / 4 - 1.
-+ */
-+ if ((s->index.size >> 2) != get_le32(s->temp.buf + 4))
-+ return XZ_DATA_ERROR;
-+
-+ if (s->temp.buf[8] != 0 || s->temp.buf[9] != s->check_type)
-+ return XZ_DATA_ERROR;
-+
-+ /*
-+ * Use XZ_STREAM_END instead of XZ_OK to be more convenient
-+ * for the caller.
-+ */
-+ return XZ_STREAM_END;
-+}
-+
-+/* Decode the Block Header and initialize the filter chain. */
-+static enum xz_ret INIT dec_block_header(struct xz_dec *s)
-+{
-+ enum xz_ret ret;
-+
-+ /*
-+ * Validate the CRC32. We know that the temp buffer is at least
-+ * eight bytes so this is safe.
-+ */
-+ s->temp.size -= 4;
-+ if (xz_crc32(s->temp.buf, s->temp.size, 0)
-+ != get_le32(s->temp.buf + s->temp.size))
-+ return XZ_DATA_ERROR;
-+
-+ s->temp.pos = 2;
-+
-+ /*
-+ * Catch unsupported Block Flags. We support only one or two filters
-+ * in the chain, so we catch that with the same test.
-+ */
-+#ifdef XZ_DEC_BCJ
-+ if (s->temp.buf[1] & 0x3E)
-+#else
-+ if (s->temp.buf[1] & 0x3F)
-+#endif
-+ return XZ_OPTIONS_ERROR;
-+
-+ /* Compressed Size */
-+ if (s->temp.buf[1] & 0x40) {
-+ if (dec_vli(s, s->temp.buf, &s->temp.pos, s->temp.size)
-+ != XZ_STREAM_END)
-+ return XZ_DATA_ERROR;
-+
-+ s->block_header.compressed = s->vli;
-+ } else {
-+ s->block_header.compressed = VLI_UNKNOWN;
-+ }
-+
-+ /* Uncompressed Size */
-+ if (s->temp.buf[1] & 0x80) {
-+ if (dec_vli(s, s->temp.buf, &s->temp.pos, s->temp.size)
-+ != XZ_STREAM_END)
-+ return XZ_DATA_ERROR;
-+
-+ s->block_header.uncompressed = s->vli;
-+ } else {
-+ s->block_header.uncompressed = VLI_UNKNOWN;
-+ }
-+
-+#ifdef XZ_DEC_BCJ
-+ /* If there are two filters, the first one must be a BCJ filter. */
-+ s->bcj_active = s->temp.buf[1] & 0x01;
-+ if (s->bcj_active) {
-+ if (s->temp.size - s->temp.pos < 2)
-+ return XZ_OPTIONS_ERROR;
-+
-+ ret = xz_dec_bcj_reset(s->bcj, s->temp.buf[s->temp.pos++]);
-+ if (ret != XZ_OK)
-+ return ret;
-+
-+ /*
-+ * We don't support custom start offset,
-+ * so Size of Properties must be zero.
-+ */
-+ if (s->temp.buf[s->temp.pos++] != 0x00)
-+ return XZ_OPTIONS_ERROR;
-+ }
-+#endif
-+
-+ /* Valid Filter Flags always take at least two bytes. */
-+ if (s->temp.size - s->temp.pos < 2)
-+ return XZ_DATA_ERROR;
-+
-+ /* Filter ID = LZMA2 */
-+ if (s->temp.buf[s->temp.pos++] != 0x21)
-+ return XZ_OPTIONS_ERROR;
-+
-+ /* Size of Properties = 1-byte Filter Properties */
-+ if (s->temp.buf[s->temp.pos++] != 0x01)
-+ return XZ_OPTIONS_ERROR;
-+
-+ /* Filter Properties contains LZMA2 dictionary size. */
-+ if (s->temp.size - s->temp.pos < 1)
-+ return XZ_DATA_ERROR;
-+
-+ ret = xz_dec_lzma2_reset(s->lzma2, s->temp.buf[s->temp.pos++]);
-+ if (ret != XZ_OK)
-+ return ret;
-+
-+ /* The rest must be Header Padding. */
-+ while (s->temp.pos < s->temp.size)
-+ if (s->temp.buf[s->temp.pos++] != 0x00)
-+ return XZ_OPTIONS_ERROR;
-+
-+ s->temp.pos = 0;
-+ s->block.compressed = 0;
-+ s->block.uncompressed = 0;
-+
-+ return XZ_OK;
-+}
-+
-+static enum xz_ret INIT dec_main(struct xz_dec *s, struct xz_buf *b)
-+{
-+ enum xz_ret ret;
-+
-+ /*
-+ * Store the start position for the case when we are in the middle
-+ * of the Index field.
-+ */
-+ s->in_start = b->in_pos;
-+
-+ while (true) {
-+ switch (s->sequence) {
-+ case SEQ_STREAM_HEADER:
-+ /*
-+ * Stream Header is copied to s->temp, and then
-+ * decoded from there. This way if the caller
-+ * gives us only little input at a time, we can
-+ * still keep the Stream Header decoding code
-+ * simple. Similar approach is used in many places
-+ * in this file.
-+ */
-+ if (!fill_temp(s, b))
-+ return XZ_OK;
-+
-+ /*
-+ * If dec_stream_header() returns
-+ * XZ_UNSUPPORTED_CHECK, it is still possible
-+ * to continue decoding if working in multi-call
-+ * mode. Thus, update s->sequence before calling
-+ * dec_stream_header().
-+ */
-+ s->sequence = SEQ_BLOCK_START;
-+
-+ ret = dec_stream_header(s);
-+ if (ret != XZ_OK)
-+ return ret;
-+
-+ case SEQ_BLOCK_START:
-+ /* We need one byte of input to continue. */
-+ if (b->in_pos == b->in_size)
-+ return XZ_OK;
-+
-+ /* See if this is the beginning of the Index field. */
-+ if (b->in[b->in_pos] == 0) {
-+ s->in_start = b->in_pos++;
-+ s->sequence = SEQ_INDEX;
-+ break;
-+ }
-+
-+ /*
-+ * Calculate the size of the Block Header and
-+ * prepare to decode it.
-+ */
-+ s->block_header.size
-+ = ((uint32_t)b->in[b->in_pos] + 1) * 4;
-+
-+ s->temp.size = s->block_header.size;
-+ s->temp.pos = 0;
-+ s->sequence = SEQ_BLOCK_HEADER;
-+
-+ case SEQ_BLOCK_HEADER:
-+ if (!fill_temp(s, b))
-+ return XZ_OK;
-+
-+ ret = dec_block_header(s);
-+ if (ret != XZ_OK)
-+ return ret;
-+
-+ s->sequence = SEQ_BLOCK_UNCOMPRESS;
-+
-+ case SEQ_BLOCK_UNCOMPRESS:
-+ ret = dec_block(s, b);
-+ if (ret != XZ_STREAM_END)
-+ return ret;
-+
-+ s->sequence = SEQ_BLOCK_PADDING;
-+
-+ case SEQ_BLOCK_PADDING:
-+ /*
-+ * Size of Compressed Data + Block Padding
-+ * must be a multiple of four. We don't need
-+ * s->block.compressed for anything else
-+ * anymore, so we use it here to test the size
-+ * of the Block Padding field.
-+ */
-+ while (s->block.compressed & 3) {
-+ if (b->in_pos == b->in_size)
-+ return XZ_OK;
-+
-+ if (b->in[b->in_pos++] != 0)
-+ return XZ_DATA_ERROR;
-+
-+ ++s->block.compressed;
-+ }
-+
-+ s->sequence = SEQ_BLOCK_CHECK;
-+
-+ case SEQ_BLOCK_CHECK:
-+ if (s->check_type == XZ_CHECK_CRC32) {
-+ ret = crc32_validate(s, b);
-+ if (ret != XZ_STREAM_END)
-+ return ret;
-+ }
-+#ifdef XZ_DEC_ANY_CHECK
-+ else if (!check_skip(s, b)) {
-+ return XZ_OK;
-+ }
-+#endif
-+
-+ s->sequence = SEQ_BLOCK_START;
-+ break;
-+
-+ case SEQ_INDEX:
-+ ret = dec_index(s, b);
-+ if (ret != XZ_STREAM_END)
-+ return ret;
-+
-+ s->sequence = SEQ_INDEX_PADDING;
-+
-+ case SEQ_INDEX_PADDING:
-+ while ((s->index.size + (b->in_pos - s->in_start))
-+ & 3) {
-+ if (b->in_pos == b->in_size) {
-+ index_update(s, b);
-+ return XZ_OK;
-+ }
-+
-+ if (b->in[b->in_pos++] != 0)
-+ return XZ_DATA_ERROR;
-+ }
-+
-+ /* Finish the CRC32 value and Index size. */
-+ index_update(s, b);
-+
-+ /* Compare the hashes to validate the Index field. */
-+ if (!memeq(&s->block.hash, &s->index.hash,
-+ sizeof(s->block.hash)))
-+ return XZ_DATA_ERROR;
-+
-+ s->sequence = SEQ_INDEX_CRC32;
-+
-+ case SEQ_INDEX_CRC32:
-+ ret = crc32_validate(s, b);
-+ if (ret != XZ_STREAM_END)
-+ return ret;
-+
-+ s->temp.size = STREAM_HEADER_SIZE;
-+ s->sequence = SEQ_STREAM_FOOTER;
-+
-+ case SEQ_STREAM_FOOTER:
-+ if (!fill_temp(s, b))
-+ return XZ_OK;
-+
-+ return dec_stream_footer(s);
-+ }
-+ }
-+
-+ /* Never reached */
-+}
-+
-+XZ_EXTERN void INIT xz_dec_reset(struct xz_dec *s)
-+{
-+ s->sequence = SEQ_STREAM_HEADER;
-+ s->allow_buf_error = false;
-+ s->pos = 0;
-+ s->crc32 = 0;
-+ memzero(&s->block, sizeof(s->block));
-+ memzero(&s->index, sizeof(s->index));
-+ s->temp.pos = 0;
-+ s->temp.size = STREAM_HEADER_SIZE;
-+}
-+
-+/*
-+ * xz_dec_run() is a wrapper for dec_main() to handle some special cases in
-+ * multi-call and single-call decoding.
-+ *
-+ * In multi-call mode, we must return XZ_BUF_ERROR when it seems clear that we
-+ * are not going to make any progress anymore. This is to prevent the caller
-+ * from calling us infinitely when the input file is truncated or otherwise
-+ * corrupt. Since zlib-style API allows that the caller fills the input buffer
-+ * only when the decoder doesn't produce any new output, we have to be careful
-+ * to avoid returning XZ_BUF_ERROR too easily: XZ_BUF_ERROR is returned only
-+ * after the second consecutive call to xz_dec_run() that makes no progress.
-+ *
-+ * In single-call mode, if we couldn't decode everything and no error
-+ * occurred, either the input is truncated or the output buffer is too small.
-+ * Since we know that the last input byte never produces any output, we know
-+ * that if all the input was consumed and decoding wasn't finished, the file
-+ * must be corrupt. Otherwise the output buffer has to be too small or the
-+ * file is corrupt in a way that decoding it produces too big output.
-+ *
-+ * If single-call decoding fails, we reset b->in_pos and b->out_pos back to
-+ * their original values. This is because with some filter chains there won't
-+ * be any valid uncompressed data in the output buffer unless the decoding
-+ * actually succeeds (that's the price to pay of using the output buffer as
-+ * the workspace).
-+ */
-+XZ_EXTERN enum xz_ret INIT xz_dec_run(struct xz_dec *s, struct xz_buf *b)
-+{
-+ size_t in_start;
-+ size_t out_start;
-+ enum xz_ret ret;
-+
-+ if (DEC_IS_SINGLE(s->mode))
-+ xz_dec_reset(s);
-+
-+ in_start = b->in_pos;
-+ out_start = b->out_pos;
-+ ret = dec_main(s, b);
-+
-+ if (DEC_IS_SINGLE(s->mode)) {
-+ if (ret == XZ_OK)
-+ ret = b->in_pos == b->in_size
-+ ? XZ_DATA_ERROR : XZ_BUF_ERROR;
-+
-+ if (ret != XZ_STREAM_END) {
-+ b->in_pos = in_start;
-+ b->out_pos = out_start;
-+ }
-+
-+ } else if (ret == XZ_OK && in_start == b->in_pos
-+ && out_start == b->out_pos) {
-+ if (s->allow_buf_error)
-+ ret = XZ_BUF_ERROR;
-+
-+ s->allow_buf_error = true;
-+ } else {
-+ s->allow_buf_error = false;
-+ }
-+
-+ return ret;
-+}
-+
-+XZ_EXTERN struct xz_dec *INIT xz_dec_init(enum xz_mode mode, uint32_t dict_max)
-+{
-+ struct xz_dec *s = malloc(sizeof(*s));
-+ if (s == NULL)
-+ return NULL;
-+
-+ s->mode = mode;
-+
-+#ifdef XZ_DEC_BCJ
-+ s->bcj = xz_dec_bcj_create(DEC_IS_SINGLE(mode));
-+ if (s->bcj == NULL)
-+ goto error_bcj;
-+#endif
-+
-+ s->lzma2 = xz_dec_lzma2_create(mode, dict_max);
-+ if (s->lzma2 == NULL)
-+ goto error_lzma2;
-+
-+ xz_dec_reset(s);
-+ return s;
-+
-+error_lzma2:
-+#ifdef XZ_DEC_BCJ
-+ xz_dec_bcj_end(s->bcj);
-+error_bcj:
-+#endif
-+ free(s);
-+ return NULL;
-+}
-+
-+XZ_EXTERN void INIT xz_dec_end(struct xz_dec *s)
-+{
-+ if (s != NULL) {
-+ xz_dec_lzma2_end(s->lzma2);
-+#ifdef XZ_DEC_BCJ
-+ xz_dec_bcj_end(s->bcj);
-+#endif
-+ free(s);
-+ }
-+}
-diff --git a/xen/common/xz/lzma2.h b/xen/common/xz/lzma2.h
-new file mode 100644
---- /dev/null
-+++ b/xen/common/xz/lzma2.h
-@@ -0,0 +1,204 @@
-+/*
-+ * LZMA2 definitions
-+ *
-+ * Authors: Lasse Collin <lasse.collin@tukaani.org>
-+ * Igor Pavlov <http://7-zip.org/>
-+ *
-+ * This file has been put into the public domain.
-+ * You can do whatever you want with this file.
-+ */
-+
-+#ifndef XZ_LZMA2_H
-+#define XZ_LZMA2_H
-+
-+/* Range coder constants */
-+#define RC_SHIFT_BITS 8
-+#define RC_TOP_BITS 24
-+#define RC_TOP_VALUE (1 << RC_TOP_BITS)
-+#define RC_BIT_MODEL_TOTAL_BITS 11
-+#define RC_BIT_MODEL_TOTAL (1 << RC_BIT_MODEL_TOTAL_BITS)
-+#define RC_MOVE_BITS 5
-+
-+/*
-+ * Maximum number of position states. A position state is the lowest pb
-+ * number of bits of the current uncompressed offset. In some places there
-+ * are different sets of probabilities for different position states.
-+ */
-+#define POS_STATES_MAX (1 << 4)
-+
-+/*
-+ * This enum is used to track which LZMA symbols have occurred most recently
-+ * and in which order. This information is used to predict the next symbol.
-+ *
-+ * Symbols:
-+ * - Literal: One 8-bit byte
-+ * - Match: Repeat a chunk of data at some distance
-+ * - Long repeat: Multi-byte match at a recently seen distance
-+ * - Short repeat: One-byte repeat at a recently seen distance
-+ *
-+ * The symbol names are in from STATE_oldest_older_previous. REP means
-+ * either short or long repeated match, and NONLIT means any non-literal.
-+ */
-+enum lzma_state {
-+ STATE_LIT_LIT,
-+ STATE_MATCH_LIT_LIT,
-+ STATE_REP_LIT_LIT,
-+ STATE_SHORTREP_LIT_LIT,
-+ STATE_MATCH_LIT,
-+ STATE_REP_LIT,
-+ STATE_SHORTREP_LIT,
-+ STATE_LIT_MATCH,
-+ STATE_LIT_LONGREP,
-+ STATE_LIT_SHORTREP,
-+ STATE_NONLIT_MATCH,
-+ STATE_NONLIT_REP
-+};
-+
-+/* Total number of states */
-+#define STATES 12
-+
-+/* The lowest 7 states indicate that the previous state was a literal. */
-+#define LIT_STATES 7
-+
-+/* Indicate that the latest symbol was a literal. */
-+static inline void INIT lzma_state_literal(enum lzma_state *state)
-+{
-+ if (*state <= STATE_SHORTREP_LIT_LIT)
-+ *state = STATE_LIT_LIT;
-+ else if (*state <= STATE_LIT_SHORTREP)
-+ *state -= 3;
-+ else
-+ *state -= 6;
-+}
-+
-+/* Indicate that the latest symbol was a match. */
-+static inline void INIT lzma_state_match(enum lzma_state *state)
-+{
-+ *state = *state < LIT_STATES ? STATE_LIT_MATCH : STATE_NONLIT_MATCH;
-+}
-+
-+/* Indicate that the latest state was a long repeated match. */
-+static inline void INIT lzma_state_long_rep(enum lzma_state *state)
-+{
-+ *state = *state < LIT_STATES ? STATE_LIT_LONGREP : STATE_NONLIT_REP;
-+}
-+
-+/* Indicate that the latest symbol was a short match. */
-+static inline void INIT lzma_state_short_rep(enum lzma_state *state)
-+{
-+ *state = *state < LIT_STATES ? STATE_LIT_SHORTREP : STATE_NONLIT_REP;
-+}
-+
-+/* Test if the previous symbol was a literal. */
-+static inline bool_t INIT lzma_state_is_literal(enum lzma_state state)
-+{
-+ return state < LIT_STATES;
-+}
-+
-+/* Each literal coder is divided in three sections:
-+ * - 0x001-0x0FF: Without match byte
-+ * - 0x101-0x1FF: With match byte; match bit is 0
-+ * - 0x201-0x2FF: With match byte; match bit is 1
-+ *
-+ * Match byte is used when the previous LZMA symbol was something else than
-+ * a literal (that is, it was some kind of match).
-+ */
-+#define LITERAL_CODER_SIZE 0x300
-+
-+/* Maximum number of literal coders */
-+#define LITERAL_CODERS_MAX (1 << 4)
-+
-+/* Minimum length of a match is two bytes. */
-+#define MATCH_LEN_MIN 2
-+
-+/* Match length is encoded with 4, 5, or 10 bits.
-+ *
-+ * Length Bits
-+ * 2-9 4 = Choice=0 + 3 bits
-+ * 10-17 5 = Choice=1 + Choice2=0 + 3 bits
-+ * 18-273 10 = Choice=1 + Choice2=1 + 8 bits
-+ */
-+#define LEN_LOW_BITS 3
-+#define LEN_LOW_SYMBOLS (1 << LEN_LOW_BITS)
-+#define LEN_MID_BITS 3
-+#define LEN_MID_SYMBOLS (1 << LEN_MID_BITS)
-+#define LEN_HIGH_BITS 8
-+#define LEN_HIGH_SYMBOLS (1 << LEN_HIGH_BITS)
-+#define LEN_SYMBOLS (LEN_LOW_SYMBOLS + LEN_MID_SYMBOLS + LEN_HIGH_SYMBOLS)
-+
-+/*
-+ * Maximum length of a match is 273 which is a result of the encoding
-+ * described above.
-+ */
-+#define MATCH_LEN_MAX (MATCH_LEN_MIN + LEN_SYMBOLS - 1)
-+
-+/*
-+ * Different sets of probabilities are used for match distances that have
-+ * very short match length: Lengths of 2, 3, and 4 bytes have a separate
-+ * set of probabilities for each length. The matches with longer length
-+ * use a shared set of probabilities.
-+ */
-+#define DIST_STATES 4
-+
-+/*
-+ * Get the index of the appropriate probability array for decoding
-+ * the distance slot.
-+ */
-+static inline uint32_t INIT lzma_get_dist_state(uint32_t len)
-+{
-+ return len < DIST_STATES + MATCH_LEN_MIN
-+ ? len - MATCH_LEN_MIN : DIST_STATES - 1;
-+}
-+
-+/*
-+ * The highest two bits of a 32-bit match distance are encoded using six bits.
-+ * This six-bit value is called a distance slot. This way encoding a 32-bit
-+ * value takes 6-36 bits, larger values taking more bits.
-+ */
-+#define DIST_SLOT_BITS 6
-+#define DIST_SLOTS (1 << DIST_SLOT_BITS)
-+
-+/* Match distances up to 127 are fully encoded using probabilities. Since
-+ * the highest two bits (distance slot) are always encoded using six bits,
-+ * the distances 0-3 don't need any additional bits to encode, since the
-+ * distance slot itself is the same as the actual distance. DIST_MODEL_START
-+ * indicates the first distance slot where at least one additional bit is
-+ * needed.
-+ */
-+#define DIST_MODEL_START 4
-+
-+/*
-+ * Match distances greater than 127 are encoded in three pieces:
-+ * - distance slot: the highest two bits
-+ * - direct bits: 2-26 bits below the highest two bits
-+ * - alignment bits: four lowest bits
-+ *
-+ * Direct bits don't use any probabilities.
-+ *
-+ * The distance slot value of 14 is for distances 128-191.
-+ */
-+#define DIST_MODEL_END 14
-+
-+/* Distance slots that indicate a distance <= 127. */
-+#define FULL_DISTANCES_BITS (DIST_MODEL_END / 2)
-+#define FULL_DISTANCES (1 << FULL_DISTANCES_BITS)
-+
-+/*
-+ * For match distances greater than 127, only the highest two bits and the
-+ * lowest four bits (alignment) is encoded using probabilities.
-+ */
-+#define ALIGN_BITS 4
-+#define ALIGN_SIZE (1 << ALIGN_BITS)
-+#define ALIGN_MASK (ALIGN_SIZE - 1)
-+
-+/* Total number of all probability variables */
-+#define PROBS_TOTAL (1846 + LITERAL_CODERS_MAX * LITERAL_CODER_SIZE)
-+
-+/*
-+ * LZMA remembers the four most recent match distances. Reusing these
-+ * distances tends to take less space than re-encoding the actual
-+ * distance value.
-+ */
-+#define REPS 4
-+
-+#endif
-diff --git a/xen/common/xz/private.h b/xen/common/xz/private.h
-new file mode 100644
---- /dev/null
-+++ b/xen/common/xz/private.h
-@@ -0,0 +1,271 @@
-+/*
-+ * Private includes and definitions
-+ *
-+ * Author: Lasse Collin <lasse.collin@tukaani.org>
-+ *
-+ * This file has been put into the public domain.
-+ * You can do whatever you want with this file.
-+ */
-+
-+#ifndef XZ_PRIVATE_H
-+#define XZ_PRIVATE_H
-+
-+#include <xen/kernel.h>
-+#include <asm/byteorder.h>
-+#define get_le32(p) le32_to_cpup((const uint32_t *)(p))
-+
-+#if 1 /* ndef CONFIG_??? */
-+static inline u32 INIT get_unaligned_le32(void *p)
-+{
-+ return le32_to_cpup(p);
-+}
-+
-+static inline void INIT put_unaligned_le32(u32 val, void *p)
-+{
-+ *(__force __le32*)p = cpu_to_le32(val);
-+}
-+#else
-+#include <asm/unaligned.h>
-+
-+static inline u32 INIT get_unaligned_le32(void *p)
-+{
-+ return le32_to_cpu(__get_unaligned(p, 4));
-+}
-+
-+static inline void INIT put_unaligned_le32(u32 val, void *p)
-+{
-+ __put_unaligned(cpu_to_le32(val), p, 4);
-+}
-+#endif
-+
-+#define false 0
-+#define true 1
-+
-+/**
-+ * enum xz_mode - Operation mode
-+ *
-+ * @XZ_SINGLE: Single-call mode. This uses less RAM than
-+ * than multi-call modes, because the LZMA2
-+ * dictionary doesn't need to be allocated as
-+ * part of the decoder state. All required data
-+ * structures are allocated at initialization,
-+ * so xz_dec_run() cannot return XZ_MEM_ERROR.
-+ * @XZ_PREALLOC: Multi-call mode with preallocated LZMA2
-+ * dictionary buffer. All data structures are
-+ * allocated at initialization, so xz_dec_run()
-+ * cannot return XZ_MEM_ERROR.
-+ * @XZ_DYNALLOC: Multi-call mode. The LZMA2 dictionary is
-+ * allocated once the required size has been
-+ * parsed from the stream headers. If the
-+ * allocation fails, xz_dec_run() will return
-+ * XZ_MEM_ERROR.
-+ *
-+ * It is possible to enable support only for a subset of the above
-+ * modes at compile time by defining XZ_DEC_SINGLE, XZ_DEC_PREALLOC,
-+ * or XZ_DEC_DYNALLOC. The xz_dec kernel module is always compiled
-+ * with support for all operation modes, but the preboot code may
-+ * be built with fewer features to minimize code size.
-+ */
-+enum xz_mode {
-+ XZ_SINGLE,
-+ XZ_PREALLOC,
-+ XZ_DYNALLOC
-+};
-+
-+/**
-+ * enum xz_ret - Return codes
-+ * @XZ_OK: Everything is OK so far. More input or more
-+ * output space is required to continue. This
-+ * return code is possible only in multi-call mode
-+ * (XZ_PREALLOC or XZ_DYNALLOC).
-+ * @XZ_STREAM_END: Operation finished successfully.
-+ * @XZ_UNSUPPORTED_CHECK: Integrity check type is not supported. Decoding
-+ * is still possible in multi-call mode by simply
-+ * calling xz_dec_run() again.
-+ * Note that this return value is used only if
-+ * XZ_DEC_ANY_CHECK was defined at build time,
-+ * which is not used in the kernel. Unsupported
-+ * check types return XZ_OPTIONS_ERROR if
-+ * XZ_DEC_ANY_CHECK was not defined at build time.
-+ * @XZ_MEM_ERROR: Allocating memory failed. This return code is
-+ * possible only if the decoder was initialized
-+ * with XZ_DYNALLOC. The amount of memory that was
-+ * tried to be allocated was no more than the
-+ * dict_max argument given to xz_dec_init().
-+ * @XZ_MEMLIMIT_ERROR: A bigger LZMA2 dictionary would be needed than
-+ * allowed by the dict_max argument given to
-+ * xz_dec_init(). This return value is possible
-+ * only in multi-call mode (XZ_PREALLOC or
-+ * XZ_DYNALLOC); the single-call mode (XZ_SINGLE)
-+ * ignores the dict_max argument.
-+ * @XZ_FORMAT_ERROR: File format was not recognized (wrong magic
-+ * bytes).
-+ * @XZ_OPTIONS_ERROR: This implementation doesn't support the requested
-+ * compression options. In the decoder this means
-+ * that the header CRC32 matches, but the header
-+ * itself specifies something that we don't support.
-+ * @XZ_DATA_ERROR: Compressed data is corrupt.
-+ * @XZ_BUF_ERROR: Cannot make any progress. Details are slightly
-+ * different between multi-call and single-call
-+ * mode; more information below.
-+ *
-+ * In multi-call mode, XZ_BUF_ERROR is returned when two consecutive calls
-+ * to XZ code cannot consume any input and cannot produce any new output.
-+ * This happens when there is no new input available, or the output buffer
-+ * is full while at least one output byte is still pending. Assuming your
-+ * code is not buggy, you can get this error only when decoding a compressed
-+ * stream that is truncated or otherwise corrupt.
-+ *
-+ * In single-call mode, XZ_BUF_ERROR is returned only when the output buffer
-+ * is too small or the compressed input is corrupt in a way that makes the
-+ * decoder produce more output than the caller expected. When it is
-+ * (relatively) clear that the compressed input is truncated, XZ_DATA_ERROR
-+ * is used instead of XZ_BUF_ERROR.
-+ */
-+enum xz_ret {
-+ XZ_OK,
-+ XZ_STREAM_END,
-+ XZ_UNSUPPORTED_CHECK,
-+ XZ_MEM_ERROR,
-+ XZ_MEMLIMIT_ERROR,
-+ XZ_FORMAT_ERROR,
-+ XZ_OPTIONS_ERROR,
-+ XZ_DATA_ERROR,
-+ XZ_BUF_ERROR
-+};
-+
-+/**
-+ * struct xz_buf - Passing input and output buffers to XZ code
-+ * @in: Beginning of the input buffer. This may be NULL if and only
-+ * if in_pos is equal to in_size.
-+ * @in_pos: Current position in the input buffer. This must not exceed
-+ * in_size.
-+ * @in_size: Size of the input buffer
-+ * @out: Beginning of the output buffer. This may be NULL if and only
-+ * if out_pos is equal to out_size.
-+ * @out_pos: Current position in the output buffer. This must not exceed
-+ * out_size.
-+ * @out_size: Size of the output buffer
-+ *
-+ * Only the contents of the output buffer from out[out_pos] onward, and
-+ * the variables in_pos and out_pos are modified by the XZ code.
-+ */
-+struct xz_buf {
-+ const uint8_t *in;
-+ size_t in_pos;
-+ size_t in_size;
-+
-+ uint8_t *out;
-+ size_t out_pos;
-+ size_t out_size;
-+};
-+
-+/**
-+ * struct xz_dec - Opaque type to hold the XZ decoder state
-+ */
-+struct xz_dec;
-+
-+/* If no specific decoding mode is requested, enable support for all modes. */
-+#if !defined(XZ_DEC_SINGLE) && !defined(XZ_DEC_PREALLOC) \
-+ && !defined(XZ_DEC_DYNALLOC)
-+# define XZ_DEC_SINGLE
-+# define XZ_DEC_PREALLOC
-+# define XZ_DEC_DYNALLOC
-+#endif
-+
-+/*
-+ * The DEC_IS_foo(mode) macros are used in "if" statements. If only some
-+ * of the supported modes are enabled, these macros will evaluate to true or
-+ * false at compile time and thus allow the compiler to omit unneeded code.
-+ */
-+#ifdef XZ_DEC_SINGLE
-+# define DEC_IS_SINGLE(mode) ((mode) == XZ_SINGLE)
-+#else
-+# define DEC_IS_SINGLE(mode) (false)
-+#endif
-+
-+#ifdef XZ_DEC_PREALLOC
-+# define DEC_IS_PREALLOC(mode) ((mode) == XZ_PREALLOC)
-+#else
-+# define DEC_IS_PREALLOC(mode) (false)
-+#endif
-+
-+#ifdef XZ_DEC_DYNALLOC
-+# define DEC_IS_DYNALLOC(mode) ((mode) == XZ_DYNALLOC)
-+#else
-+# define DEC_IS_DYNALLOC(mode) (false)
-+#endif
-+
-+#if !defined(XZ_DEC_SINGLE)
-+# define DEC_IS_MULTI(mode) (true)
-+#elif defined(XZ_DEC_PREALLOC) || defined(XZ_DEC_DYNALLOC)
-+# define DEC_IS_MULTI(mode) ((mode) != XZ_SINGLE)
-+#else
-+# define DEC_IS_MULTI(mode) (false)
-+#endif
-+
-+/*
-+ * If any of the BCJ filter decoders are wanted, define XZ_DEC_BCJ.
-+ * XZ_DEC_BCJ is used to enable generic support for BCJ decoders.
-+ */
-+#ifndef XZ_DEC_BCJ
-+# if defined(XZ_DEC_X86) || defined(XZ_DEC_POWERPC) \
-+ || defined(XZ_DEC_IA64) || defined(XZ_DEC_ARM) \
-+ || defined(XZ_DEC_ARM) || defined(XZ_DEC_ARMTHUMB) \
-+ || defined(XZ_DEC_SPARC)
-+# define XZ_DEC_BCJ
-+# endif
-+#endif
-+
-+/*
-+ * Allocate memory for LZMA2 decoder. xz_dec_lzma2_reset() must be used
-+ * before calling xz_dec_lzma2_run().
-+ */
-+XZ_EXTERN struct xz_dec_lzma2 *xz_dec_lzma2_create(enum xz_mode mode,
-+ uint32_t dict_max);
-+
-+/*
-+ * Decode the LZMA2 properties (one byte) and reset the decoder. Return
-+ * XZ_OK on success, XZ_MEMLIMIT_ERROR if the preallocated dictionary is not
-+ * big enough, and XZ_OPTIONS_ERROR if props indicates something that this
-+ * decoder doesn't support.
-+ */
-+XZ_EXTERN enum xz_ret xz_dec_lzma2_reset(struct xz_dec_lzma2 *s,
-+ uint8_t props);
-+
-+/* Decode raw LZMA2 stream from b->in to b->out. */
-+XZ_EXTERN enum xz_ret xz_dec_lzma2_run(struct xz_dec_lzma2 *s,
-+ struct xz_buf *b);
-+
-+/* Free the memory allocated for the LZMA2 decoder. */
-+XZ_EXTERN void xz_dec_lzma2_end(struct xz_dec_lzma2 *s);
-+
-+#ifdef XZ_DEC_BCJ
-+/*
-+ * Allocate memory for BCJ decoders. xz_dec_bcj_reset() must be used before
-+ * calling xz_dec_bcj_run().
-+ */
-+XZ_EXTERN struct xz_dec_bcj *xz_dec_bcj_create(bool_t single_call);
-+
-+/*
-+ * Decode the Filter ID of a BCJ filter. This implementation doesn't
-+ * support custom start offsets, so no decoding of Filter Properties
-+ * is needed. Returns XZ_OK if the given Filter ID is supported.
-+ * Otherwise XZ_OPTIONS_ERROR is returned.
-+ */
-+XZ_EXTERN enum xz_ret xz_dec_bcj_reset(struct xz_dec_bcj *s, uint8_t id);
-+
-+/*
-+ * Decode raw BCJ + LZMA2 stream. This must be used only if there actually is
-+ * a BCJ filter in the chain. If the chain has only LZMA2, xz_dec_lzma2_run()
-+ * must be called directly.
-+ */
-+XZ_EXTERN enum xz_ret xz_dec_bcj_run(struct xz_dec_bcj *s,
-+ struct xz_dec_lzma2 *lzma2,
-+ struct xz_buf *b);
-+
-+/* Free the memory allocated for the BCJ filters. */
-+#define xz_dec_bcj_end(s) free(s)
-+#endif
-+
-+#endif
-diff --git a/xen/common/xz/stream.h b/xen/common/xz/stream.h
-new file mode 100644
---- /dev/null
-+++ b/xen/common/xz/stream.h
-@@ -0,0 +1,55 @@
-+/*
-+ * Definitions for handling the .xz file format
-+ *
-+ * Author: Lasse Collin <lasse.collin@tukaani.org>
-+ *
-+ * This file has been put into the public domain.
-+ * You can do whatever you want with this file.
-+ */
-+
-+#ifndef XZ_STREAM_H
-+#define XZ_STREAM_H
-+
-+/*
-+ * See the .xz file format specification at
-+ * http://tukaani.org/xz/xz-file-format.txt
-+ * to understand the container format.
-+ */
-+
-+#define STREAM_HEADER_SIZE 12
-+
-+#define HEADER_MAGIC "\3757zXZ"
-+#define HEADER_MAGIC_SIZE 6
-+
-+#define FOOTER_MAGIC "YZ"
-+#define FOOTER_MAGIC_SIZE 2
-+
-+/*
-+ * Variable-length integer can hold a 63-bit unsigned integer or a special
-+ * value indicating that the value is unknown.
-+ *
-+ * Experimental: vli_type can be defined to uint32_t to save a few bytes
-+ * in code size (no effect on speed). Doing so limits the uncompressed and
-+ * compressed size of the file to less than 256 MiB and may also weaken
-+ * error detection slightly.
-+ */
-+typedef uint64_t vli_type;
-+
-+#define VLI_MAX ((vli_type)-1 / 2)
-+#define VLI_UNKNOWN ((vli_type)-1)
-+
-+/* Maximum encoded size of a VLI */
-+#define VLI_BYTES_MAX (sizeof(vli_type) * 8 / 7)
-+
-+/* Integrity Check types */
-+enum xz_check {
-+ XZ_CHECK_NONE = 0,
-+ XZ_CHECK_CRC32 = 1,
-+ XZ_CHECK_CRC64 = 4,
-+ XZ_CHECK_SHA256 = 10
-+};
-+
-+/* Maximum possible Check ID */
-+#define XZ_CHECK_MAX 15
-+
-+#endif
-diff --git a/xen/include/xen/decompress.h b/xen/include/xen/decompress.h
---- a/xen/include/xen/decompress.h
-+++ b/xen/include/xen/decompress.h
-@@ -31,7 +31,7 @@
- * dependent).
- */
-
--decompress_fn bunzip2, unlzma, unlzo;
-+decompress_fn bunzip2, unxz, unlzma, unlzo;
-
- int decompress(void *inbuf, unsigned int len, void *outbuf); \ No newline at end of file
diff --git a/kernels/xen/proc-xen.mount b/kernels/xen/proc-xen.mount
new file mode 100644
index 000000000..0eaa59c5f
--- /dev/null
+++ b/kernels/xen/proc-xen.mount
@@ -0,0 +1,9 @@
+[Unit]
+Description=Mount /proc/xen files
+ConditionPathExists=/proc/xen
+RefuseManualStop=true
+
+[Mount]
+What=xenfs
+Where=/proc/xen
+Type=xenfs
diff --git a/kernels/xen/texi2html.patch b/kernels/xen/texi2html.patch
new file mode 100644
index 000000000..8f22773c9
--- /dev/null
+++ b/kernels/xen/texi2html.patch
@@ -0,0 +1,10 @@
+--- a/tools/Makefile 2012-09-17 22:25:54.683349679 -0500
++++ b/tools/Makefile 2012-09-17 22:49:08.923331802 -0500
+@@ -164,6 +164,7 @@
+ $(QEMU_ROOT)/xen-setup \
+ --extra-cflags="$(EXTRA_CFLAGS_QEMU_TRADITIONAL)" \
+ $(IOEMU_CONFIGURE_CROSS); \
++ sed -i 's/number[ ]/number-sections /' Makefile; \
+ $(MAKE) install
+
+ subdir-clean-qemu-xen-traditional-dir:
diff --git a/kernels/xen/var-lib-xenstored.mount b/kernels/xen/var-lib-xenstored.mount
new file mode 100644
index 000000000..1c2015ca2
--- /dev/null
+++ b/kernels/xen/var-lib-xenstored.mount
@@ -0,0 +1,10 @@
+[Unit]
+Description=mount xenstore file system
+ConditionPathExists=/proc/xen
+RefuseManualStop=true
+
+[Mount]
+What=xenstore
+Where=/var/lib/xenstored
+Type=tmpfs
+Options=mode=755
diff --git a/kernels/xen/xen.conf b/kernels/xen/xen.conf
new file mode 100644
index 000000000..37a5b59f7
--- /dev/null
+++ b/kernels/xen/xen.conf
@@ -0,0 +1,19 @@
+xen-evtchn
+xen-gntdev
+xen-gntalloc
+xen-blkback
+xen-netback
+xen-pciback
+xen-acpi-processor
+## xen-acpi-processor: This module may not work on all machines; try removing this first if it causes issues.
+
+## The following were included in xencommons, but were not inserted by systemd:
+# evtchn
+# gntdev
+# netbk
+# blkbk
+# xen-scsibk
+# usbbk
+# pciback
+# blktap2
+# blktap
diff --git a/kernels/xen/xen.install b/kernels/xen/xen.install
new file mode 100644
index 000000000..5664948c7
--- /dev/null
+++ b/kernels/xen/xen.install
@@ -0,0 +1,38 @@
+install_msg() {
+ cat << __EOF__
+===> IMPORTANT NOTICE:
+
+In order to complete the installation, and enable Xen,
+at the very least you must:
+1. Edit your GRUB2 config files as specified at
+ https://wiki.archlinux.org/index.php/Xen#Bootloader_Configuration
+2. Issue the following commands to allow you to create and start VMs:
+ systemctl enable xenstored.service
+ systemctl enable xenconsoled.service
+ systemctl enable xendomains.service
+For more information refer to the Wiki:
+ https://wiki.archlinux.org/index.php/Xen
+__EOF__
+
+}
+
+post_upgrade() {
+ install_msg
+}
+
+pre_remove() {
+ for i in xen{stored,consoled,domains}.service; do
+ systemctl disable $serv
+ systemctl stop $serv
+ done
+}
+
+post_remove() {
+ cat << __EOF__
+===> IMPORTANT NOTICE:
+
+In order to finish removing Xen, you will need to modify
+your bootloader configuration files to load your Linux
+kernel instead of Xen kernel.
+__EOF__
+}
diff --git a/kernels/xen/xen.patch b/kernels/xen/xen.patch
deleted file mode 100755
index 8b1b5585d..000000000
--- a/kernels/xen/xen.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- xen-4.0.1.orig/Config.mk 2010-08-25 12:22:44.000000000 +0200
-+++ xen-4.0.1/Config.mk 2010-11-02 23:38:11.575000000 +0100
-@@ -187,4 +187,4 @@
- CONFIG_MINITERM ?= n
- CONFIG_LOMOUNT ?= n
-
---include $(XEN_ROOT)/.config
-+#-include $(XEN_ROOT)/.config
-
---- xen-4.0.1/Config.mk.orig 2010-08-25 11:22:44.000000000 +0100
-+++ xen-4.0.1/Config.mk 2011-01-29 17:40:43.000000000 +0000
-@@ -135,6 +135,8 @@
-
- LDFLAGS += $(foreach i, $(EXTRA_LIB), -L$(i))
- CFLAGS += $(foreach i, $(EXTRA_INCLUDES), -I$(i))
-+# temporary compile fix for rawhide
-+CFLAGS += -Wunused-but-set-variable -Wno-error=unused-but-set-variable -Wuninitialized -Wno-error=uninitialized
-
- EMBEDDED_EXTRA_CFLAGS := -nopie -fno-stack-protector -fno-stack-protector-all
- EMBEDDED_EXTRA_CFLAGS += -fno-exceptions
-
diff --git a/kernels/xen/xenconsoled.service b/kernels/xen/xenconsoled.service
new file mode 100644
index 000000000..edcc8e69f
--- /dev/null
+++ b/kernels/xen/xenconsoled.service
@@ -0,0 +1,18 @@
+[Unit]
+Description=Xenconsoled - handles logging from guest consoles and hypervisor
+Requires=proc-xen.mount
+After=proc-xen.mount xenstored.service
+ConditionPathExists=/proc/xen
+
+[Service]
+Type=simple
+Environment=XENCONSOLED_ARGS=
+Environment=XENCONSOLED_LOG=none
+Environment=XENCONSOLED_LOG_DIR=/var/log/xen/console
+EnvironmentFile=-/etc/conf.d/xenconsoled
+PIDFile=/var/run/xenconsoled.pid
+ExecStartPre=/usr/bin/grep -q control_d /proc/xen/capabilities
+ExecStart=/usr/sbin/xenconsoled --log=${XENCONSOLED_LOG} --log-dir=${XENCONSOLED_LOG_DIR} $XENCONSOLED_ARGS
+
+[Install]
+WantedBy=multi-user.target
diff --git a/kernels/xen/xendomU@.service b/kernels/xen/xendomU@.service
new file mode 100644
index 000000000..57d6e520d
--- /dev/null
+++ b/kernels/xen/xendomU@.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=xen domU service for domain %i
+Requires=xenstored.service
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/usr/sbin/xl create /etc/xen/conf/%i.cfg
+ExecStop=/usr/sbin/xl shutdown %i
+
+[Install]
+WantedBy=multi-user.target
diff --git a/kernels/xen/xendomains.service b/kernels/xen/xendomains.service
new file mode 100644
index 000000000..d49bd5593
--- /dev/null
+++ b/kernels/xen/xendomains.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Xendomains - start and stop guests on boot and shutdown
+Requires=proc-xen.mount xenstored.service
+After=proc-xen.mount xenstored.service xenconsoled.service
+ConditionPathExists=/proc/xen
+
+[Service]
+Type=oneshot
+RemainAfterExit=true
+ExecStartPre=/usr/bin/grep -q control_d /proc/xen/capabilities
+ExecStart=/etc/xen/scripts/xendomains start
+ExecStop=/etc/xen/scripts/xendomains stop
+
+[Install]
+WantedBy=multi-user.target
diff --git a/kernels/xen/xenstored.service b/kernels/xen/xenstored.service
new file mode 100644
index 000000000..9025f2244
--- /dev/null
+++ b/kernels/xen/xenstored.service
@@ -0,0 +1,18 @@
+[Unit]
+Description=Xenstored - daemon managing xenstore file system
+Requires=proc-xen.mount var-lib-xenstored.mount
+After=proc-xen.mount var-lib-xenstored.mount
+Before=libvirtd.service libvirt-guests.service
+RefuseManualStop=true
+ConditionPathExists=/proc/xen
+
+[Service]
+Type=forking
+Environment=XENSTORED_ARGS=
+EnvironmentFile=-/etc/conf.d/xenstored
+PIDFile=/var/run/xenstored.pid
+ExecStartPre=/usr/bin/grep -q control_d /proc/xen/capabilities
+ExecStart=/usr/sbin/xenstored --pid-file /var/run/xenstored.pid $XENSTORED_ARGS
+
+[Install]
+WantedBy=multi-user.target