summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPasi Pentikainen <pasi.a.pentikainen@nokia.com>2011-11-17 13:59:53 (GMT)
committerPasi Pentikainen <pasi.a.pentikainen@nokia.com>2011-11-17 13:59:53 (GMT)
commit12e40dc6350ce37a6108c62d3c954a50df621dbd (patch)
tree0fd5eb966de7b9124c1af2e9355ce8e594ad7b4d /src
parent574464cd7e2940f2dadc4d556e24b944cf222f3d (diff)
parentb0d54f150e9b4211e263b4835dd2c64ac07a8c86 (diff)
downloadQt-12e40dc6350ce37a6108c62d3c954a50df621dbd.zip
Qt-12e40dc6350ce37a6108c62d3c954a50df621dbd.tar.gz
Qt-12e40dc6350ce37a6108c62d3c954a50df621dbd.tar.bz2
Merge remote-tracking branch 'qt/4.8'
Diffstat (limited to 'src')
-rw-r--r--src/3rdparty/webkit/.tag2
-rw-r--r--src/3rdparty/webkit/ChangeLog31
-rwxr-xr-xsrc/3rdparty/webkit/Source/WebCore/ChangeLog38
-rw-r--r--src/3rdparty/webkit/Source/WebCore/WebCore.pro5
-rw-r--r--src/3rdparty/webkit/Source/WebCore/bindings/js/JSExceptionBase.h2
-rw-r--r--src/3rdparty/webkit/Source/WebCore/platform/win/SystemTimeWin.cpp3
-rw-r--r--src/3rdparty/webkit/Source/WebKit.pri9
-rw-r--r--src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp2
-rw-r--r--src/3rdparty/webkit/Source/WebKit/qt/ChangeLog36
-rw-r--r--src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro13
-rw-r--r--src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit-goes-mobile.qdoc191
-rw-r--r--src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit.qdoc3
-rw-r--r--src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/qtwebkit_goes_mobile_snippets.cpp61
-rw-r--r--src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/webelement/main.cpp2
-rw-r--r--src/3rdparty/webkit/VERSION2
-rw-r--r--src/corelib/arch/qatomic_integrity.h7
-rw-r--r--src/corelib/global/qglobal.h2
-rw-r--r--src/corelib/io/qurltlds_p.h12884
-rw-r--r--src/corelib/io/qurltlds_p.h.INFO4
-rw-r--r--src/corelib/kernel/qpointer.cpp2
-rw-r--r--src/corelib/kernel/qtranslator.cpp18
-rw-r--r--src/corelib/tools/qline.cpp9
-rw-r--r--src/corelib/tools/qlist.cpp4
-rw-r--r--src/corelib/tools/qlocale_tools.cpp7
-rw-r--r--src/corelib/tools/qregexp.cpp4
-rw-r--r--src/dbus/qdbuspendingcall.cpp9
-rw-r--r--src/declarative/util/qdeclarativepixmapcache.cpp57
-rw-r--r--src/gui/dialogs/qfiledialog.cpp2
-rw-r--r--src/gui/dialogs/qmessagebox.cpp2
-rw-r--r--src/gui/embedded/qscreenintegrityfb_qws.cpp154
-rw-r--r--src/gui/graphicsview/qgraphicsitem.cpp5
-rw-r--r--src/gui/kernel/qwidget_x11.cpp28
-rw-r--r--src/gui/painting/qpainter.cpp22
-rw-r--r--src/gui/styles/qmacstyle_mac.mm111
-rw-r--r--src/gui/styles/qwindowsstyle.cpp56
-rw-r--r--src/gui/styles/qwindowsstyle_p.h4
-rw-r--r--src/gui/styles/qwindowsvistastyle.cpp1
-rw-r--r--src/gui/text/qfontdatabase.cpp32
-rw-r--r--src/gui/text/qfontdatabase_mac.cpp30
-rw-r--r--src/gui/text/qfontdatabase_x11.cpp1
-rw-r--r--src/gui/text/qfontengine_mac.mm2
-rw-r--r--src/gui/text/qtextcontrol.cpp7
-rw-r--r--src/gui/widgets/qdatetimeedit.cpp2
-rw-r--r--src/gui/widgets/qgroupbox.cpp4
-rw-r--r--src/gui/widgets/qplaintextedit.cpp2
-rw-r--r--src/gui/widgets/qprogressbar.cpp14
-rw-r--r--src/gui/widgets/qvalidator.cpp3
-rw-r--r--src/imports/shaders/shadereffect.cpp4
-rw-r--r--src/network/access/qhttpnetworkconnection.cpp5
-rw-r--r--src/network/access/qhttpnetworkconnectionchannel.cpp2
-rw-r--r--src/network/access/qhttpnetworkreply.cpp6
-rw-r--r--src/network/access/qhttpthreaddelegate.cpp5
-rw-r--r--src/network/access/qnetworkdiskcache.cpp4
-rw-r--r--src/network/socket/qhttpsocketengine.cpp4
-rw-r--r--src/network/ssl/qssl.cpp8
-rw-r--r--src/network/ssl/qssl.h3
-rw-r--r--src/network/ssl/qsslcertificate.cpp3
-rw-r--r--src/network/ssl/qsslconfiguration.cpp2
-rw-r--r--src/network/ssl/qsslconfiguration_p.h3
-rw-r--r--src/network/ssl/qsslsocket_openssl.cpp8
-rw-r--r--src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp4
-rw-r--r--src/opengl/qgl.cpp6
-rw-r--r--src/opengl/qwindowsurface_gl.cpp31
-rw-r--r--src/src.pro2
-rw-r--r--src/xml/sax/qxml.cpp3
65 files changed, 7559 insertions, 6433 deletions
diff --git a/src/3rdparty/webkit/.tag b/src/3rdparty/webkit/.tag
index 34446ae..12a28b8 100644
--- a/src/3rdparty/webkit/.tag
+++ b/src/3rdparty/webkit/.tag
@@ -1 +1 @@
-64cce100215c71575f19ca0b090c65fa97d4ba10
+52a11cec052aa40d3bbc06861be1177b649b4a99
diff --git a/src/3rdparty/webkit/ChangeLog b/src/3rdparty/webkit/ChangeLog
index bc11b4d..bbaf26d 100644
--- a/src/3rdparty/webkit/ChangeLog
+++ b/src/3rdparty/webkit/ChangeLog
@@ -1,3 +1,34 @@
+2011-11-09 Zeno Albisser <zeno.albisser@nokia.com>
+
+ [Qt] Unreviewed: Fix build on Mac.
+ https://bugreports.qt.nokia.com/browse/QTBUG-20619
+
+ This bug was introduced by the previous commit
+ for the same bugreport.
+
+ * Source/WebKit.pri:
+
+2011-11-09 Zeno Albisser <zeno.albisser@nokia.com>
+
+ [Qt] Unreviewed: Fix debug_and_release build on Windows.
+ https://bugreports.qt.nokia.com/browse/QTBUG-20619
+
+ This bug was introduced by the previous commit
+ for the same bugreport.
+
+ * Source/WebKit.pri:
+
+2011-11-03 Zeno Albisser <zeno.albisser@nokia.com>
+
+ [Qt] Unreviewed: Fix universal binary build on Mac.
+ https://bugreports.qt.nokia.com/browse/QTBUG-20619
+
+ When building a universal binary the debug version
+ exceeds the maximum size of a static library.
+ Therefore we do not allow this configuration.
+
+ * Source/WebKit.pri:
+
2011-08-06 Aron Rosenberg <arosenberg@logitech.com>
Reviewed by Benjamin Poulain.
diff --git a/src/3rdparty/webkit/Source/WebCore/ChangeLog b/src/3rdparty/webkit/Source/WebCore/ChangeLog
index da9d1b2..ead97bd 100755
--- a/src/3rdparty/webkit/Source/WebCore/ChangeLog
+++ b/src/3rdparty/webkit/Source/WebCore/ChangeLog
@@ -1,3 +1,41 @@
+2011-11-01 Zeno Albisser <zeno.albisser@nokia.com>
+
+ [Qt] bad codegen, pointer diff in JSC::JSCallbackConstructor::JSCallbackConstructor
+ https://bugs.webkit.org/show_bug.cgi?id=60951
+
+ Adjust symbols visibility for WebCore.
+
+ Reviewed by Simon Hausmann.
+
+ * WebCore.pro:
+
+2011-10-28 Zeno Albisser <zeno.albisser@nokia.com>
+
+ [Qt] Unreviewed: Build fix for MSVC2005
+
+ Patch by Andy Shaw <andy.shaw@digia.com>
+
+ * platform/win/SystemTimeWin.cpp:
+
+2011-10-13 Zeno Albisser <zeno.albisser@nokia.com>
+
+ [Qt] QtWebKit build error for Mac 32bit
+ https://bugs.webkit.org/show_bug.cgi?id=69914
+
+ In WebCore.pro and QtWebKit.pro we define NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES
+ when compiling with ENABLE_VIDEO and with WTF_USE_QTKIT.
+ But this is meant to be defined in NSGeometry.h under certain preconditions.
+ Without setting NS_BUILD_32_LIKE_64 none of these preconditions is
+ met and therefore NSGeometry.h will create several conflicting type definitions.
+
+ With this patch we create consistent definitions again.
+ Due to the order of include files we cannot remove
+ NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES from WebCore.pro.
+
+ Reviewed by Andreas Kling.
+
+ * WebCore.pro:
+
2011-09-12 Adam Klein <adamk@chromium.org>
Fix out-of-bounds access in Gradient::sortStopsIfNecessary
diff --git a/src/3rdparty/webkit/Source/WebCore/WebCore.pro b/src/3rdparty/webkit/Source/WebCore/WebCore.pro
index a305549..ceceee8 100644
--- a/src/3rdparty/webkit/Source/WebCore/WebCore.pro
+++ b/src/3rdparty/webkit/Source/WebCore/WebCore.pro
@@ -7,6 +7,8 @@ include($$PWD/../WebKit.pri)
include($$PWD/WebCore.pri)
include($$PWD/../JavaScriptCore/JavaScriptCore.pri)
+contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
+
TEMPLATE = lib
TARGET = $$WEBCORE_TARGET
CONFIG += staticlib
@@ -2973,6 +2975,9 @@ contains(DEFINES, ENABLE_VIDEO=1) {
platform/mac/WebWindowAnimation.mm
DEFINES+=NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES
+ contains(CONFIG, "x86") {
+ DEFINES+=NS_BUILD_32_LIKE_64
+ }
} else: contains(DEFINES, WTF_USE_GSTREAMER=1) {
HEADERS += \
diff --git a/src/3rdparty/webkit/Source/WebCore/bindings/js/JSExceptionBase.h b/src/3rdparty/webkit/Source/WebCore/bindings/js/JSExceptionBase.h
index a9366ed..7713002 100644
--- a/src/3rdparty/webkit/Source/WebCore/bindings/js/JSExceptionBase.h
+++ b/src/3rdparty/webkit/Source/WebCore/bindings/js/JSExceptionBase.h
@@ -27,7 +27,7 @@
#define JSExceptionBase_h
namespace JSC {
-
+
class JSValue;
} // namespace JSC
diff --git a/src/3rdparty/webkit/Source/WebCore/platform/win/SystemTimeWin.cpp b/src/3rdparty/webkit/Source/WebCore/platform/win/SystemTimeWin.cpp
index 547decc..c40a45a 100644
--- a/src/3rdparty/webkit/Source/WebCore/platform/win/SystemTimeWin.cpp
+++ b/src/3rdparty/webkit/Source/WebCore/platform/win/SystemTimeWin.cpp
@@ -27,6 +27,9 @@
#include "SystemTime.h"
#include <limits>
+#ifndef _WIN32_WINNT
+#define _WIN32_WINNT 0x0500
+#endif
#include <windows.h>
namespace WebCore {
diff --git a/src/3rdparty/webkit/Source/WebKit.pri b/src/3rdparty/webkit/Source/WebKit.pri
index 5bd9577..c469d1a 100644
--- a/src/3rdparty/webkit/Source/WebKit.pri
+++ b/src/3rdparty/webkit/Source/WebKit.pri
@@ -10,6 +10,15 @@ CONFIG(QTDIR_build) {
# Make sure we compile both debug and release on mac when inside Qt.
# This line was extracted from qbase.pri instead of including the whole file
win32|mac:!macx-xcode:CONFIG += debug_and_release
+ # In case we are building a universal binary for Qt, building debug is not
+ # possible because we would exceed the maximum library size for 32bit.
+ mac:contains(QT_CONFIG, x86):contains(QT_CONFIG, x86_64) {
+ CONFIG(debug_and_release)|CONFIG(debug, debug|release) {
+ message(Building a universal binary with debug symbols is not possible. Building release!)
+ CONFIG -= debug_and_release debug
+ CONFIG += release
+ }
+ }
} else {
!CONFIG(release, debug|release) {
OBJECTS_DIR = obj/debug
diff --git a/src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp b/src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp
index b3efe0f..8f0f153 100644
--- a/src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp
+++ b/src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp
@@ -3972,7 +3972,7 @@ quint64 QWebPage::bytesReceived() const
}
/*!
- \since 4.7
+ \since 4.8
\fn void QWebPage::viewportChangeRequested()
Page authors can provide the supplied values by using the viewport meta tag. More information
diff --git a/src/3rdparty/webkit/Source/WebKit/qt/ChangeLog b/src/3rdparty/webkit/Source/WebKit/qt/ChangeLog
index 32428f1..7ba98b8 100644
--- a/src/3rdparty/webkit/Source/WebKit/qt/ChangeLog
+++ b/src/3rdparty/webkit/Source/WebKit/qt/ChangeLog
@@ -1,3 +1,39 @@
+2011-11-03 Jesus Sanchez-Palencia <jesus@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] QtWebKit should have documentation clarifying its mobile features usage
+ https://bugs.webkit.org/show_bug.cgi?id=41465
+
+ Add "QtWebKit Goes Mobile" documentation
+
+ * docs/qtwebkit-goes-mobile.qdoc: Added.
+ * docs/qtwebkit.qdoc: Linked to qtwebkit-goes-mobile documentation
+ * docs/webkitsnippets/qtwebkit_goes_mobile_snippets.cpp: Added.
+
+2011-11-01 Alexis Menard <alexis.menard@openbossa.org>
+
+ Unreviewed Qt documentation fix.
+
+ This signal is Qt 4.8 material.
+
+ * Api/qwebpage.cpp:
+
+2011-10-21 Zeno Albisser <zeno.albisser@nokia.com>
+
+ [Qt] WebKit build does not respect QMAKE_MAC_SDK variable.
+ https://bugs.webkit.org/show_bug.cgi?id=70596
+
+ Instead of only relying on DARWIN_MAJOR_VERSION we also
+ check QMAKE_MAC_SDK. In case QMAKE_MAC_SDK is not defined
+ we are still falling back to DARWIN_MAJOR_VERSION.
+
+ Patch by Andy Shaw <andy.shaw@digia.com>
+
+ Reviewed by Noam Rosenthal.
+
+ * QtWebKit.pro:
+
2011-09-06 Ademar de Souza Reis Jr. <ademar.reis@openbossa.org>
[Qt][Symbian] REGRESSION[94105] DumpRenderTree.exe doesn't build on Symbian
diff --git a/src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro b/src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro
index 41b0d39..197aa98 100644
--- a/src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro
+++ b/src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro
@@ -233,6 +233,9 @@ contains(DEFINES, ENABLE_VIDEO=1) {
$$SOURCE_DIR/../WebKitLibraries/
DEFINES+=NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES
+ contains(CONFIG, "x86") {
+ DEFINES+=NS_BUILD_32_LIKE_64
+ }
HEADERS += $$PWD/WebCoreSupport/WebSystemInterface.h \
$$PWD/WebCoreSupport/QTKitFullScreenVideoHandler.h
@@ -244,12 +247,12 @@ contains(DEFINES, ENABLE_VIDEO=1) {
# We can know the Mac OS version by using the Darwin major version
DARWIN_VERSION = $$split(QMAKE_HOST.version, ".")
DARWIN_MAJOR_VERSION = $$first(DARWIN_VERSION)
- equals(DARWIN_MAJOR_VERSION, "11") {
- LIBS += $$SOURCE_DIR/../WebKitLibraries/libWebKitSystemInterfaceLion.a
- } else:equals(DARWIN_MAJOR_VERSION, "10") {
- LIBS += $$SOURCE_DIR/../WebKitLibraries/libWebKitSystemInterfaceSnowLeopard.a
- } else:equals(DARWIN_MAJOR_VERSION, "9") {
+ equals(DARWIN_MAJOR_VERSION, "9") | contains(QMAKE_MAC_SDK, "/Developer/SDKs/MacOSX10.5.sdk") {
LIBS += $$SOURCE_DIR/../WebKitLibraries/libWebKitSystemInterfaceLeopard.a
+ } else: equals(DARWIN_MAJOR_VERSION, "10") | contains(QMAKE_MAC_SDK, "/Developer/SDKs/MacOSX10.6.sdk") {
+ LIBS += $$SOURCE_DIR/../WebKitLibraries/libWebKitSystemInterfaceSnowLeopard.a
+ } else: equals(DARWIN_MAJOR_VERSION, "11") | contains(QMAKE_MAC_SDK, "/Developer/SDKs/MacOSX10.7.sdk") {
+ LIBS += $$SOURCE_DIR/../WebKitLibraries/libWebKitSystemInterfaceLion.a
}
}
}
diff --git a/src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit-goes-mobile.qdoc b/src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit-goes-mobile.qdoc
new file mode 100644
index 0000000..40144d1
--- /dev/null
+++ b/src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit-goes-mobile.qdoc
@@ -0,0 +1,191 @@
+/*!
+ \inmodule QtWebKit
+ \page qtwebkit-goes-mobile.html
+ \title QtWebKit Goes Mobile
+ \contentspage QtWebKit
+ \section1 Overview
+
+ A lot of effort has been put into QtWebKit to make it attractive for
+ use on mobile devices.
+
+ The goal of this tutorial is to help you understand the mobile
+ features and how to make the best of them, in other words, how to
+ create a good mobile web view that can be used on touch devices.
+
+ If you want to target mobile devices you should consider using \l{QGraphicsWebView}
+ instead of \l{QWebView}. Since \l{QWebView} is based on the \l{QWidget}
+ system, it cannot easily support rotation, overlays, hardware accelerated
+ compositing and tiling. If you need a \l{QWidget} anyway, you can always
+ construct a \l{QGraphicsView} (which is a \l{QWidget}) with a \l{QGraphicsWebView} inside.
+
+ So let's start with a very simple \l{QGraphicsWebView} based "browser":
+
+ \snippet webkitsnippets/qtwebkit_goes_mobile_snippets.cpp 0
+
+ Here we set up a \l{QGraphicsView} application and add a
+ \l{QGraphicsWebView} to the scene. Notice
+ that we're disabling the scrollbars on the QGraphicsView because QtWebKit
+ handles scrolling and scrollbars automatically. This is to allow scrolling
+ optimizations and to enable web authors to interact with the scrollbars,
+ for instance, to style them differently.
+
+ On touch-based mobile devices a feature known as tiling is often used. It
+ is used due to the interaction model (touch) as well as a scrolling
+ optimization. With this optimization we will have to deal with scrolling
+ ourselves, and we will have to disable features like scroll bar styling.
+ This is not usually a problem, since mobile browsers do not usually show
+ scroll bars, but use scroll indicators instead.
+
+ Tiling basically means that the contents of the viewport is separated into
+ a grid of tiles, so that when you update an area, instead of just updating
+ the area, you actually update the whole tile or sub-regions of it.
+ This offers a few advantages for scrolling as, when you scroll, you do not need
+ to repaint the new visible area for each scroll step, but you simply update a row
+ of tiles each time; these tiles are often only partly on the screen.
+ This minimizes all the painting calls that we have to do and enables kinetic scrolling.
+
+ Loading, rendering, and laying out are blocking operations. Though barely
+ noticeable on desktop machines, these operations can block for a long time
+ on a mobile device, letting the user believe the application has become
+ unresponsive. Additionally, scrolling will also stall when the user uses
+ his fingers to scroll, leading to a bad user experience.
+
+ One way to overcome this issue, is to do all loading, laying out and
+ painting (basically all non-UI related work) in another thread or process, and
+ just blit the result from the web process/thread to the UI. There is research
+ in progress to enable this for a future version of QtWebKit, using WebKit2, but for now,
+ freezing the backing store can help when performing a zooming operation, for instance.
+ This will be discussed later, in the \l{#Enabling the Tiling}{Enabling the Tiling} section.
+
+ When using tiles, you can blit any tile available when scrolling. When no tile is available you
+ can show a checkerboard tile instead, not letting the scrolling wait for the
+ tiles to be updated. This results in a responsive interface, with the only
+ disadvantage that you might see checkerboard tiles from time to time.
+
+ The use of tiles also helps with zooming. Repainting at each zoom level change during
+ a zoom animation is basically impossible on a mobile device (or desktop for
+ that matter) and thus, with tiling, you can stop the tiles from being updated and
+ just scale the existing tiles. Then, at the end of the animation, update
+ tiles on top of the scaled ones. For now we will ignore the blocking
+ issue and concentrate on the tiling and the interaction model.
+ More information about Tiling can be found here: \l{http://doc.qt.nokia.com/4.7/qwebsettings.html#WebAttribute-enum} (see the entry for TiledBackingStoreEnabled).
+
+
+ \section1 Resize to Contents
+
+ When using tiling, we want the \l{QGraphicsWebView} to act as our
+ content, as it supports tiling. In order for this we need to make it
+ resize itself to the size of its contents. For this we will use
+ \l{QGraphicsWebView::resizesToContents}.
+
+ This setting removes the scroll bars for us on the main frame and
+ makes our \l{QGraphicsWebView} resize itself to the size of its content.
+
+ Enabling it is as easy as setting the property:
+
+ \snippet webkitsnippets/qtwebkit_goes_mobile_snippets.cpp 1
+
+ The property should be used in conjunction with the
+ QWebPage::preferredContentsSize property. If not explicitly set,
+ it is automatically set to a reasonable value.
+
+ If we expand our mobile web view to the size of the contents
+ of its contained page, the view will be bigger than the device screen.
+
+
+ \section1 Using a View as the Window onto the Contents
+
+ The idea is to have a custom widget which has a \l{QGraphicsWebView} as a
+ class member. Remember that the QGraphicsWebView will be as big as its
+ content's size, so this custom widget will serve as a viewport onto the
+ web view.
+
+ The following code snippet illustrates this:
+
+ \snippet webkitsnippets/qtwebkit_goes_mobile_snippets.cpp 2
+
+ In order to properly handle mouse events, you must install an event filter
+ on the web view or stack it behind its parent object
+ (\l{QGraphicsItem::ItemStacksBehindParent}). By doing this the mouse events will
+ reach a \c{MobileWebView} instance before they reach the member
+ \l{QGraphicsWebView}. Keep in mind that you'll need to add some logic in order
+ to distinguish between different mouse events and gestures, such as a
+ single click, double click and click-and-pan. Besides, scrolling and
+ zooming will have to be implemented manually.
+
+
+ \section1 Adjusting How Contents are Laid Out
+
+ When testing the above on a device, you will notice that many pages are not
+ laid out very nicely. In particular, the width of the content may be larger
+ than the width of the device. This is due to the way web contents are laid
+ out. First, the viewport width is used for fitting the contents. If the
+ contents do not fit due to a non-flexible element with a width larger than
+ the viewport width, the minimum possible width will be used. As most pages
+ are written with a desktop browser in mind, that makes only very few sites
+ fit into the width of a mobile device.
+
+ QtWebKit has a way to force a layout to a given width or height. What really
+ matters here is the width. If you lay out a page to a given width, it will get
+ that width and images might be cropped. The width or height is also used for
+ laying out fixed elements, but when we resize the \l{QGraphicsWebView} to the
+ size of the contents, fixed elements will not be relative to the view, which is
+ the behavior found on most mobile browsers.
+
+ We saw that the QWebPage::preferredContentsSize property is automatically set
+ to a reasonable value when using \l{QGraphicsWebView::resizesToContents}.
+
+ As you can imagine, laying out with a smaller viewport can cause pages to
+ break, therefore a default value has been chosen so that it almost breaks no
+ pages while still making pages fit. This value is 960x800. If the device
+ has a greater resolution, this value can be changed like this:
+
+ \snippet webkitsnippets/qtwebkit_goes_mobile_snippets.cpp 3
+
+ You can play around with this and find a suitable size for your device,
+ but we will keep the default size for now.
+
+
+ \section1 The 'viewport' Meta-Tag
+
+ As some sites do not work with 960 pixels width or want to have control of
+ how the page is laid out, QtWebKit, Android, Firefox Mobile and
+ the iPhone Safari browser support a meta-tag called \c viewport. This makes
+ it possible for a web page to let the browser know how it wants to be shown.
+ More info can be found in the
+ \l{http://developer.apple.com/safari/library/documentation/appleapplications/reference/safariwebcontent/usingtheviewport/usingtheviewport.html}{Safari Developer Library}.
+
+ You must connect the signal \c{QWebPage::viewportChangeRequested(const
+ QWebPage::ViewportHints& hints)} to a slot of your mobile web view and use what
+ is provided by \l{QWebPage::ViewportHints} to update your viewport size, scale
+ range, and so on.
+
+
+ \section1 Enabling the Tiling
+
+ We haven't actually enabled tiling yet, so let's go ahead and do that. That
+ is very simple as it is basically a setting:
+
+ \snippet webkitsnippets/qtwebkit_goes_mobile_snippets.cpp 4
+
+ Note that, if you are going to add animations to your zooming or scaling
+ operations or want to implement fancy kinetic scrolling you might want to
+ take a look at \l{QGraphicsWebView::setTiledBackingStoreFrozen()}. With this,
+ you can avoid updates to your tiles during an animation, for instance.
+
+
+ \section1 Avoiding Scrollable Subelements
+
+ One big issue with the above is that, iframes and sites using frames can
+ contain scrollable subelements. That doesn't work well with the touch
+ interaction model, as you want a finger swipe to scroll the whole page and not
+ end up just scrolling a subframe. Most mobile browsers work around this by
+ enabling something called frame flattening. Going straight to the point:
+
+ \snippet webkitsnippets/qtwebkit_goes_mobile_snippets.cpp 5
+
+ This will make all frames from a web page expand themselves to the size of
+ their contents, keeping us free of scrollable subareas.
+
+
+*/
diff --git a/src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit.qdoc b/src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit.qdoc
index 1e76901..710d194 100644
--- a/src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit.qdoc
+++ b/src/3rdparty/webkit/Source/WebKit/qt/docs/qtwebkit.qdoc
@@ -29,6 +29,9 @@
made fully editable to the user through the use of the \c{contenteditable}
attribute on HTML elements.
+ QtWebKit has been enhanced to become more attractive on the mobile front as well.
+ For more information see \l{QtWebKit Goes Mobile}.
+
QtWebKit is based on the Open Source WebKit engine. More information about
WebKit itself can be found on the \l{WebKit Open Source Project} Web site.
diff --git a/src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/qtwebkit_goes_mobile_snippets.cpp b/src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/qtwebkit_goes_mobile_snippets.cpp
new file mode 100644
index 0000000..8126fbf
--- /dev/null
+++ b/src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/qtwebkit_goes_mobile_snippets.cpp
@@ -0,0 +1,61 @@
+#if 0
+// ! [0]
+int main(int argc, char **argv)
+{
+ QApplication app(argc, argv);
+ const int width = 640;
+ const int height = 480;
+
+ QGraphicsScene scene;
+
+ QGraphicsView view(&scene);
+ view.setFrameShape(QFrame::NoFrame);
+ view.setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ view.setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+
+ QGraphicsWebView webview;
+ webview.resize(width, height);
+ webview.load(QUrl("http://doc.qt.nokia.com/"));
+
+ scene.addItem(&webview);
+
+ view.resize(width, height);
+ view.show();
+
+ return app.exec();
+}
+// ! [0]
+
+
+// ! [1]
+webview.setResizesToContents(true);
+// ! [1]
+
+// ! [2]
+class MobileWebView : public QGraphicsWidget {
+ Q_OBJECT
+public:
+ MobileWebView(QGraphicsItem *parent = 0);
+ ~MobileWebView();
+
+ bool mousePress(const QPoint &value);
+ void mouseMove(const QPoint &value);
+ void mouseRelease(const QPoint &value);
+
+private:
+ QGraphicsWebView* webView;
+};
+// ! [2]
+
+// ! [3]
+webview.page()->setPreferredContentsSize(QSize(desiredWidth, desiredHeight));
+// ! [3]
+
+// ! [4]
+QWebSettings::globalSettings()->setAttribute(QWebSettings::TiledBackingStoreEnabled, true);
+// ! [4]
+
+// ! [5]
+QWebSettings::globalSettings()->setAttribute(QWebSettings::FrameFlatteningEnable, true);
+// ! [5]
+#endif
diff --git a/src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/webelement/main.cpp b/src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/webelement/main.cpp
index b1781a6..59c124c 100644
--- a/src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/webelement/main.cpp
+++ b/src/3rdparty/webkit/Source/WebKit/qt/docs/webkitsnippets/webelement/main.cpp
@@ -57,7 +57,7 @@ static void findButtonAndClick()
*/
QWebElement button = document.findFirst("input[type=submit]");
- button.evaluateJavaScript("click()");
+ button.evaluateJavaScript("this.click()");
//! [Calling a DOM element method]
diff --git a/src/3rdparty/webkit/VERSION b/src/3rdparty/webkit/VERSION
index 6a40345..750e7e7 100644
--- a/src/3rdparty/webkit/VERSION
+++ b/src/3rdparty/webkit/VERSION
@@ -4,4 +4,4 @@ This is a snapshot of the Qt port of WebKit from
and has the sha1 checksum
- 64cce100215c71575f19ca0b090c65fa97d4ba10
+ 52a11cec052aa40d3bbc06861be1177b649b4a99
diff --git a/src/corelib/arch/qatomic_integrity.h b/src/corelib/arch/qatomic_integrity.h
index f957297..c72a48d 100644
--- a/src/corelib/arch/qatomic_integrity.h
+++ b/src/corelib/arch/qatomic_integrity.h
@@ -203,7 +203,7 @@ inline int QBasicAtomicInt::fetchAndAddRelease(int valueToAdd)
template <typename T>
Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::testAndSetOrdered(T *expectedValue, T *newValue)
{
- return TestAndSet((Address*)&_q_value, qt_addr(expectedValue), qt_addr(newValue)) == Success;
+ return TestAndSet(reinterpret_cast<Address *>(const_cast<T **>(&_q_value)), qt_addr(expectedValue), qt_addr(newValue)) == Success;
}
template <typename T>
@@ -231,7 +231,7 @@ Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndStoreOrdered(T *newValue)
{
Address old_val;
do {
- old_val = *reinterpret_cast<Address *>(const_cast<T *>(newValue));
+ old_val = *reinterpret_cast<Address *>(const_cast<T *>(_q_value));
} while (TestAndSet(reinterpret_cast<Address *>(const_cast<T **>(&_q_value)), old_val, qt_addr(newValue)) != Success);
return reinterpret_cast<T *>(old_val);
}
@@ -259,7 +259,8 @@ Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndStoreRelease(T *newValue)
template <typename T>
Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddOrdered(qptrdiff valueToAdd)
{
- AtomicModify(qt_p2addr(&_q_value), qt_addr(_q_value), qt_addr(_q_value) + valueToAdd * sizeof(T));
+ Address old_value;
+ AtomicModify(reinterpret_cast<volatile Address*>(&_q_value), &old_value, 0, valueToAdd * sizeof(T));
return _q_value;
}
diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h
index cfe5eea..e8c611b 100644
--- a/src/corelib/global/qglobal.h
+++ b/src/corelib/global/qglobal.h
@@ -1824,7 +1824,7 @@ inline T *q_check_ptr(T *p) { Q_CHECK_PTR(p); return p; }
#elif defined(_MSC_VER)
# define Q_FUNC_INFO __FUNCSIG__
#else
-# if defined(Q_OS_SOLARIS) || defined(Q_CC_XLC) || defined(Q_OS_SYMBIAN)
+# if defined(Q_OS_SOLARIS) || defined(Q_CC_XLC) || defined(Q_OS_SYMBIAN) || defined(Q_OS_INTEGRITY)
# define Q_FUNC_INFO __FILE__ "(line number unavailable)"
# else
/* These two macros makes it possible to turn the builtin line expander into a
diff --git a/src/corelib/io/qurltlds_p.h b/src/corelib/io/qurltlds_p.h
index f4f525c..a6590a8 100644
--- a/src/corelib/io/qurltlds_p.h
+++ b/src/corelib/io/qurltlds_p.h
@@ -59,6421 +59,6993 @@ QT_BEGIN_NAMESPACE
// for instructions see the program at
// util/corelib/qurl-generateTLDs
-static const quint16 tldCount = 3949;
+static const quint16 tldCount = 4287;
static const quint16 tldIndices[] = {
0,
-7,
-14,
-14,
-20,
-51,
+18,
+39,
61,
-93,
-100,
-100,
-116,
+68,
+78,
+78,
+99,
+99,
+112,
+125,
159,
-167,
-180,
-180,
-193,
-234,
-234,
-234,
-255,
-255,
-255,
-280,
-280,
-287,
-287,
-295,
-303,
-313,
-326,
-326,
+173,
+226,
+233,
+233,
+233,
+240,
+271,
+278,
+278,
+290,
+307,
+314,
+321,
+340,
+349,
+364,
380,
-393,
-413,
-419,
-419,
-419,
-424,
-438,
-438,
-469,
-515,
-515,
-515,
-534,
-534,
-557,
-557,
-557,
-557,
-572,
-572,
-572,
-579,
+403,
+433,
+440,
+447,
+454,
+480,
+480,
+490,
+530,
+540,
+547,
+554,
587,
-597,
-612,
-612,
-624,
-636,
-648,
-662,
-687,
-709,
-714,
-740,
-766,
-789,
-789,
-805,
-805,
-810,
-815,
-815,
-824,
-824,
-831,
-857,
+626,
+633,
+641,
+641,
+641,
+654,
+670,
+677,
+677,
+684,
+713,
+720,
+734,
+734,
+753,
+765,
+792,
+809,
+816,
+830,
+837,
+852,
869,
-891,
-891,
-916,
-916,
-916,
-927,
-934,
-964,
-971,
-987,
-987,
-987,
-1008,
-1008,
-1016,
-1016,
+892,
+912,
+918,
+949,
+967,
+1005,
1030,
-1030,
-1052,
-1075,
-1075,
-1082,
-1087,
-1115,
-1135,
-1135,
-1135,
-1172,
-1178,
-1178,
-1178,
-1202,
-1207,
-1220,
-1220,
-1266,
-1266,
-1266,
-1266,
-1272,
-1290,
-1316,
-1316,
-1332,
-1332,
-1339,
-1339,
-1352,
-1352,
-1389,
-1389,
-1408,
-1415,
-1437,
-1444,
-1489,
-1489,
-1502,
-1502,
-1512,
-1518,
-1539,
+1037,
+1037,
+1046,
+1053,
+1066,
+1073,
+1073,
+1080,
+1088,
+1132,
+1146,
+1167,
+1167,
+1167,
+1174,
+1190,
+1197,
+1197,
+1204,
+1226,
+1256,
+1283,
+1295,
+1295,
+1312,
+1312,
+1312,
+1329,
+1329,
+1350,
+1350,
+1378,
+1400,
+1400,
+1407,
+1433,
+1447,
+1462,
+1479,
+1479,
+1488,
+1513,
+1520,
+1534,
+1534,
+1534,
+1534,
+1534,
+1545,
1555,
-1562,
-1584,
-1598,
-1607,
-1607,
-1607,
-1632,
-1652,
-1652,
-1658,
-1658,
-1675,
-1682,
-1709,
-1733,
-1748,
-1776,
-1783,
-1783,
-1790,
-1797,
-1826,
-1850,
-1850,
-1856,
-1880,
-1887,
-1901,
-1921,
-1947,
-1961,
-1967,
-1967,
-1967,
-1972,
-1986,
-1986,
-1986,
-2009,
-2029,
-2029,
-2047,
-2061,
-2075,
-2075,
-2075,
-2075,
-2075,
-2075,
-2082,
-2082,
-2124,
-2124,
-2129,
-2162,
-2162,
-2162,
-2236,
-2256,
-2263,
-2276,
-2283,
-2313,
-2313,
-2347,
-2380,
-2387,
-2387,
-2387,
-2431,
-2438,
-2445,
-2452,
-2459,
-2459,
-2469,
+1565,
+1572,
+1582,
+1604,
+1634,
+1646,
+1646,
+1686,
+1686,
+1699,
+1722,
+1729,
+1754,
+1772,
+1787,
+1787,
+1787,
+1794,
+1805,
+1812,
+1819,
+1840,
+1868,
+1875,
+1889,
+1896,
+1912,
+1933,
+1964,
+1984,
+1984,
+1995,
+2002,
+2016,
+2016,
+2023,
+2023,
+2030,
+2043,
+2043,
+2043,
+2067,
+2104,
+2118,
+2134,
+2144,
+2151,
+2197,
+2211,
+2252,
+2282,
+2296,
+2303,
+2326,
+2345,
+2345,
+2363,
+2414,
+2426,
+2435,
+2449,
+2449,
+2449,
+2463,
+2473,
+2473,
+2473,
+2473,
2490,
-2516,
-2527,
-2540,
-2540,
-2586,
-2610,
-2630,
-2630,
-2653,
-2660,
-2669,
-2693,
-2693,
-2710,
-2710,
-2719,
-2719,
-2734,
-2740,
-2740,
-2753,
-2753,
-2763,
-2770,
-2775,
-2782,
-2789,
-2802,
-2820,
-2827,
-2827,
-2841,
-2855,
-2855,
-2865,
-2872,
-2884,
-2884,
-2919,
-2937,
-2955,
+2496,
+2509,
+2509,
+2568,
+2583,
+2583,
+2590,
+2599,
+2627,
+2635,
+2642,
+2682,
+2682,
+2689,
+2696,
+2696,
+2724,
+2771,
+2786,
+2805,
+2842,
+2858,
+2858,
+2873,
+2880,
+2887,
+2896,
+2896,
+2917,
+2923,
+2923,
+2936,
+2936,
+2936,
2962,
-3012,
-3042,
-3073,
-3083,
-3083,
-3100,
-3105,
-3112,
-3131,
-3131,
-3166,
-3180,
-3187,
-3194,
-3211,
-3218,
-3223,
-3233,
-3249,
-3259,
-3268,
-3314,
-3314,
-3324,
-3324,
-3336,
-3336,
-3336,
-3336,
-3350,
-3363,
-3376,
+2969,
+2982,
+2998,
+2998,
+3005,
+3019,
+3019,
+3075,
+3124,
+3124,
+3134,
+3134,
+3134,
+3134,
+3159,
+3169,
+3169,
+3176,
+3200,
+3207,
+3214,
+3238,
+3269,
+3294,
+3309,
+3323,
+3332,
+3332,
+3358,
+3383,
+3398,
3398,
-3416,
-3445,
-3464,
-3488,
-3488,
-3497,
-3545,
-3552,
-3552,
-3552,
-3566,
-3573,
-3573,
-3573,
-3581,
-3581,
-3603,
-3603,
-3615,
-3621,
-3621,
-3683,
-3683,
-3710,
-3710,
-3716,
-3716,
-3748,
-3770,
-3791,
+3428,
+3449,
+3459,
+3485,
+3504,
+3504,
+3511,
+3542,
+3542,
+3542,
+3584,
+3606,
+3625,
+3633,
+3642,
+3651,
+3658,
+3665,
+3671,
+3690,
+3690,
+3690,
+3707,
+3728,
+3737,
+3750,
+3772,
+3772,
+3786,
3803,
-3810,
-3817,
-3833,
-3846,
-3846,
-3852,
-3876,
+3811,
+3811,
+3834,
+3842,
3876,
-3882,
-3903,
-3910,
-3939,
-3939,
-3939,
+3899,
+3909,
+3916,
+3916,
3947,
-3962,
-3962,
-3981,
-3994,
-4021,
-4030,
-4042,
-4085,
-4085,
-4096,
+3947,
+3947,
+3947,
+3960,
+3978,
+3978,
+3995,
+3995,
+4026,
+4026,
+4049,
+4055,
+4055,
+4062,
+4073,
+4073,
+4073,
+4073,
+4090,
4096,
-4104,
-4123,
-4123,
-4123,
+4102,
+4102,
+4137,
4143,
-4154,
-4164,
+4143,
+4150,
+4150,
+4163,
+4182,
+4194,
4194,
4194,
4194,
-4205,
-4205,
-4222,
-4238,
-4301,
-4309,
-4322,
-4331,
-4331,
-4331,
-4331,
-4331,
-4347,
-4365,
-4375,
-4375,
-4385,
+4194,
+4194,
+4194,
+4246,
+4250,
+4250,
+4250,
+4250,
+4261,
+4275,
+4282,
+4282,
+4282,
+4282,
+4321,
+4334,
+4334,
+4344,
+4360,
+4369,
+4384,
+4398,
4398,
-4412,
-4430,
-4430,
-4437,
-4447,
-4463,
-4472,
-4472,
-4472,
-4484,
-4484,
-4484,
-4484,
-4484,
-4490,
-4490,
-4511,
-4511,
-4522,
-4522,
-4522,
-4522,
-4528,
-4528,
+4420,
+4420,
+4432,
+4432,
+4445,
+4445,
+4445,
+4445,
+4445,
+4445,
+4459,
+4483,
+4513,
+4513,
+4523,
+4523,
4534,
-4551,
-4551,
-4551,
-4564,
-4583,
-4583,
-4611,
-4611,
-4611,
-4622,
-4622,
-4649,
-4668,
-4677,
-4692,
-4692,
-4692,
-4705,
-4723,
-4723,
-4723,
-4729,
-4729,
-4743,
-4743,
-4750,
-4750,
-4763,
-4770,
-4776,
-4776,
-4776,
-4793,
-4811,
-4811,
-4811,
-4821,
-4821,
-4841,
-4857,
-4891,
-4897,
-4903,
-4903,
-4903,
-4919,
+4552,
+4563,
+4574,
+4581,
+4581,
+4581,
+4581,
+4581,
+4581,
+4593,
+4593,
+4593,
+4593,
+4593,
+4593,
+4605,
+4605,
+4605,
+4605,
+4639,
+4653,
+4661,
+4675,
+4675,
+4688,
+4711,
+4738,
+4748,
+4748,
+4748,
+4748,
+4754,
+4766,
+4779,
+4806,
+4816,
+4831,
+4855,
+4894,
+4905,
+4905,
+4905,
4935,
-4942,
-4958,
-4958,
-4975,
-4975,
-4975,
-4985,
-4985,
+4935,
+4943,
+4943,
+4943,
+4964,
+4984,
+5009,
+5020,
5020,
-5032,
-5032,
+5034,
5040,
-5053,
-5068,
-5079,
-5079,
-5101,
-5115,
-5115,
-5135,
-5154,
-5161,
-5161,
-5168,
-5168,
-5184,
-5210,
-5210,
-5238,
-5255,
-5278,
+5040,
+5056,
+5056,
+5056,
+5065,
+5075,
+5075,
+5092,
+5114,
+5130,
+5130,
+5130,
+5130,
+5130,
+5179,
+5179,
+5179,
+5179,
+5179,
+5179,
+5195,
+5203,
+5203,
+5203,
+5217,
+5231,
+5231,
+5263,
+5285,
5285,
-5308,
-5318,
-5327,
-5327,
-5333,
-5333,
-5340,
-5348,
-5355,
-5366,
-5377,
-5384,
-5408,
-5415,
-5422,
-5435,
-5442,
-5482,
-5482,
-5482,
-5482,
-5498,
+5285,
+5294,
+5300,
+5300,
+5307,
+5307,
+5307,
+5307,
+5307,
+5317,
+5317,
+5329,
+5354,
+5354,
+5372,
+5403,
+5403,
+5427,
+5436,
+5436,
+5436,
+5436,
+5469,
+5469,
+5488,
+5488,
+5504,
+5504,
5527,
-5534,
-5541,
-5572,
-5572,
-5572,
-5579,
-5591,
-5602,
-5602,
-5621,
-5621,
-5646,
-5664,
-5671,
-5671,
-5681,
+5538,
+5538,
+5538,
+5558,
+5580,
+5630,
+5630,
+5630,
+5638,
+5638,
+5667,
5696,
-5707,
-5716,
-5716,
-5723,
-5723,
-5732,
-5742,
-5742,
-5763,
-5770,
-5776,
-5790,
+5696,
+5696,
+5696,
+5713,
+5713,
+5752,
+5767,
5790,
-5797,
-5806,
-5816,
-5832,
-5882,
-5882,
-5882,
-5882,
-5893,
-5934,
-5934,
-5965,
-5965,
-5980,
-5980,
-5980,
-5980,
-6007,
-6017,
-6034,
-6051,
-6065,
-6075,
-6075,
-6091,
-6097,
-6097,
-6109,
-6109,
-6109,
-6122,
-6147,
-6168,
-6168,
-6191,
-6191,
-6191,
-6191,
-6191,
-6198,
-6217,
-6224,
-6224,
-6231,
-6245,
+5828,
+5828,
+5828,
+5874,
+5880,
+5880,
+5880,
+5892,
+5892,
+5911,
+5911,
+5920,
+5931,
+5944,
+5949,
+5949,
+5949,
+5949,
+5949,
+5949,
+5956,
+5956,
+5966,
+5975,
+5975,
+5985,
+5985,
+6014,
+6023,
+6041,
+6067,
+6078,
+6078,
+6078,
+6092,
+6092,
+6103,
+6103,
+6103,
+6119,
+6136,
+6177,
+6177,
+6177,
+6186,
+6186,
+6221,
+6228,
+6228,
+6228,
+6237,
+6237,
6252,
6252,
-6270,
-6270,
-6284,
-6305,
-6315,
+6261,
+6261,
+6272,
+6291,
+6291,
+6291,
+6291,
+6302,
+6302,
+6312,
6322,
-6322,
-6322,
-6329,
-6329,
-6329,
-6353,
-6361,
-6361,
-6375,
-6391,
-6405,
-6405,
-6415,
-6431,
-6431,
-6431,
-6431,
-6458,
-6475,
-6475,
-6475,
+6346,
+6366,
+6385,
+6413,
+6413,
+6449,
+6449,
+6459,
6482,
-6489,
-6496,
-6496,
-6503,
-6520,
-6520,
-6520,
-6527,
-6527,
-6544,
-6561,
-6573,
-6573,
+6493,
+6493,
+6517,
+6525,
+6552,
+6552,
6580,
-6580,
-6587,
-6587,
-6592,
-6592,
-6592,
-6592,
-6599,
-6599,
-6612,
-6633,
-6649,
-6649,
-6669,
-6676,
-6683,
-6683,
-6713,
-6720,
-6727,
-6736,
-6736,
-6746,
-6770,
-6807,
-6814,
-6827,
-6846,
-6846,
-6864,
-6864,
-6864,
-6864,
-6881,
-6888,
-6888,
-6888,
-6914,
-6935,
-6935,
-6935,
-6953,
-6959,
-6966,
+6586,
+6618,
+6653,
+6687,
+6687,
+6687,
+6687,
+6687,
+6717,
+6737,
+6737,
+6737,
+6737,
+6737,
+6741,
+6741,
+6741,
+6741,
+6741,
+6741,
+6748,
+6748,
+6748,
+6748,
+6748,
+6781,
+6801,
+6801,
+6801,
+6808,
+6826,
+6833,
+6850,
+6861,
+6861,
+6875,
+6911,
+6911,
+6911,
+6911,
+6911,
+6928,
+6928,
+6940,
+6951,
+6956,
+6970,
6983,
6983,
6983,
-7013,
-7023,
-7023,
-7023,
-7023,
-7037,
-7044,
-7058,
-7079,
-7086,
-7123,
-7134,
-7155,
-7168,
+7002,
+7010,
+7026,
+7026,
+7035,
+7035,
+7051,
+7051,
+7065,
+7065,
+7076,
+7076,
+7076,
+7104,
+7104,
+7104,
+7157,
+7178,
7178,
-7203,
-7227,
-7236,
+7178,
+7178,
+7210,
+7210,
+7223,
7258,
-7265,
-7274,
-7274,
-7303,
-7303,
-7314,
-7314,
-7345,
-7352,
-7367,
-7377,
-7388,
-7388,
-7402,
-7402,
+7258,
+7278,
+7291,
+7291,
+7291,
+7291,
+7291,
+7298,
+7298,
+7307,
+7307,
+7307,
+7307,
+7307,
+7307,
+7307,
+7317,
+7317,
+7323,
+7366,
+7391,
+7399,
+7399,
+7399,
7409,
-7421,
-7421,
-7467,
-7484,
+7409,
+7409,
+7435,
+7435,
+7443,
+7464,
7484,
7484,
-7491,
-7532,
-7532,
-7539,
-7546,
-7546,
-7553,
-7573,
-7573,
-7573,
-7580,
-7587,
-7594,
-7594,
-7594,
-7606,
-7606,
-7637,
-7637,
-7637,
-7664,
-7664,
+7492,
+7492,
+7527,
+7550,
+7555,
+7555,
+7555,
+7577,
+7608,
+7635,
+7645,
+7645,
+7651,
+7651,
7664,
-7677,
-7684,
-7701,
-7723,
-7723,
-7723,
-7723,
-7734,
-7734,
-7734,
-7748,
-7748,
-7748,
-7748,
-7759,
-7759,
-7775,
-7775,
-7782,
-7789,
-7817,
+7693,
+7703,
+7717,
+7733,
+7742,
+7742,
+7786,
+7786,
+7808,
7824,
-7831,
-7836,
-7865,
-7865,
-7876,
-7901,
-7901,
-7908,
-7918,
-7938,
-7945,
-7945,
-7957,
-7964,
-7979,
-7986,
-7994,
-8007,
-8007,
-8014,
-8021,
-8061,
+7824,
+7849,
+7859,
+7867,
+7895,
+7895,
+7920,
+7920,
+7920,
+7920,
+7932,
+7941,
+7941,
+7941,
+7941,
+7949,
+7962,
+7962,
+7974,
+7982,
+7982,
+8003,
+8012,
+8012,
+8040,
+8046,
8061,
-8071,
-8088,
-8131,
-8138,
-8153,
-8160,
-8160,
-8160,
-8175,
-8183,
-8197,
-8211,
-8211,
-8211,
-8243,
-8243,
-8243,
-8243,
-8259,
-8259,
-8259,
-8259,
-8259,
-8266,
-8275,
-8281,
-8281,
-8281,
-8281,
-8288,
-8288,
-8309,
-8309,
-8309,
-8330,
-8330,
-8330,
-8330,
-8337,
-8343,
-8343,
-8360,
-8370,
-8370,
-8380,
-8380,
-8386,
-8386,
-8397,
-8415,
-8415,
-8428,
-8454,
-8460,
+8082,
+8094,
+8109,
+8109,
+8118,
+8148,
+8161,
+8161,
+8170,
+8184,
+8190,
+8190,
+8190,
+8190,
+8213,
+8213,
+8223,
+8223,
+8235,
+8235,
+8235,
+8235,
+8235,
+8251,
+8261,
+8261,
+8270,
+8270,
+8270,
+8270,
+8270,
+8285,
+8303,
+8303,
+8303,
+8303,
+8303,
+8303,
+8303,
+8332,
+8332,
+8353,
+8353,
+8362,
+8362,
+8362,
+8396,
+8396,
+8403,
+8403,
+8403,
+8416,
+8416,
+8416,
+8416,
+8416,
+8426,
+8426,
+8426,
+8426,
+8449,
+8455,
+8455,
+8475,
8475,
8492,
-8526,
-8554,
-8554,
-8583,
-8583,
-8583,
-8598,
-8607,
-8617,
-8617,
+8510,
+8510,
+8532,
+8532,
+8532,
+8532,
+8544,
+8544,
+8544,
+8550,
+8576,
+8588,
+8588,
+8600,
+8600,
+8609,
+8615,
8642,
-8652,
-8652,
-8652,
-8662,
-8688,
-8688,
-8704,
-8704,
-8747,
-8765,
-8775,
-8783,
-8811,
-8835,
-8835,
-8835,
-8850,
-8859,
-8884,
-8910,
-8919,
-8952,
-8978,
-8978,
-8991,
-8991,
-8991,
-8999,
-8999,
-8999,
-9030,
-9030,
-9030,
-9030,
-9030,
-9041,
+8642,
+8661,
+8667,
+8667,
+8667,
+8687,
+8701,
+8708,
+8708,
+8728,
+8728,
+8728,
+8728,
+8737,
+8762,
+8789,
+8795,
+8809,
+8809,
+8822,
+8836,
+8836,
+8836,
+8836,
+8836,
+8853,
+8853,
+8853,
+8877,
+8891,
+8906,
+8931,
+8931,
+8931,
+8938,
+8963,
+8963,
+8981,
+8995,
+9013,
+9025,
+9025,
+9025,
+9037,
+9037,
+9048,
+9048,
+9048,
+9048,
+9048,
9048,
9048,
-9054,
-9054,
-9054,
-9086,
-9108,
-9108,
+9048,
+9058,
+9071,
+9083,
+9083,
+9083,
+9095,
9119,
9119,
-9130,
-9144,
-9152,
-9161,
-9174,
-9194,
-9207,
-9207,
-9207,
-9232,
-9242,
-9242,
-9271,
-9290,
-9308,
-9308,
-9308,
-9308,
-9320,
-9333,
-9343,
+9125,
+9125,
+9125,
+9156,
+9156,
+9167,
+9167,
+9167,
+9177,
+9177,
+9211,
+9211,
+9211,
+9225,
+9247,
+9247,
+9263,
+9277,
+9277,
+9294,
+9312,
+9312,
+9312,
+9312,
+9312,
+9312,
+9312,
+9312,
+9312,
+9331,
9356,
-9379,
-9379,
-9379,
-9395,
-9395,
-9406,
-9419,
-9419,
-9419,
-9419,
-9450,
-9485,
-9485,
-9497,
-9497,
-9505,
-9517,
-9528,
-9528,
-9551,
-9564,
-9586,
-9586,
-9608,
-9608,
-9626,
-9626,
-9626,
-9653,
-9653,
-9681,
-9681,
-9681,
-9698,
-9698,
-9698,
-9714,
-9729,
-9737,
-9737,
-9765,
-9765,
-9765,
-9765,
-9765,
-9825,
-9844,
-9866,
-9880,
-9880,
-9880,
-9880,
-9886,
-9895,
-9895,
-9895,
-9895,
-9895,
-9913,
-9913,
-9924,
-9958,
-9958,
+9367,
+9367,
+9387,
+9408,
+9408,
+9408,
+9430,
+9442,
+9442,
+9455,
+9471,
+9480,
+9480,
+9486,
+9486,
+9496,
+9496,
+9496,
+9496,
+9549,
+9549,
+9559,
+9571,
+9571,
+9571,
+9571,
+9590,
+9590,
+9590,
+9590,
+9590,
+9600,
+9616,
+9629,
+9668,
+9668,
+9668,
+9705,
+9724,
+9724,
+9724,
+9750,
+9750,
+9750,
+9756,
+9769,
+9769,
+9769,
+9786,
+9786,
+9820,
+9829,
+9829,
+9835,
+9847,
+9847,
+9861,
+9861,
+9861,
+9875,
+9889,
+9900,
+9909,
+9909,
+9909,
+9916,
+9916,
+9916,
+9916,
+9916,
+9916,
+9916,
+9926,
+9937,
+9943,
+9955,
+9961,
+9961,
+9961,
+9961,
9967,
-9975,
-9975,
-9975,
-9981,
-9998,
-9998,
-9998,
-10012,
-10036,
-10036,
-10066,
-10079,
-10097,
-10121,
-10133,
-10142,
-10142,
-10142,
-10156,
-10173,
-10173,
-10173,
-10196,
-10205,
-10205,
-10205,
-10205,
-10218,
-10234,
-10240,
-10240,
-10240,
-10264,
-10273,
-10286,
-10286,
-10286,
-10286,
-10299,
-10299,
-10309,
-10309,
-10339,
-10358,
-10358,
-10374,
-10374,
-10390,
-10390,
-10413,
-10413,
-10439,
-10461,
-10467,
-10467,
-10467,
-10492,
-10492,
-10501,
-10528,
-10528,
-10528,
-10539,
-10583,
-10583,
-10583,
-10613,
-10613,
-10619,
-10628,
-10645,
-10645,
-10645,
-10650,
-10671,
-10687,
-10709,
-10709,
-10709,
-10709,
-10709,
-10727,
-10727,
-10727,
-10727,
-10733,
-10733,
-10768,
-10768,
-10773,
-10780,
-10788,
-10788,
-10797,
-10797,
-10835,
-10835,
-10845,
-10852,
-10861,
-10861,
-10861,
-10861,
-10861,
-10861,
-10861,
-10875,
-10888,
-10907,
-10907,
-10907,
-10920,
-10920,
-10932,
-10946,
-10977,
+9967,
+9967,
+9967,
+9983,
+9999,
+9999,
+10005,
+10005,
+10022,
+10022,
+10027,
+10027,
+10037,
+10064,
+10064,
+10100,
+10109,
+10109,
+10126,
+10126,
+10169,
+10169,
+10169,
+10169,
+10176,
+10186,
+10200,
+10200,
+10200,
+10221,
+10221,
+10221,
+10221,
+10233,
+10233,
+10243,
+10275,
+10281,
+10287,
+10287,
+10287,
+10287,
+10307,
+10307,
+10329,
+10329,
+10329,
+10345,
+10345,
+10351,
+10351,
+10364,
+10377,
+10377,
+10392,
+10392,
+10402,
+10420,
+10420,
+10437,
+10437,
+10437,
+10462,
+10489,
+10519,
+10529,
+10543,
+10550,
+10550,
+10550,
+10550,
+10567,
+10567,
+10577,
+10577,
+10577,
+10584,
+10600,
+10635,
+10648,
+10691,
+10706,
+10726,
+10738,
+10756,
+10763,
+10763,
+10779,
+10793,
+10808,
+10815,
+10822,
+10828,
+10848,
+10855,
+10865,
+10872,
+10879,
+10905,
+10912,
+10912,
+10912,
+10919,
+10926,
+10945,
+10945,
+10956,
+10963,
10977,
-10997,
-11008,
-11037,
-11059,
-11059,
-11059,
-11067,
-11067,
-11067,
-11067,
-11067,
-11077,
-11091,
-11102,
-11102,
-11112,
-11125,
-11129,
-11129,
-11154,
-11154,
-11154,
-11164,
-11164,
-11189,
-11189,
-11189,
-11189,
-11189,
-11196,
-11196,
-11227,
-11238,
-11247,
-11256,
-11265,
+10984,
+11002,
+11014,
+11021,
+11021,
+11028,
+11044,
+11054,
+11061,
+11082,
+11104,
+11111,
+11127,
+11159,
+11183,
+11183,
+11190,
+11203,
+11209,
+11236,
+11236,
+11236,
11265,
-11286,
-11307,
-11330,
-11337,
-11378,
-11378,
-11389,
-11413,
-11454,
-11469,
-11475,
-11475,
-11475,
-11475,
-11503,
-11503,
-11503,
-11503,
-11534,
-11534,
-11550,
-11550,
-11557,
-11557,
-11557,
-11557,
-11574,
-11585,
-11585,
-11603,
+11288,
+11288,
+11308,
+11321,
+11328,
+11335,
+11374,
+11374,
+11400,
+11409,
+11416,
+11422,
+11440,
+11440,
+11456,
+11463,
+11463,
+11463,
+11463,
+11474,
+11487,
+11495,
+11527,
+11544,
+11572,
+11577,
+11584,
+11584,
+11594,
+11594,
+11601,
+11601,
+11607,
+11607,
+11622,
+11626,
+11626,
11626,
-11643,
-11643,
-11643,
-11643,
-11663,
-11663,
-11682,
-11696,
-11696,
-11696,
-11696,
-11706,
-11706,
-11706,
-11706,
-11723,
-11723,
-11757,
-11757,
-11773,
+11641,
+11646,
+11658,
+11658,
+11665,
+11690,
+11704,
+11711,
+11751,
+11777,
11795,
-11813,
-11836,
-11836,
-11883,
-11903,
-11952,
-11965,
-11965,
-11984,
-11997,
-12008,
-12008,
-12008,
-12024,
-12043,
-12065,
-12071,
-12099,
-12129,
-12140,
-12140,
-12146,
-12161,
-12161,
-12161,
-12161,
-12167,
+11795,
+11822,
+11841,
+11865,
+11872,
+11872,
+11879,
+11886,
+11902,
+11916,
+11932,
+11939,
+11946,
+11946,
+11959,
+11979,
+11987,
+12010,
+12017,
+12017,
+12022,
+12046,
+12046,
+12061,
+12073,
+12080,
+12080,
+12080,
+12109,
+12109,
+12115,
+12130,
+12152,
12167,
-12180,
-12186,
-12208,
-12226,
-12243,
-12243,
-12252,
-12252,
-12274,
-12289,
+12181,
+12181,
+12188,
+12210,
+12228,
+12255,
+12255,
+12279,
12302,
-12302,
-12313,
-12313,
-12313,
-12313,
-12358,
-12358,
-12358,
-12369,
-12375,
-12391,
-12391,
-12391,
-12391,
-12405,
-12410,
-12416,
-12416,
-12436,
-12436,
-12436,
-12443,
-12443,
-12462,
-12477,
-12492,
-12492,
-12503,
-12519,
-12525,
-12531,
-12571,
-12571,
-12591,
+12345,
+12361,
+12373,
+12373,
+12373,
+12373,
+12378,
+12394,
+12441,
+12455,
+12455,
+12466,
+12473,
+12480,
+12495,
+12495,
+12502,
+12510,
+12517,
+12527,
+12527,
+12549,
+12556,
12591,
-12601,
-12641,
-12641,
-12641,
-12657,
-12657,
-12657,
-12699,
-12699,
-12699,
-12712,
-12728,
-12744,
-12761,
-12769,
-12782,
-12793,
-12823,
-12836,
-12851,
-12863,
+12604,
+12620,
+12647,
+12668,
+12675,
+12675,
+12696,
+12709,
+12733,
+12773,
+12787,
+12815,
+12822,
+12832,
+12850,
+12850,
+12865,
+12872,
12890,
-12900,
-12900,
-12900,
-12910,
-12910,
-12924,
-12924,
-12924,
-12924,
-12924,
-12952,
-12984,
-13003,
-13038,
-13038,
-13056,
-13056,
-13056,
-13056,
-13074,
-13081,
-13093,
-13103,
-13103,
-13112,
-13119,
-13132,
-13132,
-13132,
-13141,
-13151,
-13183,
-13193,
-13206,
-13206,
-13206,
-13236,
-13252,
-13267,
-13267,
-13294,
+12913,
+12920,
+12927,
+12940,
+12964,
+12971,
+12993,
+13006,
+13006,
+13037,
+13059,
+13073,
+13085,
+13105,
+13105,
+13117,
+13117,
+13152,
+13176,
+13221,
+13228,
+13261,
+13293,
13307,
13307,
13307,
-13343,
-13349,
-13349,
-13349,
-13375,
-13375,
-13375,
-13384,
-13384,
-13384,
-13393,
-13393,
-13393,
-13402,
-13414,
-13425,
-13445,
-13467,
-13485,
-13499,
-13509,
-13528,
-13528,
-13549,
-13549,
-13559,
-13570,
-13570,
-13570,
-13570,
-13598,
-13637,
-13647,
-13647,
-13661,
-13673,
-13682,
-13687,
-13694,
-13694,
-13720,
-13733,
-13742,
-13748,
-13771,
-13795,
-13795,
-13814,
-13821,
-13821,
-13855,
-13862,
-13862,
-13862,
-13874,
-13874,
-13897,
-13909,
-13909,
-13947,
-13947,
-13952,
-13952,
+13307,
+13307,
+13327,
+13327,
+13345,
+13345,
+13352,
+13352,
+13352,
+13352,
+13371,
+13392,
+13399,
+13399,
+13399,
+13406,
+13406,
+13442,
+13442,
+13458,
+13458,
+13498,
+13505,
+13526,
+13543,
+13590,
+13617,
+13629,
+13666,
+13690,
+13690,
+13707,
+13732,
+13737,
+13744,
+13756,
+13796,
+13804,
+13867,
+13895,
+13913,
+13913,
+13938,
+13945,
+13945,
+13950,
13970,
-13979,
-13979,
-13979,
-14008,
-14049,
-14049,
-14049,
-14049,
-14049,
-14049,
-14060,
-14083,
-14083,
-14091,
-14101,
-14101,
-14101,
-14101,
-14118,
-14136,
-14195,
-14195,
-14195,
-14213,
-14213,
-14232,
-14232,
-14253,
-14253,
-14258,
-14275,
-14275,
-14304,
-14311,
-14311,
-14318,
-14318,
-14318,
-14318,
-14318,
-14318,
-14325,
-14325,
-14345,
-14345,
-14379,
-14389,
-14422,
-14422,
-14422,
-14422,
-14435,
-14441,
-14441,
+13982,
+13982,
+13989,
+14015,
+14027,
+14047,
+14047,
+14047,
+14075,
+14087,
+14087,
+14111,
+14111,
+14111,
+14111,
+14117,
+14139,
+14155,
+14167,
+14188,
+14216,
+14234,
+14248,
+14262,
+14276,
+14283,
+14297,
+14315,
+14322,
+14322,
+14344,
+14370,
+14391,
+14407,
+14407,
+14428,
+14451,
14460,
14460,
-14471,
-14471,
-14481,
-14495,
-14495,
-14495,
-14502,
-14502,
-14502,
-14502,
-14524,
-14533,
-14541,
-14552,
-14552,
-14552,
-14552,
-14563,
-14563,
-14568,
-14568,
-14585,
-14595,
-14602,
-14628,
-14628,
-14645,
-14672,
+14470,
+14470,
+14477,
+14477,
+14477,
+14515,
+14531,
+14545,
+14575,
+14599,
+14611,
+14627,
+14634,
+14656,
+14663,
+14670,
14678,
-14697,
-14697,
-14734,
-14757,
-14764,
-14771,
-14771,
+14678,
+14701,
+14701,
+14708,
+14715,
+14738,
+14744,
+14744,
14771,
-14796,
-14815,
-14822,
-14845,
-14861,
-14861,
-14861,
-14873,
-14873,
-14873,
-14902,
-14920,
-14920,
-14926,
-14926,
-14926,
-14941,
-14949,
-14949,
-14949,
-14949,
-14949,
-14960,
-14960,
-14971,
-14971,
+14805,
+14805,
+14805,
+14817,
+14826,
+14837,
+14849,
+14856,
+14856,
+14856,
+14867,
+14875,
+14901,
+14915,
+14933,
+14946,
+14953,
+14953,
14998,
15003,
15003,
-15003,
-15013,
-15013,
-15027,
-15027,
-15027,
-15043,
-15053,
-15063,
+15011,
+15028,
+15028,
+15038,
+15057,
+15064,
+15064,
+15064,
15074,
-15083,
-15093,
-15093,
-15121,
-15121,
-15128,
-15128,
-15144,
-15144,
-15144,
-15144,
-15165,
-15170,
-15170,
-15170,
-15170,
-15170,
-15170,
-15170,
-15186,
-15206,
-15206,
-15206,
-15224,
-15236,
-15236,
-15252,
-15258,
-15258,
-15258,
-15258,
-15264,
-15277,
-15288,
-15307,
-15307,
-15318,
-15328,
-15328,
-15334,
-15334,
-15363,
-15399,
-15399,
-15422,
-15438,
-15447,
-15447,
-15456,
-15456,
-15456,
-15495,
-15495,
-15495,
-15495,
-15511,
-15511,
-15530,
-15557,
+15074,
+15114,
+15129,
+15145,
+15160,
+15169,
+15169,
+15177,
+15190,
+15205,
+15230,
+15240,
+15240,
+15263,
+15278,
+15302,
+15311,
+15311,
+15311,
+15329,
+15361,
+15387,
+15400,
+15424,
+15483,
+15483,
+15509,
+15527,
+15527,
+15527,
+15547,
+15556,
15566,
-15582,
-15590,
-15590,
-15604,
-15604,
-15625,
-15635,
-15655,
-15655,
-15655,
-15655,
-15655,
-15665,
-15675,
-15675,
-15675,
-15675,
-15675,
-15682,
-15682,
-15682,
-15694,
-15719,
-15749,
-15749,
-15794,
-15794,
-15837,
-15854,
-15854,
-15861,
-15861,
-15861,
-15861,
-15884,
-15900,
-15911,
-15931,
-15931,
-15931,
-15931,
-15931,
-15963,
+15566,
+15566,
+15566,
+15571,
+15578,
+15587,
+15587,
+15587,
+15587,
+15601,
+15616,
+15623,
+15662,
+15677,
+15677,
+15715,
+15715,
+15715,
+15747,
+15786,
+15793,
+15793,
+15802,
+15809,
+15852,
+15852,
+15852,
+15866,
+15882,
+15882,
+15921,
+15921,
+15928,
+15938,
+15938,
+15950,
+15950,
15963,
-15996,
-16006,
-16013,
-16024,
+15988,
+15988,
+15995,
+16010,
16034,
-16049,
-16049,
-16049,
-16059,
-16059,
-16059,
-16059,
-16059,
-16059,
-16059,
-16064,
-16075,
-16104,
-16104,
-16117,
-16124,
-16124,
-16124,
-16124,
-16130,
-16145,
-16159,
-16190,
-16193,
-16196,
-16210,
-16224,
+16058,
+16069,
+16085,
+16094,
+16106,
+16121,
+16131,
+16131,
+16162,
+16169,
+16191,
+16201,
+16211,
+16211,
+16211,
+16223,
+16235,
+16235,
+16235,
+16235,
16243,
-16255,
-16261,
-16280,
-16283,
-16292,
-16295,
-16295,
-16301,
-16304,
-16322,
-16325,
-16328,
-16349,
-16355,
-16382,
-16408,
-16414,
-16414,
-16414,
-16458,
-16477,
-16480,
-16485,
-16488,
-16514,
-16520,
-16530,
-16530,
-16546,
-16562,
+16258,
+16258,
+16271,
+16285,
+16308,
+16347,
+16379,
+16392,
+16403,
+16410,
+16432,
+16474,
+16474,
+16491,
+16508,
+16508,
+16523,
+16523,
+16539,
+16539,
+16539,
+16539,
+16539,
+16549,
+16573,
+16597,
16597,
-16603,
-16622,
-16622,
-16646,
-16669,
-16672,
-16715,
-16715,
-16715,
-16718,
-16718,
-16727,
-16733,
-16752,
-16770,
-16787,
-16794,
-16810,
-16827,
-16840,
-16850,
-16876,
-16901,
-16901,
-16901,
+16604,
+16604,
+16614,
+16624,
+16632,
+16658,
+16658,
+16664,
+16688,
+16688,
+16688,
+16688,
+16698,
+16707,
+16721,
+16730,
+16759,
+16759,
+16766,
+16800,
+16819,
+16819,
+16834,
+16847,
+16863,
+16870,
+16880,
+16909,
+16909,
16916,
-16919,
-16926,
+16916,
+16922,
16943,
-16972,
-16978,
-16978,
-16978,
-16981,
-17008,
-17008,
-17016,
-17053,
-17053,
-17053,
-17053,
-17072,
-17086,
-17105,
-17139,
-17153,
-17162,
-17162,
-17177,
-17177,
-17177,
-17177,
-17195,
-17218,
-17221,
-17221,
+16959,
+16965,
+16965,
+17006,
+17030,
+17037,
+17037,
+17052,
+17059,
+17059,
+17059,
+17059,
+17085,
+17085,
+17099,
+17112,
+17145,
+17145,
+17151,
+17166,
+17166,
+17183,
+17183,
+17204,
+17211,
+17211,
17237,
-17276,
-17276,
-17300,
-17319,
-17339,
-17357,
-17370,
-17383,
-17400,
-17407,
-17419,
-17439,
-17439,
-17449,
-17465,
-17475,
-17504,
-17527,
-17527,
-17534,
-17548,
-17564,
-17564,
-17598,
-17598,
-17601,
-17630,
-17649,
-17669,
-17669,
-17679,
-17686,
-17757,
-17776,
-17796,
-17810,
-17840,
-17840,
+17252,
+17259,
+17266,
+17266,
+17273,
+17273,
+17273,
+17273,
+17283,
+17283,
+17283,
+17283,
+17283,
+17306,
+17327,
+17327,
+17338,
+17344,
+17368,
+17405,
+17405,
+17405,
+17426,
+17426,
+17443,
+17455,
+17466,
+17479,
+17531,
+17550,
+17550,
+17563,
+17597,
+17607,
+17677,
+17691,
+17701,
+17704,
+17714,
+17714,
+17736,
+17746,
+17756,
+17764,
+17800,
+17850,
+17853,
+17867,
17877,
-17884,
-17884,
-17911,
-17936,
-17970,
-17980,
-17995,
-17995,
-18008,
-18011,
-18036,
-18075,
-18097,
-18097,
-18104,
-18115,
-18115,
-18129,
-18134,
-18141,
-18141,
-18157,
-18180,
-18190,
-18217,
-18224,
-18252,
-18284,
-18284,
-18296,
+17887,
+17897,
+17927,
+17977,
+17987,
+17993,
+18000,
+18019,
+18034,
+18041,
+18051,
+18051,
+18065,
+18102,
+18117,
+18123,
+18144,
+18169,
+18182,
+18198,
+18218,
+18282,
+18289,
18299,
-18312,
-18322,
-18338,
-18348,
-18348,
-18363,
-18372,
-18387,
-18387,
-18390,
-18402,
-18445,
-18445,
-18445,
-18466,
-18479,
-18479,
-18498,
-18508,
-18511,
-18511,
-18511,
-18511,
-18511,
-18526,
-18558,
-18586,
-18622,
-18643,
-18670,
-18686,
-18710,
-18720,
-18739,
-18739,
-18742,
-18745,
+18317,
+18320,
+18323,
+18329,
+18361,
+18388,
+18388,
+18407,
+18420,
+18423,
+18471,
+18500,
+18500,
+18521,
+18524,
+18539,
+18553,
+18553,
+18566,
+18566,
+18573,
+18599,
+18602,
+18609,
+18628,
+18645,
+18648,
+18655,
+18666,
+18676,
+18683,
+18683,
+18683,
+18708,
+18715,
+18721,
+18747,
+18747,
+18761,
+18761,
18771,
-18774,
-18777,
-18791,
-18813,
-18816,
-18822,
-18839,
-18845,
+18788,
+18805,
+18805,
+18826,
+18832,
+18838,
+18848,
+18851,
18851,
-18854,
-18878,
-18881,
-18896,
-18896,
-18899,
-18926,
-18937,
-18940,
-18953,
-18963,
-19010,
-19010,
-19017,
-19046,
-19060,
-19060,
-19087,
+18868,
+18887,
+18890,
+18893,
+18893,
+18902,
+18921,
+18924,
+18927,
+18930,
+18933,
+18958,
+18958,
+18970,
+18989,
+18989,
+19029,
+19032,
+19053,
+19070,
+19073,
19095,
-19101,
-19101,
-19128,
-19146,
-19157,
-19157,
-19188,
-19198,
-19205,
-19223,
-19230,
-19255,
-19280,
-19280,
-19283,
-19292,
-19301,
-19320,
-19323,
-19323,
-19341,
-19341,
-19365,
-19378,
-19381,
+19102,
+19109,
+19119,
+19139,
+19165,
+19193,
+19209,
+19233,
+19261,
+19275,
+19316,
+19316,
+19316,
+19326,
+19326,
+19348,
+19354,
+19360,
+19367,
+19367,
+19367,
+19380,
+19387,
19394,
-19423,
+19420,
19433,
-19440,
-19466,
-19490,
-19490,
-19490,
-19497,
+19436,
+19447,
+19472,
+19482,
+19485,
+19495,
+19504,
19504,
-19511,
-19511,
-19518,
-19545,
-19568,
-19575,
-19575,
-19583,
-19586,
-19592,
-19592,
-19609,
-19622,
-19629,
-19641,
-19641,
-19656,
-19673,
-19700,
-19723,
-19733,
-19746,
-19759,
-19769,
-19782,
-19789,
-19795,
-19831,
-19834,
-19841,
-19851,
-19854,
-19880,
-19895,
-19898,
-19898,
+19521,
+19521,
+19521,
+19536,
+19536,
+19553,
+19553,
+19553,
+19567,
+19570,
+19570,
+19589,
+19602,
+19602,
+19610,
+19617,
+19620,
+19620,
+19635,
+19635,
+19663,
+19693,
+19696,
+19699,
+19728,
+19734,
+19760,
+19763,
+19766,
+19766,
+19783,
+19792,
+19792,
+19792,
+19809,
+19842,
+19845,
+19884,
19911,
-19922,
-19950,
-20020,
-20030,
+19941,
+19941,
+19956,
+19959,
+19994,
+20007,
+20019,
+20031,
+20041,
20059,
-20062,
-20089,
-20107,
-20151,
-20154,
-20175,
-20205,
-20208,
-20229,
-20229,
-20255,
-20261,
-20261,
-20283,
-20335,
-20362,
-20385,
-20392,
-20392,
-20392,
-20392,
-20418,
-20418,
-20418,
-20418,
-20443,
-20446,
-20446,
-20452,
-20452,
-20467,
-20467,
+20071,
+20074,
+20108,
+20115,
+20131,
+20131,
+20139,
+20159,
+20162,
+20181,
+20207,
+20213,
+20234,
+20240,
+20262,
+20265,
+20280,
+20299,
+20311,
+20323,
+20326,
+20326,
+20326,
+20329,
+20329,
+20329,
+20332,
+20332,
+20332,
+20376,
+20401,
+20428,
+20444,
+20444,
+20444,
+20460,
20489,
-20489,
-20498,
-20525,
-20554,
-20560,
-20575,
-20589,
+20499,
+20528,
+20548,
+20548,
+20567,
+20567,
+20567,
+20567,
20589,
-20589,
-20614,
-20652,
-20659,
-20659,
-20668,
-20679,
+20610,
+20621,
+20650,
+20650,
+20663,
+20666,
+20669,
20679,
-20679,
-20685,
-20685,
-20685,
-20685,
-20685,
-20685,
-20696,
-20733,
-20760,
+20695,
+20707,
+20726,
20766,
-20769,
-20792,
-20792,
-20792,
-20792,
-20813,
-20813,
-20813,
-20813,
-20826,
-20826,
-20846,
-20862,
-20880,
-20887,
-20901,
-20908,
-20933,
+20778,
+20793,
+20796,
+20821,
+20821,
+20824,
+20833,
+20849,
+20864,
+20864,
+20879,
+20879,
+20888,
+20888,
+20899,
+20899,
+20911,
+20911,
+20917,
20938,
-20958,
-20969,
-20978,
-20978,
-20978,
-20985,
-20985,
-20985,
-21000,
-21010,
-21010,
-21014,
-21026,
-21033,
-21041,
-21041,
+20961,
+20974,
+21001,
+21039,
21051,
21051,
-21064,
-21071,
-21113,
-21120,
-21120,
-21127,
-21134,
-21142,
-21164,
-21164,
-21164,
-21188,
-21195,
-21208,
-21215,
-21226,
-21226,
-21226,
-21238,
-21249,
-21255,
-21255,
-21265,
-21279,
-21296,
+21087,
+21104,
+21104,
+21126,
+21135,
+21138,
+21159,
+21165,
+21168,
+21174,
+21174,
+21213,
+21216,
+21250,
+21250,
+21263,
+21287,
21301,
-21315,
-21321,
-21331,
-21331,
-21331,
-21337,
-21343,
-21343,
-21351,
-21351,
-21361,
-21368,
-21383,
-21383,
+21310,
+21338,
+21365,
21389,
-21413,
-21437,
-21449,
-21462,
-21478,
-21506,
-21534,
-21546,
-21546,
-21557,
-21580,
-21595,
+21398,
+21420,
+21426,
+21429,
+21450,
+21453,
+21475,
+21507,
+21513,
+21516,
+21519,
+21522,
+21530,
+21533,
+21545,
+21548,
+21564,
+21564,
21595,
21595,
-21595,
-21626,
-21626,
-21646,
-21670,
-21676,
-21688,
-21688,
-21716,
-21731,
-21762,
-21762,
-21762,
+21607,
+21621,
+21621,
+21629,
+21650,
+21659,
+21659,
+21659,
+21659,
+21659,
+21659,
+21662,
+21662,
+21694,
+21694,
+21694,
+21704,
+21729,
21762,
-21762,
-21783,
-21789,
-21799,
-21828,
-21828,
-21837,
-21845,
-21868,
-21874,
-21874,
-21880,
-21880,
-21889,
-21901,
-21910,
-21941,
-21941,
-21959,
-21959,
-21959,
-21966,
-21966,
-21972,
-21972,
-21995,
-22011,
-22043,
-22043,
-22051,
-22051,
-22060,
-22060,
-22060,
-22074,
-22086,
-22086,
-22099,
-22099,
-22120,
-22120,
-22134,
-22144,
-22150,
-22158,
-22164,
-22164,
-22171,
-22199,
-22210,
-22210,
-22210,
-22220,
-22228,
-22228,
-22239,
-22261,
-22304,
-22304,
-22312,
-22349,
-22349,
-22349,
-22357,
-22381,
-22381,
-22390,
-22390,
-22390,
-22390,
-22402,
-22413,
-22413,
-22422,
-22422,
-22445,
-22445,
-22445,
-22456,
-22456,
-22469,
-22479,
-22501,
-22512,
-22528,
-22528,
-22528,
-22528,
-22528,
-22528,
-22528,
-22540,
-22540,
-22546,
-22546,
-22546,
-22546,
-22569,
-22591,
-22591,
-22591,
-22591,
-22610,
-22655,
-22655,
-22667,
-22667,
-22677,
-22677,
-22692,
-22692,
-22702,
-22702,
-22702,
-22717,
-22736,
-22750,
-22755,
-22780,
-22785,
-22822,
+21795,
+21816,
+21826,
+21826,
+21826,
+21829,
+21829,
+21838,
+21891,
+21900,
+21900,
+21913,
+21931,
+21931,
+21931,
+21948,
+21955,
+21955,
+21973,
+21973,
+21973,
+21998,
+21998,
+21998,
+22005,
+22005,
+22008,
+22016,
+22040,
+22071,
+22098,
+22098,
+22105,
+22141,
+22141,
+22141,
+22141,
+22154,
+22154,
+22154,
+22154,
+22154,
+22168,
+22176,
+22188,
+22188,
+22206,
+22217,
+22226,
+22226,
+22237,
+22260,
+22260,
+22273,
+22273,
+22283,
+22300,
+22314,
+22327,
+22334,
+22344,
+22344,
+22351,
+22351,
+22351,
+22367,
+22380,
+22392,
+22403,
+22415,
+22437,
+22454,
+22462,
+22462,
+22462,
+22470,
+22496,
+22522,
+22522,
+22539,
+22539,
+22539,
+22562,
+22580,
+22580,
+22596,
+22614,
+22630,
+22645,
+22645,
+22664,
+22664,
+22664,
+22701,
+22708,
+22719,
+22719,
+22719,
+22719,
+22719,
+22719,
+22719,
+22719,
+22740,
+22778,
+22778,
+22778,
+22791,
+22817,
22844,
-22859,
+22856,
+22856,
+22856,
+22856,
+22856,
+22864,
22871,
-22909,
-22949,
-22962,
-22973,
+22908,
+22920,
+22930,
+22930,
+22930,
+22950,
+22950,
+22961,
22979,
-22988,
-23007,
-23027,
-23035,
-23072,
-23082,
-23082,
-23109,
-23116,
-23130,
+23001,
+23014,
+23014,
+23026,
+23037,
+23037,
+23057,
+23057,
+23079,
+23111,
+23148,
23158,
23166,
-23166,
-23172,
-23177,
-23189,
-23219,
-23219,
-23250,
-23273,
-23281,
-23281,
-23281,
-23281,
-23281,
+23183,
+23183,
+23190,
+23212,
+23235,
+23235,
+23235,
+23235,
+23235,
+23235,
+23241,
+23241,
+23262,
+23262,
23287,
-23287,
-23299,
-23305,
+23300,
+23300,
23315,
23315,
-23321,
-23328,
-23334,
-23355,
+23327,
+23342,
+23342,
23355,
-23355,
-23355,
-23355,
-23366,
-23390,
-23396,
-23396,
-23396,
-23396,
-23402,
-23418,
-23424,
-23424,
-23438,
-23446,
-23446,
-23446,
-23500,
-23525,
-23569,
-23592,
-23592,
-23592,
-23605,
-23614,
-23614,
-23614,
-23627,
-23633,
-23657,
-23673,
+23399,
+23399,
+23439,
+23439,
+23439,
+23460,
+23467,
+23487,
+23487,
+23487,
+23487,
+23487,
+23506,
+23506,
+23517,
+23580,
+23580,
+23580,
+23594,
+23594,
+23594,
+23604,
+23604,
+23604,
+23604,
+23623,
+23635,
+23645,
+23645,
+23652,
+23658,
+23665,
23673,
23673,
-23689,
-23689,
-23701,
-23701,
-23701,
-23713,
-23713,
-23713,
+23700,
+23700,
+23716,
23738,
-23758,
-23775,
-23775,
-23794,
-23794,
-23803,
-23803,
-23803,
-23803,
-23813,
-23826,
-23845,
-23845,
-23845,
-23845,
-23872,
-23872,
-23872,
-23888,
-23888,
-23900,
-23900,
-23906,
-23906,
-23906,
-23906,
-23906,
-23924,
-23924,
-23924,
-23930,
-23930,
-23939,
-23949,
+23745,
+23745,
+23745,
+23751,
+23765,
+23778,
+23788,
+23788,
+23788,
+23788,
+23801,
+23821,
+23833,
+23840,
+23853,
+23866,
+23893,
+23893,
+23893,
+23921,
+23921,
+23931,
+23931,
+23931,
+23942,
+23942,
23971,
-23971,
-23971,
-24000,
-24012,
-24042,
-24042,
-24042,
-24042,
-24042,
-24070,
-24076,
-24094,
-24094,
-24094,
-24123,
-24123,
-24123,
-24134,
-24150,
-24150,
-24150,
-24150,
-24150,
-24150,
-24155,
-24179,
-24179,
-24189,
-24189,
-24189,
-24198,
-24198,
-24218,
-24218,
-24218,
-24234,
-24251,
-24257,
-24276,
-24305,
-24321,
-24321,
-24321,
-24334,
-24334,
-24334,
-24349,
-24356,
-24361,
-24372,
-24372,
-24372,
-24388,
-24396,
-24396,
-24402,
-24410,
-24410,
-24428,
-24428,
-24450,
-24450,
-24467,
-24485,
-24495,
-24495,
-24495,
-24507,
-24507,
-24514,
-24531,
-24531,
-24531,
-24531,
-24531,
-24537,
-24537,
-24558,
+23978,
+23978,
+23978,
+23994,
+24001,
+24001,
+24008,
+24023,
+24079,
+24079,
+24079,
+24091,
+24102,
+24119,
+24119,
+24126,
+24131,
+24147,
+24167,
+24191,
+24207,
+24217,
+24217,
+24243,
+24243,
+24254,
+24254,
+24254,
+24254,
+24275,
+24301,
+24309,
+24322,
+24336,
+24345,
+24364,
+24364,
+24364,
+24373,
+24382,
+24390,
+24390,
+24390,
+24390,
+24390,
+24397,
+24397,
+24404,
+24424,
+24424,
+24430,
+24440,
+24447,
+24460,
+24466,
+24496,
+24506,
+24506,
+24506,
+24506,
+24517,
+24530,
+24540,
+24557,
+24572,
+24572,
24572,
-24584,
-24584,
-24601,
-24601,
-24607,
-24615,
-24615,
-24632,
-24632,
-24632,
-24632,
-24661,
-24676,
-24676,
-24724,
-24751,
-24751,
-24774,
-24774,
-24783,
-24793,
-24793,
-24793,
-24813,
-24819,
-24819,
-24826,
-24826,
-24842,
-24858,
-24872,
-24872,
-24890,
-24890,
-24890,
-24890,
-24890,
-24890,
-24890,
-24890,
-24890,
-24906,
-24906,
-24917,
-24928,
-24947,
-24947,
-24947,
-24947,
-24947,
-24947,
-24947,
-24947,
-24947,
-24963,
-24983,
-24991,
-24991,
-24991,
-24991,
-24991,
-24991,
-24991,
-24991,
-25007,
-25007,
-25007,
-25007,
-25007,
-25007,
-25007,
-25030,
-25040,
-25040,
-25040,
-25040,
-25040,
-25059,
-25097,
-25132,
-25149,
-25159,
-25169,
-25169,
-25169,
-25192,
-25192,
-25192,
-25192,
-25205,
-25205,
-25216,
-25221,
-25221,
-25233,
-25233,
-25240,
-25250,
-25256,
-25273,
-25273,
-25303,
-25321,
-25321,
-25321,
-25333,
-25333,
-25333,
-25333,
-25370,
-25370,
-25402,
-25418,
-25418,
-25439,
-25439,
-25454,
-25454,
-25454,
-25463,
+24581,
+24591,
+24616,
+24631,
+24652,
+24652,
+24682,
+24688,
+24706,
+24729,
+24747,
+24747,
+24747,
+24747,
+24747,
+24747,
+24771,
+24801,
+24825,
+24825,
+24825,
+24857,
+24876,
+24892,
+24892,
+24915,
+24915,
+24934,
+24953,
+24953,
+24969,
+24969,
+24978,
+24978,
+24978,
+24986,
+25009,
+25033,
+25033,
+25033,
+25033,
+25044,
+25054,
+25054,
+25075,
+25096,
+25102,
+25113,
+25113,
+25135,
+25142,
+25152,
+25167,
+25174,
+25209,
+25209,
+25219,
+25226,
+25226,
+25242,
+25242,
+25247,
+25247,
+25255,
+25263,
+25270,
+25270,
+25305,
+25311,
+25311,
+25355,
+25368,
+25375,
+25375,
+25375,
+25375,
+25375,
+25375,
+25396,
+25406,
+25406,
+25406,
+25406,
+25406,
+25406,
+25406,
+25416,
25477,
-25526,
-25526,
-25526,
-25526,
+25484,
+25490,
+25497,
+25497,
+25517,
+25517,
+25517,
25545,
-25562,
-25572,
-25572,
-25582,
-25582,
-25582,
-25597,
-25610,
-25634,
-25641,
-25641,
-25641,
-25668,
-25668,
-25675,
-25707,
-25727,
-25727,
-25741,
-25756,
-25756,
-25779,
-25811,
-25811,
-25811,
-25817,
-25817,
-25817,
-25827,
-25827,
-25827,
-25827,
-25827,
-25836,
-25836,
-25836,
-25836,
-25850,
-25850,
-25860,
+25557,
+25574,
+25574,
+25574,
+25590,
+25596,
+25607,
+25607,
+25615,
+25615,
+25645,
+25658,
+25672,
+25672,
+25672,
+25689,
+25700,
+25723,
+25723,
+25723,
+25736,
+25736,
+25736,
+25736,
+25736,
+25764,
+25764,
+25772,
+25772,
+25772,
+25772,
+25772,
+25772,
+25772,
+25772,
+25804,
+25804,
+25804,
+25804,
+25830,
+25856,
+25856,
+25856,
+25872,
+25877,
25884,
25901,
-25922,
-25936,
-25946,
-25969,
-25969,
-25969,
-25969,
-25975,
+25901,
+25914,
+25929,
+25929,
+25952,
25975,
-25987,
-25987,
-26065,
-26065,
-26065,
-26084,
-26084,
-26103,
-26128,
-26141,
+25997,
+26022,
+26022,
+26046,
+26056,
+26056,
+26086,
+26129,
26151,
-26169,
-26169,
-26169,
-26180,
-26191,
-26191,
-26191,
-26197,
-26197,
+26160,
+26185,
+26194,
+26194,
26205,
-26211,
-26235,
-26235,
-26235,
-26235,
-26235,
-26235,
-26245,
-26245,
-26259,
-26259,
+26205,
+26214,
+26220,
+26231,
+26231,
+26231,
+26231,
+26241,
26259,
26259,
-26284,
-26284,
-26325,
-26325,
-26355,
-26364,
-26364,
-26402,
-26418,
-26418,
-26425,
-26432,
-26432,
-26454,
-26504,
-26513,
-26525,
-26525,
-26525,
-26525,
-26525,
-26545,
-26545,
-26571,
-26590,
-26597,
-26597,
-26597,
-26597,
-26597,
-26639,
-26648,
-26659,
-26666,
-26672,
-26672,
-26672,
-26672,
-26672,
-26694,
-26701,
-26701,
-26701,
-26724,
-26724,
-26746,
-26753,
-26774,
-26774,
-26774,
-26774,
-26806,
-26824,
-26824,
-26830,
-26852,
-26882,
-26882,
-26889,
-26889,
-26889,
-26889,
-26889,
-26889,
-26903,
-26911,
-26918,
-26918,
-26928,
-26948,
-26948,
-26970,
-26970,
-26985,
-26996,
-27045,
+26287,
+26293,
+26300,
+26300,
+26317,
+26335,
+26335,
+26335,
+26344,
+26374,
+26374,
+26374,
+26374,
+26374,
+26374,
+26392,
+26408,
+26416,
+26437,
+26437,
+26443,
+26457,
+26471,
+26485,
+26485,
+26485,
+26485,
+26485,
+26485,
+26506,
+26521,
+26550,
+26550,
+26564,
+26575,
+26598,
+26606,
+26606,
+26618,
+26618,
+26633,
+26649,
+26656,
+26656,
+26656,
+26656,
+26669,
+26669,
+26669,
+26679,
+26709,
+26718,
+26718,
+26725,
+26732,
+26732,
+26732,
+26755,
+26765,
+26765,
+26786,
+26807,
+26814,
+26814,
+26814,
+26837,
+26858,
+26881,
+26899,
+26909,
+26909,
+26909,
+26936,
+26936,
+26943,
+26957,
+26963,
+26980,
+27009,
+27041,
27045,
-27058,
-27058,
-27068,
-27068,
-27104,
-27155,
-27155,
-27155,
-27155,
-27155,
-27172,
-27172,
-27172,
-27172,
-27189,
-27195,
-27195,
-27223,
-27223,
-27223,
-27223,
-27244,
-27290,
-27322,
-27332,
-27364,
-27371,
-27371,
-27371,
-27401,
-27401,
-27417,
-27417,
-27431,
-27470,
-27470,
-27470,
-27470,
-27484,
-27484,
-27484,
-27484,
-27484,
-27496,
-27496,
-27515,
-27515,
-27543,
-27560,
-27576,
-27604,
-27622,
-27631,
-27631,
-27638,
-27649,
-27672,
-27682,
-27682,
-27682,
-27707,
-27717,
-27724,
+27091,
+27100,
+27109,
+27130,
+27141,
+27153,
+27153,
+27184,
+27190,
+27190,
+27190,
+27199,
+27214,
+27214,
+27230,
+27239,
+27239,
+27239,
+27239,
+27256,
+27268,
+27275,
+27275,
+27295,
+27295,
+27301,
+27301,
+27301,
+27340,
+27346,
+27346,
+27354,
+27373,
+27373,
+27373,
+27373,
+27392,
+27424,
+27460,
+27474,
+27474,
+27489,
+27497,
+27497,
+27497,
+27497,
+27547,
+27580,
+27580,
+27598,
+27598,
+27626,
+27626,
+27644,
+27644,
+27644,
+27668,
+27675,
+27702,
+27714,
27732,
-27755,
-27755,
-27755,
-27768,
-27768,
-27783,
-27789,
-27799,
-27799,
-27799,
-27818,
-27826,
-27838,
-27848,
-27848,
-27848,
-27855,
-27862,
-27862,
+27744,
+27744,
+27744,
+27744,
+27758,
+27758,
+27758,
+27764,
+27764,
+27771,
+27771,
+27781,
+27793,
+27793,
+27793,
+27808,
+27813,
+27813,
+27819,
+27831,
+27844,
+27867,
+27883,
27896,
-27921,
-27921,
-27943,
-27954,
-27954,
-27976,
-27976,
-27976,
-27985,
-28002,
-28012,
-28019,
-28034,
-28034,
-28046,
-28068,
-28097,
-28122,
-28122,
-28131,
-28137,
-28151,
-28151,
-28172,
-28190,
-28196,
-28211,
-28211,
-28264,
-28273,
-28286,
-28324,
-28324,
-28324,
-28354,
-28354,
-28361,
-28397,
-28417,
-28417,
-28424,
-28435,
-28461,
-28461,
-28470,
-28483,
-28483,
-28483,
-28483,
-28483,
-28483,
-28483,
-28515,
-28531,
-28531,
-28549,
-28575,
-28575,
-28575,
-28582,
-28599,
-28615,
-28630,
-28630,
-28672,
-28711,
-28723,
-28723,
-28731,
-28752,
-28752,
-28752,
-28763,
-28763,
-28775,
-28775,
-28775,
-28775,
-28775,
-28775,
-28805,
-28814,
-28830,
-28861,
-28882,
-28882,
-28902,
-28918,
-28937,
-28952,
-28959,
+27924,
+27924,
+27924,
+27924,
+27931,
+27931,
+27931,
+27931,
+27939,
+27945,
+27956,
+27968,
+27974,
+27984,
+27984,
+28007,
+28013,
+28026,
+28052,
+28058,
+28065,
+28093,
+28093,
+28101,
+28107,
+28129,
+28135,
+28149,
+28149,
+28168,
+28182,
+28188,
+28197,
+28197,
+28223,
+28235,
+28235,
+28235,
+28235,
+28235,
+28252,
+28279,
+28279,
+28285,
+28285,
+28311,
+28311,
+28317,
+28317,
+28329,
+28335,
+28368,
+28368,
+28368,
+28374,
+28374,
+28374,
+28409,
+28429,
+28429,
+28454,
+28472,
+28472,
+28472,
+28503,
+28520,
+28520,
+28532,
+28558,
+28558,
+28571,
+28577,
+28577,
+28592,
+28613,
+28636,
+28646,
+28652,
+28683,
+28695,
+28703,
+28703,
+28703,
+28703,
+28703,
+28726,
+28754,
+28761,
+28761,
+28777,
+28789,
+28789,
+28823,
+28844,
+28844,
+28852,
+28860,
+28860,
+28870,
+28888,
+28938,
+28978,
+28990,
28998,
-29009,
-29009,
-29009,
-29009,
-29019,
-29019,
-29019,
-29019,
-29019,
-29057,
-29069,
-29076,
-29076,
-29076,
-29076,
-29076,
-29082,
-29082,
-29082,
-29117,
-29117,
-29117,
-29117,
-29134,
-29134,
-29159,
-29159,
-29185,
-29185,
-29196,
-29196,
-29242,
+29016,
+29029,
+29029,
+29068,
+29068,
+29077,
+29077,
+29089,
+29110,
+29110,
+29116,
+29116,
+29116,
+29116,
+29127,
+29127,
+29136,
+29156,
+29163,
+29170,
+29170,
+29191,
+29191,
+29203,
+29203,
+29219,
+29236,
+29236,
+29236,
+29236,
29248,
-29256,
-29280,
-29301,
-29307,
-29307,
-29307,
-29314,
-29314,
-29338,
-29356,
-29367,
-29367,
-29381,
-29391,
-29399,
-29399,
-29414,
-29434,
-29434,
-29441,
-29473,
-29484,
-29503,
-29520,
-29520,
-29548,
-29565,
-29572,
-29572,
-29572,
-29572,
-29572,
-29597,
-29597,
-29620,
-29655,
-29660,
-29660,
-29660,
-29667,
-29674,
-29688,
-29698,
-29705,
-29728,
-29740,
-29740,
+29248,
+29254,
+29260,
+29260,
+29282,
+29282,
+29302,
+29302,
+29302,
+29312,
+29318,
+29341,
+29341,
+29353,
+29353,
+29359,
+29394,
+29400,
+29420,
+29420,
+29420,
+29436,
+29448,
+29448,
+29464,
+29483,
+29496,
+29513,
+29513,
+29525,
+29531,
+29544,
+29544,
+29557,
+29567,
+29577,
+29602,
+29622,
+29630,
+29641,
+29641,
+29641,
+29652,
+29652,
+29652,
+29652,
+29666,
+29672,
+29683,
+29704,
+29704,
+29704,
+29715,
+29715,
+29715,
+29723,
+29746,
+29746,
+29746,
+29756,
29761,
29761,
-29767,
-29780,
-29787,
-29794,
-29794,
-29807,
-29820,
-29820,
-29820,
-29820,
-29832,
-29844,
-29855,
-29855,
-29855,
-29867,
-29867,
-29867,
-29867,
-29881,
-29881,
-29905,
-29905,
-29905,
-29923,
-29923,
-29948,
-29948,
-29948,
-29976,
-29986,
-29996,
+29778,
+29789,
+29795,
+29795,
+29828,
+29836,
+29836,
+29836,
+29868,
+29878,
+29884,
+29908,
+29918,
+29928,
+29928,
+29928,
+29934,
+29952,
+29964,
+29970,
+29983,
29996,
-30030,
-30030,
-30054,
-30054,
-30070,
-30070,
-30070,
-30077,
-30077,
+30013,
+30020,
+30020,
+30031,
+30072,
30087,
-30107,
-30107,
-30115,
-30141,
-30178,
-30178,
-30201,
-30201,
-30201,
-30207,
-30229,
-30239,
-30254,
-30268,
-30277,
-30311,
-30323,
-30323,
-30331,
-30331,
-30331,
-30331,
-30331,
-30353,
-30365,
-30374,
-30374,
-30374,
-30380,
-30380,
-30380,
-30380,
-30410,
-30410,
-30410,
-30443,
-30443,
-30453,
+30087,
+30087,
+30093,
+30117,
+30163,
+30192,
+30199,
+30206,
+30206,
+30213,
+30247,
+30247,
+30270,
+30270,
+30270,
+30282,
+30303,
+30338,
+30345,
+30345,
+30355,
+30376,
+30376,
+30408,
+30420,
+30420,
+30427,
+30434,
+30441,
+30448,
+30448,
30462,
-30472,
-30472,
-30472,
-30472,
-30472,
-30472,
-30489,
-30500,
-30500,
-30500,
-30532,
-30532,
+30496,
+30526,
+30543,
30553,
-30577,
-30599,
-30599,
-30609,
-30640,
-30640,
-30640,
-30664,
-30676,
-30676,
-30676,
-30692,
-30719,
-30728,
-30728,
-30742,
-30742,
-30749,
-30749,
-30760,
-30770,
-30770,
-30783,
-30783,
-30783,
-30804,
-30847,
-30847,
-30847,
-30847,
-30857,
-30857,
-30857,
-30857,
-30875,
-30875,
-30895,
-30895,
-30921,
-30926,
-30926,
-30926,
-30945,
-30945,
-30945,
-30945,
-30959,
-30959,
-30959,
-30959,
-30972,
-30972,
-30984,
-31011,
-31011,
-31048,
-31056,
-31056,
-31070,
-31077,
-31077,
-31110,
-31110,
-31115,
-31122,
-31139,
-31159,
-31159,
-31165,
-31171,
-31171,
-31197,
-31204,
-31211,
-31211,
-31221,
-31228,
-31228,
-31245,
-31245,
-31245,
-31252,
-31265,
-31265,
-31265,
-31265,
-31294,
-31305,
+30563,
+30569,
+30588,
+30626,
+30626,
+30655,
+30677,
+30677,
+30677,
+30701,
+30701,
+30701,
+30716,
+30716,
+30716,
+30716,
+30732,
+30746,
+30746,
+30759,
+30759,
+30759,
+30759,
+30766,
+30766,
+30789,
+30798,
+30805,
+30819,
+30819,
+30837,
+30870,
+30870,
+30870,
+30887,
+30898,
+30909,
+30919,
+30925,
+30942,
+30949,
+30955,
+30955,
+30955,
+30979,
+30979,
+30988,
+30988,
+30988,
+30988,
+31003,
+31027,
+31027,
+31027,
+31027,
+31038,
+31051,
+31091,
+31106,
+31116,
+31143,
+31156,
+31169,
+31169,
+31188,
+31188,
+31209,
+31234,
+31267,
+31283,
+31296,
+31296,
+31296,
+31302,
+31309,
+31309,
+31309,
31320,
-31333,
-31333,
-31333,
-31343,
-31350,
-31357,
-31369,
-31369,
-31379,
-31385,
-31391,
-31407,
-31407,
-31407,
-31423,
-31423,
-31423,
-31434,
-31454,
-31470,
-31511,
-31521,
-31521,
-31521,
-31542,
-31582,
-31582,
-31597,
-31597,
-31597,
-31614,
-31623,
-31645,
-31645,
-31661,
-31661,
-31669,
-31669,
-31676,
-31676,
-31706,
-31720,
-31726,
-31743,
-31785,
-31804,
-31817,
-31817,
-31835,
-31846,
-31863,
-31885,
-31885,
-31896,
-31907,
-31907,
-31907,
-31922,
-31922,
-31929,
-31929,
-31929,
-31936,
-31943,
-31949,
-31949,
-31949,
-31959,
-32006,
-32024,
-32031,
-32031,
-32038,
-32063,
-32095,
-32095,
-32105,
-32105,
-32105,
-32105,
-32105,
-32125,
-32134,
-32140,
-32176,
-32185,
-32195,
-32195,
-32195,
-32195,
-32202,
-32202,
-32218,
-32236,
-32259,
+31338,
+31362,
+31362,
+31381,
+31400,
+31412,
+31412,
+31412,
+31412,
+31412,
+31425,
+31443,
+31465,
+31465,
+31486,
+31486,
+31486,
+31486,
+31493,
+31493,
+31500,
+31510,
+31533,
+31550,
+31560,
+31567,
+31615,
+31622,
+31636,
+31636,
+31646,
+31674,
+31686,
+31724,
+31759,
+31764,
+31795,
+31802,
+31809,
+31819,
+31831,
+31871,
+31871,
+31871,
+31888,
+31903,
+31917,
+31944,
+31958,
+31969,
+31969,
+31987,
+31994,
+31994,
+32001,
+32008,
+32040,
+32065,
+32065,
+32065,
+32082,
+32082,
+32082,
+32104,
+32122,
+32139,
+32139,
+32139,
+32163,
+32167,
+32167,
+32167,
+32180,
+32210,
+32210,
+32244,
+32263,
32294,
-32300,
-32305,
-32305,
-32305,
-32323,
-32337,
-32352,
-32359,
-32374,
-32381,
-32388,
-32388,
-32388,
-32402,
-32402,
-32402,
-32402,
-32418,
-32428,
-32428,
-32428,
-32450,
-32450,
-32450,
-32462,
-32467,
-32480,
-32480,
-32480,
-32487,
-32502,
-32509,
-32525,
-32560,
-32570,
-32583,
-32597,
-32623,
-32637,
-32644,
-32667,
-32707,
-32725,
-32725,
-32747,
-32747,
-32751,
-32758,
-32789,
-32807,
-32824,
-32824,
-32824,
-32824,
-32843,
-32843,
-32850,
-32876,
-32908,
-32915,
-32946,
-32965,
-32965,
-32982,
-33002,
-33009,
-33029,
-33064,
-33084,
-33098,
-33098,
-33098,
-33098,
-33110,
-33110,
-33151,
-33158,
-33180,
-33198,
-33205,
-33227,
-33227,
-33237,
-33237,
-33253,
-33258,
+32322,
+32329,
+32329,
+32343,
+32350,
+32350,
+32376,
+32405,
+32415,
+32452,
+32452,
+32461,
+32461,
+32461,
+32468,
+32482,
+32505,
+32512,
+32529,
+32540,
+32553,
+32553,
+32559,
+32577,
+32600,
+32600,
+32607,
+32624,
+32636,
+32636,
+32654,
+32654,
+32660,
+32672,
+32672,
+32672,
+32692,
+32692,
+32717,
+32717,
+32729,
+32736,
+32736,
+32736,
+32736,
+32743,
+32764,
+32764,
+32771,
+32783,
+32783,
+32805,
+32820,
+32847,
+32873,
+32892,
+32906,
+32906,
+32925,
+32943,
+32959,
+32959,
+32975,
+32975,
+32975,
+32981,
+32981,
+32981,
+32981,
+32986,
+32986,
+32998,
+32998,
+33008,
+33008,
+33031,
+33037,
+33037,
+33052,
+33052,
+33058,
+33058,
+33066,
+33066,
+33073,
+33101,
+33138,
+33138,
+33138,
+33156,
+33184,
+33209,
+33216,
+33232,
+33252,
33277,
-33292,
-33315,
+33277,
+33296,
33315,
-33333,
-33348,
-33348,
-33348,
-33348,
-33348,
-33348,
-33348,
-33355,
-33355,
-33355,
-33390,
-33408,
-33423,
-33437,
-33452,
-33458,
-33465,
-33480,
-33480,
+33321,
+33328,
+33340,
+33360,
+33372,
+33372,
+33372,
+33372,
+33372,
+33413,
+33422,
+33422,
+33422,
+33422,
+33443,
+33450,
+33450,
+33461,
+33461,
+33467,
+33474,
+33474,
33487,
-33494,
-33504,
-33511,
-33551,
-33551,
-33558,
-33589,
-33595,
-33595,
-33602,
-33627,
-33644,
-33668,
-33668,
-33668,
-33676,
-33676,
-33716,
-33728,
-33747,
+33498,
+33506,
+33513,
+33513,
+33519,
+33564,
+33575,
+33590,
+33608,
+33608,
+33626,
+33626,
+33648,
+33670,
+33670,
+33682,
+33682,
+33689,
+33689,
+33689,
+33689,
+33689,
+33689,
+33719,
+33731,
33747,
-33769,
-33775,
-33789,
-33803,
-33803,
-33810,
-33810,
-33810,
-33820,
-33820,
-33820,
-33820,
-33843,
-33843,
-33843,
-33879,
-33889,
-33889,
-33889,
-33903,
-33917,
-33931,
-33959,
-33993,
-34000,
-34014,
-34037,
-34043,
-34055,
-34055,
-34077,
-34083,
-34090,
-34099,
-34099,
-34115,
-34115,
-34133,
-34140,
-34167,
-34172,
-34184,
-34221,
-34245,
-34252,
-34252,
-34259,
-34318,
-34318,
-34325,
-34325,
-34352,
-34400,
-34415,
-34422,
-34422,
-34431,
-34438,
-34445,
-34445,
-34473,
-34473,
-34489,
-34489,
-34489,
-34489,
-34499,
-34499,
-34499,
-34516,
-34536,
-34551,
-34564,
+33752,
+33752,
+33766,
+33772,
+33772,
+33784,
+33822,
+33822,
+33833,
+33839,
+33839,
+33850,
+33850,
+33868,
+33886,
+33902,
+33902,
+33909,
+33918,
+33951,
+33970,
+33970,
+33970,
+34021,
+34021,
+34021,
+34045,
+34052,
+34052,
+34078,
+34096,
+34096,
+34096,
+34096,
+34108,
+34108,
+34121,
+34121,
+34127,
+34127,
+34127,
+34144,
+34157,
+34157,
+34157,
+34169,
+34169,
+34178,
+34201,
+34201,
+34231,
+34241,
+34241,
+34241,
+34241,
+34256,
+34267,
+34277,
+34287,
+34287,
+34287,
+34315,
+34333,
+34333,
+34333,
+34333,
+34374,
+34408,
+34421,
+34421,
+34421,
+34421,
+34439,
+34439,
+34449,
+34460,
+34483,
+34492,
+34507,
+34507,
+34533,
+34548,
+34548,
+34557,
+34557,
+34580,
+34580,
+34580,
+34580,
34580,
34580,
34580,
-34589,
-34589,
-34589,
-34613,
-34648,
-34648,
-34648,
-34655,
+34599,
+34609,
+34609,
+34630,
+34630,
+34649,
34664,
-34681,
-34681,
-34698,
-34698,
-34720,
-34736,
-34749,
-34749,
-34765,
-34778,
-34785,
-34795,
-34819,
-34819,
-34829,
-34841,
-34848,
-34854,
-34854,
-34854,
-34878,
-34894,
-34894,
-34900,
-34917,
-34934,
-34940,
-34970,
-34998,
-34998,
-35004,
-35004,
-35012,
-35012,
-35012,
-35020,
-35020,
-35032,
-35038,
-35062,
-35062,
-35062,
-35068,
-35068,
-35082,
-35092,
-35096,
-35107,
-35118,
-35134,
-35155,
-35155,
-35166,
-35178,
-35178,
-35195,
-35201,
-35201,
-35201,
-35226,
-35226,
-35226,
-35226,
-35256,
-35262,
-35272,
-35280,
-35299,
-35332,
-35354,
-35354,
-35354,
-35370,
-35386,
-35417,
-35417,
-35460,
-35473,
+34664,
+34700,
+34706,
+34706,
+34706,
+34706,
+34706,
+34706,
+34719,
+34719,
+34726,
+34753,
+34775,
+34780,
+34805,
+34820,
+34830,
+34855,
+34861,
+34890,
+34896,
+34896,
+34908,
+34908,
+34913,
+34926,
+34926,
+34932,
+34961,
+34971,
+34982,
+34982,
+35000,
+35000,
+35005,
+35015,
+35050,
+35060,
+35111,
+35123,
+35152,
+35158,
+35192,
+35205,
+35225,
+35245,
+35271,
+35290,
+35337,
+35345,
+35345,
+35355,
+35355,
+35355,
+35368,
+35378,
+35378,
+35378,
+35378,
+35403,
+35413,
+35453,
+35453,
+35453,
+35472,
+35472,
+35472,
+35472,
+35472,
+35472,
+35472,
35478,
-35495,
-35504,
-35504,
-35518,
-35552,
-35589,
-35624,
-35624,
-35637,
-35637,
-35643,
-35643,
-35669,
-35682,
-35695,
-35702,
-35709,
-35709,
-35726,
-35739,
+35509,
+35509,
+35522,
+35522,
+35539,
+35539,
+35548,
+35558,
+35569,
+35584,
+35601,
+35607,
+35607,
+35615,
+35615,
+35640,
+35640,
+35648,
+35648,
+35657,
+35672,
+35672,
+35686,
+35686,
+35686,
+35703,
+35708,
+35708,
+35724,
+35724,
35749,
35756,
-35756,
-35778,
-35803,
-35810,
-35829,
-35883,
-35899,
-35905,
-35911,
-35911,
-35923,
-35947,
-35954,
-35980,
-35987,
-36034,
-36052,
-36063,
-36095,
-36106,
-36106,
-36113,
-36120,
-36140,
-36140,
-36153,
-36160,
-36160,
-36167,
-36203,
-36203,
-36218,
-36218,
-36225,
-36253,
+35773,
+35779,
+35779,
+35779,
+35779,
+35785,
+35785,
+35785,
+35785,
+35801,
+35834,
+35834,
+35834,
+35834,
+35882,
+35925,
+35958,
+35995,
+36055,
+36055,
+36055,
+36061,
+36092,
+36108,
+36124,
+36124,
+36144,
+36144,
+36144,
+36144,
+36169,
+36189,
+36196,
+36202,
36259,
-36284,
-36296,
-36310,
-36324,
-36331,
-36344,
-36367,
-36367,
-36367,
-36412,
-36412,
-36422,
-36463,
-36463,
-36463,
-36479,
-36490,
-36513,
-36520,
-36520,
-36527,
-36527,
-36527,
-36540,
-36574,
-36594,
-36594,
-36605,
-36621,
-36621,
-36641,
-36641,
-36641,
-36659,
-36682,
-36682,
-36682,
-36682,
-36705,
-36705,
-36705,
-36720,
-36720,
-36755,
-36755,
-36771,
-36771,
-36771,
-36788,
-36806,
-36835,
+36276,
+36292,
+36328,
+36328,
+36328,
+36328,
+36328,
+36328,
+36335,
+36346,
+36346,
+36356,
+36356,
+36356,
+36356,
+36380,
+36386,
+36398,
+36414,
+36427,
+36427,
+36438,
+36460,
+36471,
+36489,
+36517,
+36536,
+36561,
+36578,
+36584,
+36622,
+36622,
+36628,
+36628,
+36640,
+36640,
+36640,
+36649,
+36654,
+36672,
+36683,
+36696,
+36706,
+36706,
+36718,
+36718,
+36718,
+36743,
+36769,
+36781,
+36814,
+36814,
+36823,
36845,
-36875,
-36875,
-36903,
-36921,
-36928,
-36928,
-36940,
-36940,
-36940,
-36966,
+36854,
+36867,
+36867,
+36867,
+36867,
+36867,
+36867,
+36867,
+36882,
+36882,
+36911,
+36916,
+36916,
+36939,
+36954,
+36954,
36966,
36973,
-36983,
-36998,
-37004,
+36973,
+36984,
+36984,
+37008,
+37014,
+37014,
37014,
37024,
-37024,
-37032,
-37038,
-37038,
-37061,
-37074,
-37074,
-37091,
-37098,
-37105,
-37105,
-37133,
-37141,
-37141,
+37037,
+37043,
+37043,
+37043,
+37049,
+37049,
+37054,
+37054,
+37054,
+37064,
+37064,
+37064,
+37089,
+37111,
+37111,
+37131,
+37131,
+37131,
+37131,
37148,
-37191,
-37191,
-37197,
-37197,
-37210,
-37224,
-37224,
-37231,
-37250,
-37257,
-37273,
-37273,
-37280,
-37287,
-37294,
-37300,
-37307,
-37330,
-37348,
-37348,
-37359,
-37359,
-37359,
-37377,
-37392,
-37398,
-37412,
-37431,
-37469,
-37486,
-37508,
-37517,
-37535,
-37535,
-37542,
+37159,
+37165,
+37165,
+37165,
+37165,
+37165,
+37165,
+37184,
+37190,
+37207,
+37207,
+37207,
+37252,
+37252,
+37266,
+37290,
+37290,
+37301,
+37301,
+37301,
+37301,
+37310,
+37310,
+37310,
+37310,
+37310,
+37310,
+37310,
+37310,
+37323,
+37323,
+37323,
+37323,
+37323,
+37323,
+37329,
+37329,
+37329,
+37329,
+37329,
+37344,
+37344,
+37353,
+37353,
+37371,
+37382,
+37395,
+37395,
+37395,
+37395,
+37406,
+37436,
+37479,
+37489,
+37489,
+37489,
+37499,
37542,
-37549,
-37549,
-37549,
-37549,
-37556,
-37576,
-37576,
-37583,
-37590,
-37597,
-37604,
-37604,
-37621,
-37635,
-37676,
-37676,
-37704,
-37711,
+37581,
+37593,
+37593,
+37601,
+37601,
+37618,
+37618,
+37624,
+37624,
+37624,
+37641,
+37641,
+37641,
+37667,
+37667,
+37714,
37728,
37728,
-37737,
-37737,
-37737,
-37750,
-37757,
-37778,
-37785,
-37785,
-37819,
-37826,
-37833,
-37843,
-37850,
-37869,
-37914,
-37921,
+37728,
+37728,
+37728,
+37728,
+37728,
+37741,
+37756,
+37767,
+37767,
+37783,
+37789,
+37789,
+37800,
+37807,
+37824,
+37824,
+37839,
+37874,
+37888,
+37888,
+37888,
+37899,
+37910,
+37910,
+37910,
+37910,
37935,
-37942,
-37949,
-37982,
-38013,
-38013,
-38013,
-38023,
-38057,
-38077,
-38097,
-38110,
-38117,
-38123,
-38133,
-38133,
-38133,
-38140,
-38140,
-38148,
-38159,
-38179,
-38192,
-38205,
-38218,
-38218,
-38218,
-38218,
-38218,
-38218,
-38218,
-38218,
-38218,
-38218,
-38218,
-38218,
-38225,
-38225,
-38230,
-38246,
-38258,
-38280,
-38287,
-38294,
-38294,
-38294,
-38301,
-38318,
-38318,
-38340,
-38371,
-38371,
-38384,
-38420,
-38440,
-38453,
+37943,
+37961,
+37961,
+37973,
+37973,
+37973,
+37973,
+37991,
+37991,
+37991,
+38004,
+38039,
+38039,
+38061,
+38061,
+38072,
+38078,
+38089,
+38112,
+38125,
+38165,
+38165,
+38165,
+38165,
+38177,
+38177,
+38195,
+38195,
+38206,
+38206,
+38206,
+38206,
+38206,
+38213,
+38219,
+38227,
+38227,
+38238,
+38250,
+38259,
+38268,
+38268,
+38302,
+38313,
+38313,
+38326,
+38352,
+38366,
+38391,
+38391,
+38400,
+38400,
+38434,
+38434,
+38445,
+38455,
+38475,
38481,
-38506,
-38522,
-38534,
-38559,
-38559,
-38559,
-38564,
-38564,
-38581,
-38604,
-38604,
-38611,
-38620,
-38626,
-38635,
-38635,
-38635,
-38666,
-38674,
-38688,
-38693,
-38710,
-38722,
-38722,
-38722,
-38729,
-38734,
-38752,
-38792,
-38818,
+38493,
+38493,
+38493,
+38525,
+38525,
+38525,
+38525,
+38525,
+38536,
+38552,
+38567,
+38579,
+38586,
+38586,
+38586,
+38601,
+38606,
+38628,
+38660,
+38670,
+38670,
+38670,
+38701,
+38707,
+38707,
+38725,
+38759,
+38773,
+38780,
+38802,
+38802,
+38809,
+38809,
+38819,
38825,
+38835,
+38835,
+38851,
+38851,
+38851,
+38851,
+38861,
38861,
-38902,
-38934,
-38949,
-38949,
-38960,
-38969,
-38985,
-38985,
-38996,
-39013,
-39024,
-39024,
+38867,
+38879,
+38879,
+38891,
+38911,
+38917,
+38929,
+38929,
+38951,
+38951,
+38958,
+38964,
+38964,
+38964,
+38964,
+38964,
+38973,
+38973,
+38973,
+38983,
+39008,
+39008,
+39008,
39032,
-39061,
-39074,
-39089,
-39123,
-39123,
-39123,
-39140,
-39161,
-39180,
-39206,
-39215,
-39254,
-39261,
-39277,
-39284,
-39314,
-39314,
+39039,
+39045,
+39055,
+39070,
+39070,
+39099,
+39117,
+39122,
+39122,
+39122,
+39122,
+39122,
+39122,
+39142,
+39162,
+39162,
+39162,
+39162,
+39172,
+39172,
+39178,
+39194,
+39205,
+39205,
+39232,
+39232,
+39241,
+39259,
+39259,
+39290,
+39290,
+39290,
+39290,
+39306,
+39306,
+39306,
+39312,
+39312,
+39322,
+39322,
39330,
-39340,
-39340,
-39371,
-39371,
+39341,
+39360,
+39367,
+39382,
39392,
-39430,
-39430,
-39437,
-39444,
-39461,
-39468,
-39468,
-39485,
-39517,
-39524,
-39538,
-39543,
-39548,
-39555,
-39581,
-39588,
-39588,
-39609,
-39609,
+39404,
+39431,
+39445,
+39454,
+39469,
+39469,
+39469,
+39469,
+39469,
+39482,
+39500,
+39500,
+39522,
+39532,
+39532,
+39551,
+39575,
+39597,
+39597,
+39597,
39616,
-39652,
-39670,
-39677,
-39677,
-39684,
-39691,
+39627,
+39627,
+39675,
+39675,
39702,
-39717,
-39717,
-39717,
-39724,
-39749,
-39760,
-39766,
-39775,
-39791,
-39791,
-39814,
-39827,
-39827,
-39837,
-39859};
+39718,
+39732,
+39732,
+39741,
+39741,
+39748,
+39793,
+39793,
+39793,
+39793,
+39793,
+39804,
+39804,
+39828,
+39828,
+39843,
+39850,
+39861,
+39861,
+39884,
+39899,
+39923,
+39944,
+39944,
+39954,
+39991,
+39991,
+40001,
+40001,
+40001,
+40001,
+40001,
+40007,
+40007,
+40007,
+40025,
+40025,
+40025,
+40037,
+40037,
+40037,
+40037,
+40048,
+40048,
+40048,
+40065,
+40065,
+40076,
+40098,
+40098,
+40108,
+40108,
+40124,
+40140,
+40158,
+40158,
+40170,
+40184,
+40184,
+40198,
+40211,
+40218,
+40244,
+40261,
+40261,
+40268,
+40268,
+40281,
+40293,
+40293,
+40302,
+40312,
+40324,
+40324,
+40324,
+40324,
+40324,
+40324,
+40324,
+40324,
+40324,
+40324,
+40324,
+40340,
+40340,
+40347,
+40354,
+40368,
+40368,
+40368,
+40384,
+40384,
+40384,
+40402,
+40412,
+40427,
+40459,
+40459,
+40475,
+40488,
+40488,
+40513,
+40528,
+40556,
+40565,
+40581,
+40581,
+40609,
+40609,
+40609,
+40609,
+40609,
+40633,
+40633,
+40643,
+40652,
+40652,
+40662,
+40662,
+40662,
+40662,
+40669,
+40669,
+40682,
+40682,
+40692,
+40716,
+40733,
+40733,
+40754,
+40781,
+40804,
+40829,
+40829,
+40858,
+40858,
+40858,
+40858,
+40869,
+40881,
+40881,
+40885,
+40895,
+40914,
+40933,
+40945,
+40955,
+40970,
+40970,
+40990,
+41019,
+41019,
+41030,
+41030,
+41036,
+41055,
+41055,
+41055,
+41070,
+41085,
+41091,
+41091,
+41097,
+41122,
+41128,
+41151,
+41151,
+41173,
+41173,
+41173,
+41202,
+41202,
+41212,
+41212,
+41212,
+41212,
+41212,
+41224,
+41238,
+41246,
+41274,
+41274,
+41286,
+41294,
+41305,
+41305,
+41320,
+41320,
+41320,
+41337,
+41350,
+41350,
+41379,
+41392,
+41392,
+41418,
+41430,
+41438,
+41438,
+41438,
+41453,
+41465,
+41513,
+41513,
+41520,
+41520,
+41520,
+41520,
+41530,
+41530,
+41530,
+41555,
+41583,
+41583,
+41583,
+41583,
+41583,
+41583,
+41583,
+41623,
+41623,
+41623,
+41633,
+41645,
+41645,
+41645,
+41645,
+41665,
+41689,
+41689,
+41689,
+41689,
+41689,
+41689,
+41689,
+41700,
+41728,
+41736,
+41736,
+41736,
+41736,
+41736,
+41736,
+41751,
+41773,
+41787,
+41801,
+41801,
+41848,
+41877,
+41877,
+41877,
+41877,
+41888,
+41902,
+41923,
+41992,
+41992,
+42011,
+42016,
+42016,
+42024,
+42024,
+42034,
+42047,
+42079,
+42098,
+42111,
+42111,
+42127,
+42133,
+42156,
+42191,
+42191,
+42191,
+42191,
+42191,
+42208,
+42208,
+42208,
+42208,
+42208,
+42208,
+42229,
+42229,
+42244,
+42270,
+42281,
+42296,
+42316,
+42316,
+42337,
+42363,
+42372,
+42372,
+42372,
+42372,
+42387,
+42394,
+42400,
+42412,
+42412,
+42423,
+42430,
+42456,
+42456,
+42474,
+42491,
+42503,
+42522,
+42522,
+42522,
+42540,
+42572,
+42581,
+42588,
+42605,
+42618,
+42683,
+42697,
+42697,
+42697,
+42714,
+42719,
+42743,
+42743,
+42743,
+42768,
+42768,
+42795,
+42808,
+42815,
+42815,
+42815,
+42843,
+42843,
+42877,
+42884,
+42899,
+42899,
+42913,
+42933,
+42956,
+42986,
+42997,
+42997,
+43004,
+43026,
+43046,
+43058,
+43058,
+43089,
+43113,
+43143,
+43150,
+43169,
+43191,
+43210,
+43217,
+43224,
+43234,
+43270,
+43287,
+43323,
+43323,
+43330,
+43340,
+43340,
+43359,
+43359,
+43359,
+43372,
+43372,
+43400,
+43411,
+43443,
+43459,
+43459,
+43459,
+43475,
+43475,
+43508,
+43508,
+43515,
+43515,
+43525,
+43541,
+43558,
+43570,
+43570,
+43587,
+43606,
+43655,
+43655,
+43661,
+43674,
+43674,
+43674,
+43680,
+43680,
+43694,
+43704,
+43715,
+43732,
+43743,
+43743,
+43771,
+43771,
+43801,
+43801,
+43828,
+43840,
+43851,
+43886,
+43904,
+43917,
+43940,
+43947,
+43961,
+43975,
+43993,
+43993,
+44007,
+44007,
+44031,
+44038,
+44045,
+44052,
+44052,
+44052,
+44070,
+44077,
+44104,
+44116,
+44130,
+44137,
+44144,
+44170,
+44186,
+44193,
+44193,
+44226,
+44250,
+44271,
+44278,
+44285,
+44285,
+44300,
+44307,
+44349,
+44363,
+44369,
+44369,
+44388,
+44419,
+44442,
+44467,
+44513};
static const char tldData[] = {
-"com.cn\0"
-"com.co\0"
-"hb.cn\0"
-"med.br\0conf.lv\0wallonie.museum\0"
-"namsos.no\0"
-"\xe7\xb6\xb2\xe7\xbb\x9c.hk\0farmers.museum\0rel.pl\0"
-"com.cu\0"
-"military.museum\0"
-"*.jm\0convent.museum\0cymru.museum\0malvik.no\0"
-"univ.sn\0"
-"gliding.aero\0"
-"wodzislaw.pl\0"
-"com.dm\0!pref.iwate.jp\0tran\xc3\xb8y.no\0pila.pl\0"
-"mb.it\0*.ke\0lib.ri.us\0"
-"com.ec\0*.kh\0tr\xc3\xb8gstad.no\0"
-"com.ee\0"
-"mobi.gp\0"
-"gran.no\0"
-"wa.gov.au\0"
-"com.dz\0kg.kr\0"
-"zoological.museum\0gjerstad.no\0haugesund.no\0kharkov.ua\0"
-"walbrzych.pl\0"
-"civilization.museum\0"
-"ha.no\0"
-"*.kw\0"
-"med.ec\0com.es\0"
-"med.ee\0otago.museum\0svelvik.no\0"
-"art.ht\0amber.museum\0elvendrell.museum\0rost.no\0"
-"jx.cn\0gratangen.no\0"
-"association.aero\0ca.it\0"
-"zaporizhzhe.ua\0"
-"com.fr\0"
-"szex.hu\0"
-"e-burg.ru\0"
-"com.ge\0bokn.no\0"
-"mordovia.ru\0"
-"com.gh\0*.mm\0"
-"com.gi\0z.se\0"
-"cahcesuolo.no\0"
-"hurdal.no\0joshkar-ola.ru\0"
-"cadaques.museum\0ma.us\0"
-"a.bg\0"
-"com.gn\0bozen.it\0tambov.ru\0"
-"*.gifu.jp\0*.tokyo.jp\0*.mt\0"
-"com.gp\0travel\0cc.tx.us\0"
-"com.gr\0hemne.no\0"
-"*.ni\0"
-"*.mz\0"
-"cc.il.us\0"
+"gov.ir\0karpacz.pl\0"
+"com.cn\0gov.is\0int.lk\0"
+"com.co\0gov.it\0!nls.uk\0"
+"gov.je\0"
+"hvaler.no\0"
+"prd.fr\0kvinnherad.no\0"
+"com.cu\0or.ug\0"
+"bible.museum\0"
+"*.kobe.jp\0bergen.no\0chernovtsy.ua\0"
+"gouv.bj\0or.tz\0"
+"karate.museum\0naturhistorisches.museum\0swiebodzin.pl\0"
+"gov.jo\0"
+"com.dm\0"
+"salvadordali.museum\0kvitsoy.no\0"
+"com.do\0"
+"pa.it\0or.us\0"
+"gov.kg\0lardal.no\0"
+"com.ec\0"
+"gov.ki\0"
+"com.ee\0tysfjord.no\0"
+"turek.pl\0"
+"gouv.ci\0com.eg\0"
+"gov.km\0skjak.no\0"
+"gov.kn\0int.mv\0somna.no\0"
+"journalist.aero\0com.dz\0int.mw\0"
+"gov.kp\0"
+"gov.la\0"
+"gov.lb\0"
+"gov.lc\0grandrapids.museum\0"
+"biella.it\0"
+"center.museum\0harvestcelebration.museum\0"
+"lib.mn.us\0"
+"com.es\0"
+"gov.ky\0"
+"*.tottori.jp\0gov.kz\0h\xc3\xb8nefoss.no\0"
+"lt.it\0gov.lk\0me.us\0is-an-anarchist.com\0"
+"vic.au\0"
+"rome.it\0"
+"oppeg\xc3\xa5rd.no\0"
+"gov.ma\0ilawa.pl\0"
+"gov.lr\0"
+"gov.lt\0"
+"mobi.gp\0gov.me\0hjelmeland.no\0"
+"gov.lv\0"
+"com.fr\0gov.mg\0"
+"gov.ly\0from-wi.com\0"
+"s.bg\0com.ge\0"
+"gov.mk\0intelligence.museum\0"
+"gov.ml\0melhus.no\0"
+"com.gh\0"
+"com.gi\0gov.mn\0"
+"gov.mo\0"
+"ambulance.aero\0"
+"stuff-4-sale.org\0"
+"gov.mr\0bokn.no\0univ.sn\0"
+"com.gn\0basel.museum\0"
+"te.ua\0"
+"com.gp\0gov.mu\0annefrank.museum\0"
+"vicenza.it\0gov.mv\0"
+"com.gr\0education.museum\0gov.mw\0gov.ng\0"
+"*.saga.jp\0england.museum\0"
+"gov.my\0"
+"hotel.lk\0"
+"int.pt\0"
+"nannestad.no\0"
"com.gy\0"
-"zj.cn\0oksnes.no\0museum.tt\0"
-"com.hk\0*.np\0"
-"rc.it\0baseball.museum\0"
-"com.hn\0exhibition.museum\0"
-"h\xc3\xa1""bmer.no\0"
+"com.hk\0"
+"!uba.ar\0"
+"research.aero\0a\xc3\xa9roport.ci\0gov.nr\0lib.tn.us\0"
+"com.hn\0prd.km\0"
+"udine.it\0podzone.net\0"
"com.hr\0"
-"fg.it\0stathelle.no\0defense.tn\0"
+"flor\xc3\xb8.no\0dn.ua\0"
"com.ht\0"
-"qld.gov.au\0*.nz\0"
-"davvenj\xc3\xa1rga.no\0*.om\0"
-"vang.no\0"
-"*.kumamoto.jp\0"
-"vercelli.it\0usenet.pl\0"
-"com.io\0stalbans.museum\0"
-"com.iq\0"
-"*.pg\0"
-"com.is\0klabu.no\0skiptvet.no\0"
-"med.ht\0field.museum\0"
-"gr.it\0gj\xc3\xb8vik.no\0tromsa.no\0lib.mi.us\0"
-"ca.na\0"
-"hagebostad.no\0k12.ma.us\0"
-"*.qa\0"
-"*.niigata.jp\0"
-"monzaebrianza.it\0com.jo\0comunica\xc3\xa7\xc3\xb5""es.museum\0"
-"gr.jp\0"
-"ballangen.no\0*.py\0"
-"scienceandindustry.museum\0"
-"nuoro.it\0com.kg\0"
-"com.ki\0"
-"im.it\0idv.tw\0"
-"*.akita.jp\0com.km\0r\xc3\xb8ros.no\0sopot.pl\0"
-"!pref.yamanashi.jp\0"
-"com.kp\0"
-"!pref.kochi.jp\0com.la\0"
-"com.lb\0"
-"com.lc\0stjordalshalsen.no\0sigdal.no\0cc.nm.us\0"
-"samnanger.no\0"
-"drobak.no\0"
-"vt.it\0"
-"catering.aero\0com.ky\0"
-"com.kz\0cc.ca.us\0"
-"com.lk\0"
-"grosseto.it\0mosvik.no\0"
-"namsskogan.no\0"
-"loten.no\0"
-"chirurgiens-dentistes.fr\0"
-"com.lr\0bremanger.no\0"
-"gs.cn\0"
-"com.lv\0lib.co.us\0"
-"com.mg\0"
-"passenger-association.aero\0"
-"com.ly\0yekaterinburg.ru\0"
-"vladivostok.ru\0"
-"com.mk\0beeldengeluid.museum\0"
-"com.ml\0"
-"art.pl\0"
-"com.mo\0"
-"britishcolumbia.museum\0tx.us\0"
-"com.na\0sakhalin.ru\0*.sv\0"
-"mc.it\0"
-"amsterdam.museum\0udm.ru\0"
-"com.mu\0"
+"fin.ec\0"
+"nativeamerican.museum\0"
+"gs.nl.no\0suldal.no\0fareast.ru\0"
+"carrara-massa.it\0varese.it\0"
+"warszawa.pl\0"
+"matta-varjjat.no\0"
+"com.io\0matera.it\0"
+"com.iq\0brunel.museum\0"
+"com.is\0*.kumamoto.jp\0gov.ph\0"
+"monzaedellabrianza.it\0"
+"gov.pk\0"
+"idv.hk\0gov.pl\0nakhodka.ru\0"
+"prd.mg\0int.ru\0"
+"gov.pn\0cpa.pro\0"
+"orland.no\0int.rw\0"
+"olawa.pl\0"
+"gov.pr\0isa-hockeynut.com\0"
+"gov.ps\0"
+"com.jo\0gov.pt\0"
+"saratov.ru\0"
+"school.na\0"
+"sm\xc3\xb8la.no\0"
+"com.kg\0"
+"k12.ia.us\0"
+"com.ki\0pacific.museum\0"
+"ap.it\0moma.museum\0kostroma.ru\0"
+"!siemens.om\0"
+"com.km\0circus.museum\0int.tj\0zhitomir.ua\0"
+"stavropol.ru\0"
+"com.kp\0is-a-player.com\0"
+"com.la\0"
+"com.lb\0cincinnati.museum\0"
+"firenze.it\0com.lc\0"
+"savona.it\0t.se\0"
+"int.tt\0"
+"pescara.it\0"
+"com.ky\0"
+"com.kz\0"
+"com.lk\0servegame.org\0"
+"fermo.it\0vennesla.no\0gov.sa\0"
+"gov.sb\0"
+"gov.rs\0gov.sc\0"
+"gov.sd\0"
+"hotel.hu\0gov.ru\0"
+"sshn.se\0blogsite.org\0"
+"com.lr\0lerdal.no\0gov.rw\0gov.sg\0"
+"*.shimane.jp\0abo.pa\0"
+"bus.museum\0"
+"com.lv\0"
+"com.mg\0gov.sl\0"
+"com.ly\0"
+"com.mk\0"
+"com.ml\0st.no\0"
+"com.mo\0habmer.no\0gov.st\0"
+"\xe7\xbd\x91\xe7\xbb\x9c.cn\0cmw.ru\0is-a-bookkeeper.com\0"
+"com.na\0int.vn\0"
+"doesntexist.com\0"
+"k12.pa.us\0"
+"gov.sy\0"
+"com.mu\0farmers.museum\0gov.tj\0ia.us\0gotdns.org\0"
"com.mv\0com.nf\0"
-"com.mw\0com.ng\0il.us\0"
-"geometre-expert.fr\0com.mx\0"
-"med.ly\0com.my\0"
-"ag.it\0"
-"*.tr\0"
-"!pref.oita.jp\0"
-"hoyanger.no\0skedsmo.no\0"
-"com.nr\0turystyka.pl\0"
-"koebenhavn.museum\0"
-"quebec.museum\0"
-"stord.no\0*.uk\0"
-"act.au\0"
-"br.it\0cb.it\0gyeonggi.kr\0jobs.tt\0lib.hi.us\0"
-"*.ve\0"
-"*.saga.jp\0wildlife.museum\0com.pa\0"
-"monzabrianza.it\0sciencehistory.museum\0stange.no\0oskol.ru\0principe.st\0*.uy\0"
-"plaza.museum\0com.pe\0"
-"com.pf\0"
-"eigersund.no\0"
+"fortmissoula.museum\0com.mw\0com.ng\0gov.tl\0"
+"stateofdelaware.museum\0com.mx\0"
+"com.my\0gov.tn\0"
+"gov.to\0"
+"namdalseid.no\0cc.ar.us\0"
+"kemerovo.ru\0gov.ua\0"
+"pavia.it\0turin.it\0"
+"childrensgarden.museum\0sciencecenter.museum\0gov.tt\0"
+"principe.st\0"
+"lucca.it\0"
+"com.nr\0gov.tw\0"
+"modern.museum\0"
+"lib.ga.us\0"
+"fc.it\0gorlice.pl\0"
+"rm.it\0"
+"otago.museum\0"
+"celtic.museum\0sciencecenters.museum\0khmelnitskiy.ua\0gov.vc\0"
+"sibenik.museum\0"
+"com.pa\0"
+"cc.wy.us\0"
+"sandiego.museum\0podlasie.pl\0"
+"asso.fr\0"
+"com.pe\0"
+"v\xc3\xa5gs\xc3\xb8y.no\0com.pf\0is-into-cartoons.com\0"
"com.ph\0"
-"manx.museum\0marylhurst.museum\0"
-"md.ci\0pi.it\0schweiz.museum\0com.pk\0"
-"grp.lk\0fr\xc3\xb8ya.no\0com.pl\0press.se\0"
-"us.com\0"
-"b.bg\0cremona.it\0communication.museum\0art.sn\0"
-"med.pa\0"
-"com.pr\0"
+"gov.vn\0"
+"act.au\0com.pk\0is-a-chef.org\0"
+"ascolipiceno.it\0hammerfest.no\0com.pl\0lib.pr.us\0"
+"rockart.museum\0"
+"opole.pl\0k12.wa.us\0"
+"science-fiction.museum\0ostrowwlkp.pl\0"
+"lunner.no\0pa.us\0"
+"asso.gp\0com.pr\0"
"com.ps\0"
"com.pt\0"
-"k12.in.us\0"
-"ah.cn\0bahcavuotna.no\0"
-"sondrio.it\0arkhangelsk.ru\0"
-"cargo.aero\0"
-"council.aero\0"
-"museum.mv\0hattfjelldal.no\0spydeberg.no\0med.pl\0"
-"niepce.museum\0museum.mw\0"
-"anthropology.museum\0"
-"pharmacien.fr\0smola.no\0"
-"fin.ec\0"
-"selbu.no\0"
-"workinggroup.aero\0nm.us\0"
-"museum.no\0com.re\0"
-"cc.vt.us\0"
-"village.museum\0"
-"ca.us\0"
-"*.sapporo.jp\0"
-"teramo.it\0"
+"tomsk.ru\0"
+"psi.br\0worse-than.tv\0"
+"es.kr\0"
+"money.museum\0"
+"!pref.kanagawa.jp\0rost.no\0"
+"gov.ws\0"
+"mjondalen.no\0"
+"\xe0\xa6\xac\xe0\xa6\xbe\xe0\xa6\x82\xe0\xa6\xb2\xe0\xa6\xbe\0"
+"sld.do\0"
+"*.miyazaki.jp\0"
+"mc.it\0eidfjord.no\0wlocl.pl\0com.re\0md.us\0\xe0\xb0\xad\xe0\xb0\xbe\xe0\xb0\xb0\xe0\xb0\xa4\xe0\xb1\x8d\0"
+"asso.ht\0environment.museum\0is-an-entertainer.com\0"
+"stokke.no\0"
+"*.yamaguchi.jp\0raholt.no\0"
+"\xe7\xbd\x91\xe7\xbb\x9c.hk\0"
"com.ro\0"
-"*.ye\0"
+"aseral.no\0aknoluokta.no\0"
"com.sa\0"
"com.sb\0"
-"so.it\0com.sc\0"
-"jolster.no\0com.sd\0"
-"com.ru\0"
+"artcenter.museum\0com.sc\0"
+"r.bg\0stjordalshalsen.no\0com.sd\0"
+"cremona.it\0hol.no\0com.ru\0"
+"aerobatic.aero\0"
"com.rw\0com.sg\0"
-"sydney.museum\0"
-"sa.edu.au\0"
-"tom.ru\0"
-"com.sl\0*.za\0"
-"\xe7\xbd\x91\xe7\xb5\xa1.hk\0naturbruksgymn.se\0com.sn\0"
-"assedic.fr\0com.so\0"
-"!pref.mie.jp\0*.yu\0"
-"med.sa\0"
-"newspaper.museum\0holmestrand.no\0dnepropetrovsk.ua\0"
-"christiansburg.museum\0roan.no\0"
-"pesaro-urbino.it\0med.sd\0com.st\0"
-"s\xc3\xb8gne.no\0"
-"nuernberg.museum\0"
-"*.zm\0"
-"com.sy\0"
-"*.nagano.jp\0com.tj\0"
-"nt.gov.au\0news.hu\0paderborn.museum\0"
-"boston.museum\0"
+"!educ.ar\0"
+"*.okinawa.jp\0shell.museum\0"
+"kommunalforbund.se\0wa.us\0"
+"asso.bj\0com.sl\0"
+"botanicalgarden.museum\0com.sn\0"
+"louvre.museum\0com.so\0"
+"e-burg.ru\0"
+"newmexico.museum\0cc.or.us\0"
+"!pref.hiroshima.jp\0"
+"com.st\0"
+"\xc3\xa1laheadju.no\0is-a-caterer.com\0"
+"pharmacien.fr\0mesaverde.museum\0lavagis.no\0"
+"com.sy\0is-a-green.com\0"
+"lans.museum\0com.tj\0"
+"asso.ci\0"
+"\xc3\xb8yer.no\0"
+"dyroy.no\0"
"com.tn\0"
"com.to\0"
-"broadcast.museum\0"
-"com.ua\0"
-"*.zw\0"
-"baikal.ru\0"
-"bykle.no\0com.tt\0"
-"verdal.no\0"
-"roros.no\0"
-"fi.cr\0carboniaiglesias.it\0chuvashia.ru\0com.tw\0"
-"k12.ca.us\0"
-"eidsvoll.no\0"
-"*.ishikawa.jp\0"
-"dolls.museum\0"
-"naval.museum\0"
-"karasjok.no\0tysvar.no\0"
-"bielawa.pl\0com.vc\0"
-"svalbard.no\0deatnu.no\0rnd.ru\0"
-"grandrapids.museum\0"
-"bauern.museum\0k12.pr.us\0"
-"press.ma\0"
-"*.kagawa.jp\0fribourg.museum\0przeworsk.pl\0com.vi\0"
-"com.uz\0"
-"babia-gora.pl\0"
-"com.vn\0"
-"med.pro\0"
-"suedtirol.it\0kursk.ru\0"
+"ss.it\0"
+"axis.museum\0com.ua\0"
+"fr\xc3\xb8ya.no\0com.tt\0"
+"nordreisa.no\0gouv.rw\0"
+"cc.me.us\0"
+"bv.nl\0com.tw\0"
+"*.chiba.jp\0tysv\xc3\xa6r.no\0"
+"oregon.museum\0"
+"como.it\0risor.no\0"
+"gouv.sn\0"
+"etc.br\0pasadena.museum\0"
+"publ.pt\0"
+"santafe.museum\0frogn.no\0komvux.se\0"
+"klabu.no\0is-a-chef.com\0"
+"muosat.no\0"
+"com.vc\0"
+"pv.it\0alaheadju.no\0hemsedal.no\0"
+"zt.ua\0com.vi\0"
+"gwangju.kr\0com.uz\0"
+"asso.dz\0loten.no\0"
+"museumvereniging.museum\0com.vn\0"
+"hembygdsforbund.museum\0"
+"mb.ca\0"
+"idv.tw\0"
+"and.museum\0"
+"zlg.br\0k12.ut.us\0"
+"ao.it\0"
+"nj.us\0"
+"avocat.fr\0averoy.no\0dyndns-web.com\0"
+"km.ua\0"
+"est.pr\0"
+"control.aero\0"
+"bill.museum\0\xe1\x83\x92\xe1\x83\x94\0"
+"s.se\0com.ws\0"
+"casadelamoneda.museum\0vestby.no\0is-a-celticsfan.org\0"
+"org\0"
+"treviso.it\0"
+"bauern.museum\0"
+"fin.tn\0"
+"tempioolbia.it\0trustee.museum\0herad.no\0"
+"mo-i-rana.no\0"
+"mielec.pl\0"
+"railroad.museum\0"
+"\xd8\xaa\xd9\x88\xd9\x86\xd8\xb3\0"
+"ostre-toten.no\0"
+"nature.museum\0"
+"wa.edu.au\0akrehamn.no\0"
+"k\xc3\xa5""fjord.no\0"
+"benevento.it\0"
+"services.aero\0"
+"madrid.museum\0hapmir.no\0"
+"archaeology.museum\0stordal.no\0"
+"mandal.no\0"
+"\xd8\xb3\xd9\x88\xd8\xb1\xd9\x8a\xd8\xa7\0"
+"endofinternet.org\0"
+"\xd8\xb3\xd9\x88\xd8\xb1\xd9\x8a\xd8\xa9\0"
+"l\xc3\xa6rdal.no\0"
+"rnd.ru\0"
+"brindisi.it\0"
"bonn.museum\0"
-"lt.it\0"
-"design.aero\0microlight.aero\0americanantiques.museum\0meland.no\0"
-"insurance.aero\0aarborte.no\0"
-"kh.ua\0"
-"macerata.it\0architecture.museum\0"
-"rovigo.it\0rawa-maz.pl\0"
-"store.nf\0levanger.no\0"
-"b\xc3\xa1jddar.no\0"
-"not.br\0"
-"com.ws\0"
-"!pref.kagawa.jp\0"
-"!omanpost.om\0"
-"vt.us\0"
-"gs.ah.no\0vladikavkaz.ru\0"
-"no.it\0"
-"in.na\0szkola.pl\0a.se\0"
-"aid.pl\0"
-"workshop.museum\0vegarshei.no\0"
-"sund.no\0"
-"bs.it\0flora.no\0"
-"agriculture.museum\0"
-"koeln.museum\0"
-"minnesota.museum\0k12.il.us\0"
-"froya.no\0"
-"aeroport.fr\0"
-"davvenjarga.no\0zgora.pl\0ivano-frankivsk.ua\0"
-"*.gunma.jp\0"
-"amot.no\0"
-"mus.br\0chungbuk.kr\0"
-"ggf.br\0lorenskog.no\0"
-"jeonbuk.kr\0"
-"k12.vi.us\0"
-"c.bg\0sande.more-og-romsdal.no\0"
-"perugia.it\0"
-"massa-carrara.it\0"
-"michigan.museum\0"
-"archaeology.museum\0mosj\xc3\xb8""en.no\0czest.pl\0koenig.ru\0\xe0\xb6\xbd\xe0\xb6\x82\xe0\xb6\x9a\xe0\xb7\x8f\0"
+"schokoladen.museum\0\xc3\xb8vre-eiker.no\0"
+"valley.museum\0"
"mobi.tt\0"
-"kraanghke.no\0"
-"cc.in.us\0"
-"re.it\0lib.vt.us\0"
-"dell-ogliastra.it\0"
-"s\xc3\xb8mna.no\0"
-"k12.wv.us\0"
-"gok.pk\0fh.se\0"
-"luzern.museum\0"
-"fi.it\0swidnica.pl\0"
-"cbg.ru\0"
+"kr\xc3\xa5""anghke.no\0"
+"lindesnes.no\0"
+"coloradoplateau.museum\0"
+"timekeeping.museum\0rade.no\0"
+"lib.co.us\0"
+"ce.it\0"
+"sor-fron.no\0"
+"nord-fron.no\0"
+"!nawras.om\0dyndns-pics.com\0"
+"mel\xc3\xb8y.no\0"
+"logistics.aero\0"
+"!pref.tochigi.jp\0sld.pa\0"
+"journalism.museum\0badaddja.no\0cc.ia.us\0"
+"finn\xc3\xb8y.no\0"
+"b\xc3\xa6rum.no\0meldal.no\0mazury.pl\0"
+"gouv.km\0"
+"biz.bb\0*.hokkaido.jp\0"
+"vyatka.ru\0lib.az.us\0"
+"biz.at\0resistance.museum\0"
+"adygeya.ru\0"
+"balestrand.no\0"
+"mb.it\0"
+"biz.az\0raisa.no\0"
+"zgora.pl\0"
+"gaular.no\0"
+"gs.st.no\0perm.ru\0"
+"culturalcenter.museum\0"
+"yosemite.museum\0"
+"ballooning.aero\0q.bg\0ullensaker.no\0on-the-web.tv\0"
+"sandnessjoen.no\0"
+"gouv.ml\0"
+"hn.cn\0test.tj\0"
+"is-a-guru.com\0"
+"uslivinghistory.museum\0cc.pa.us\0"
+"sport.hu\0kviteseid.no\0"
+"stryn.no\0"
+"rl.no\0"
+"vet.br\0"
+"k12.ny.us\0"
+"ulan-ude.ru\0"
+"rel.ht\0sr.it\0glas.museum\0"
+"mobi.na\0sirdal.no\0"
+"from-de.com\0is-a-socialist.com\0"
+"mer\xc3\xa5ker.no\0oster\xc3\xb8y.no\0"
+"cc.md.us\0"
+"ip6.arpa\0bu.no\0is-very-sweet.org\0"
+"on.ca\0homeunix.net\0"
+"divtasvuodna.no\0"
+"saltdal.no\0smolensk.ru\0"
+"lezajsk.pl\0"
+"oslo.no\0ralingen.no\0"
+"pu.it\0!pref.toyama.jp\0"
+"journal.aero\0stockholm.museum\0washingtondc.museum\0"
+"test.ru\0"
+"from-pr.com\0is-a-painter.com\0"
+"encyclopedic.museum\0cc.wa.us\0"
+"!pref.okinawa.jp\0"
+"educator.aero\0yk.ca\0sassari.it\0jobs.tt\0"
+"chtr.k12.ma.us\0"
+"it.ao\0paroch.k12.ma.us\0"
+"leasing.aero\0!pref.akita.jp\0kl\xc3\xa6""bu.no\0"
+"farmstead.museum\0ski.museum\0asso.re\0k12.vi.us\0"
+"an.it\0"
+"nissedal.no\0"
+"delmenhorst.museum\0"
+"6bone.pl\0"
+"act.edu.au\0"
+"field.museum\0"
+"r.se\0"
+"lib.ee\0"
+"lib.mi.us\0"
+"\xd8\xb9\xd9\x85\xd8\xa7\xd9\x86\0"
+"\xc3\xa1lt\xc3\xa1.no\0"
+"utazas.hu\0wodzislaw.pl\0wv.us\0"
+"floro.no\0"
+"sande.vestfold.no\0"
+"russia.museum\0podzone.org\0"
+"webhop.org\0"
+"vantaa.museum\0"
+"taranto.it\0"
+"baseball.museum\0"
+"!pref.ibaraki.jp\0"
+"\xc3\xb8stre-toten.no\0sosnowiec.pl\0from-mn.com\0"
+"sklep.pl\0"
+"frankfurt.museum\0heroy.nordland.no\0"
+"\xc3\xa5l.no\0"
+"milan.it\0"
+"chelyabinsk.ru\0"
+"cc.nj.us\0"
+"*.gunma.jp\0"
+"bamble.no\0bardu.no\0"
+"palermo.it\0"
+"horten.no\0"
"latina.it\0"
-"vibovalentia.it\0"
-"modum.no\0"
-"safety.aero\0"
-"sp.it\0"
-"science.museum\0ah.no\0"
-"norddal.no\0"
+"biz.ki\0asso.nc\0kursk.ru\0"
+"london.museum\0mx.na\0"
+"gemological.museum\0"
+"trading.aero\0holmestrand.no\0"
+"monza.it\0sec.ps\0is-with-theband.com\0"
+"\xc3\xa5snes.no\0"
+"berlev\xc3\xa5g.no\0powiat.pl\0"
+"biev\xc3\xa1t.no\0"
+"trentino.it\0jevnaker.no\0"
+"ivgu.no\0"
+"grane.no\0tysnes.no\0voss.no\0"
+"caltanissetta.it\0karm\xc3\xb8y.no\0"
+"am.br\0"
+"!pref.iwate.jp\0teaches-yoga.com\0"
+"railway.museum\0rel.pl\0cherkassy.ua\0"
+"\xe0\xae\x9a\xe0\xae\xbf\xe0\xae\x99\xe0\xaf\x8d\xe0\xae\x95\xe0\xae\xaa\xe0\xaf\x8d\xe0\xae\xaa\xe0\xaf\x82\xe0\xae\xb0\xe0\xaf\x8d\0"
+"bt.it\0suedtirol.it\0malselv.no\0"
+"grp.lk\0rennes\xc3\xb8y.no\0"
+"pro\0"
+"teo.br\0"
+"australia.museum\0rana.no\0club.tw\0"
+"lib.ms.us\0lib.nc.us\0"
+"biz.mv\0"
+"biz.mw\0iveland.no\0"
+"\xd9\x85\xd8\xb5\xd8\xb1\0"
+"\xd8\xa7\xd9\x84\xd8\xb3\xd8\xb9\xd9\x88\xd8\xaf\xd9\x8a\xd9\x87\0"
+"defense.tn\0"
+"sebastopol.ua\0"
+"nebraska.museum\0est-a-la-maison.com\0"
+"biz.nr\0mincom.tn\0"
+"does-it.net\0"
+"kharkov.ua\0"
+"p.bg\0"
+"exchange.aero\0"
+"media.museum\0"
+"n\xc3\xa6r\xc3\xb8y.no\0osen.no\0"
+"rnrt.tn\0"
+"in-the-band.net\0"
+"asnes.no\0"
+"nt.edu.au\0tw.cn\0"
+"l\xc3\xb8renskog.no\0"
+"catania.it\0"
+"roan.no\0tatarstan.ru\0!bl.uk\0"
+"bergbau.museum\0biz.pk\0\xd8\xa7\xd9\x84\xd8\xb3\xd8\xb9\xd9\x88\xd8\xaf\xd9\x8a\xd8\xa9\0dontexist.com\0"
+"biz.pl\0is-a-chef.net\0"
+"b\xc3\xa1hcavuotna.no\0hattfjelldal.no\0"
+"ta.it\0biz.pr\0"
+"wiki.br\0asso.km\0oregontrail.museum\0"
+"newhampshire.museum\0"
+"leikanger.no\0"
+"ato.br\0"
+"selbu.no\0"
+"k12.ks.us\0"
+"cz.it\0"
+"pt.it\0kids.museum\0\xc3\xb8ystre-slidre.no\0gos.pk\0"
+"napoli.it\0detroit.museum\0"
+"asso.mc\0"
+"syzran.ru\0"
+"olbiatempio.it\0folldal.no\0"
+"sumy.ua\0"
+"artsandcrafts.museum\0"
+"aero\0flekkefjord.no\0"
+"tana.no\0"
+"jamison.museum\0alstahaug.no\0tom.ru\0"
+"engerdal.no\0homeip.net\0"
+"mobi\0"
+"\xc4\x8d\xc3\xa1hcesuolo.no\0nh.us\0"
+"antiques.museum\0georgia.museum\0"
+"passenger-association.aero\0"
+"luster.no\0"
+"xz.cn\0"
+"paleo.museum\0"
+"olsztyn.pl\0sellsyourhome.org\0"
+"vdonsk.ru\0"
+"living.museum\0"
+"finearts.museum\0"
+"selje.no\0"
+"hanggliding.aero\0eng.br\0kamchatka.ru\0biz.tj\0"
+"naturalhistory.museum\0"
+"is-a-knight.org\0"
+"news.hu\0vrn.ru\0k12.sc.us\0"
+"mosvik.no\0"
+"nnov.ru\0"
+"s\xc3\xb8ndre-land.no\0uzhgorod.ua\0"
+"sex.hu\0pomorze.pl\0biz.tt\0"
+"from-ak.com\0"
+"gs.rl.no\0"
+"vaga.no\0"
+"hornindal.no\0"
+"rawa-maz.pl\0"
+"mine.nu\0"
+"flatanger.no\0lviv.ua\0"
+"czest.pl\0"
+"aquila.it\0copenhagen.museum\0"
+"tx.us\0"
+"h\xc3\xa6gebostad.no\0"
+"aosta.it\0utah.museum\0"
+"orkanger.no\0"
+"denmark.museum\0"
+"gs.bu.no\0"
+"sa.gov.au\0*.ibaraki.jp\0biz.vn\0"
+"for-our.info\0"
+"hitra.no\0"
+"panama.museum\0"
+"qc.ca\0"
+"\xc3\xa5mot.no\0lebtimnetz.de\0"
+"k12.ma.us\0"
+"from-ca.com\0"
+"stuff-4-sale.us\0"
+"pulawy.pl\0"
+"cc.wv.us\0"
+"nf.ca\0penza.ru\0"
+"reggiocalabria.it\0"
+"bs.it\0naturalsciences.museum\0"
+"beeldengeluid.museum\0"
+"hobol.no\0"
+"massa-carrara.it\0s\xc3\xb8r-varanger.no\0"
+"ngo.lk\0"
+"airline.aero\0"
+"voagat.no\0"
+"undersea.museum\0uk.net\0"
+"ma.us\0"
+"author.aero\0roma.it\0"
+"lyngdal.no\0vn.ua\0"
+"tjome.no\0brand.se\0"
+"lodi.it\0health.museum\0"
+"tv.bo\0hm.no\0"
+"tv.br\0"
+"o.bg\0wales.museum\0pisz.pl\0"
+"from-ut.com\0"
+"sor-odal.no\0"
+"vagan.no\0"
+"is.it\0"
+"omasvuotna.no\0serveftp.net\0"
+"kazimierz-dolny.pl\0"
+"hl.cn\0"
+"franziskaner.museum\0"
+"meeres.museum\0"
+"nov.ru\0"
+"aland.fi\0m\xc3\xa5s\xc3\xb8y.no\0"
+"busan.kr\0"
+"cartoonart.museum\0sex.pl\0"
+"santacruz.museum\0lib.il.us\0"
"cc.na\0"
-"re.kr\0"
-"dielddanuorri.no\0"
+"karasjohka.no\0"
+"l\xc3\xb8""dingen.no\0"
+"sp.it\0amot.no\0"
+"gamvik.no\0ngo.ph\0"
+"bremanger.no\0cieszyn.pl\0"
+"ltd.gi\0ngo.pl\0"
+"is-a-llama.com\0"
+"g12.br\0naturbruksgymn.se\0"
+"esp.br\0"
+"assn.lk\0childrens.museum\0"
+"pittsburgh.museum\0"
+"babia-gora.pl\0"
+"embroidery.museum\0"
+"*.nagano.jp\0"
+"flakstad.no\0"
+"bielawa.pl\0"
+"poznan.pl\0"
+"koeln.museum\0"
+"langevag.no\0"
+"upow.gov.pl\0"
+"americanantiques.museum\0"
+"al.it\0"
+"\xe6\x95\x8e\xe8\x82\xb2.hk\0fr\xc3\xa6na.no\0romskog.no\0"
+"loab\xc3\xa1t.no\0"
+"lierne.no\0"
+"archaeological.museum\0p.se\0\xed\x95\x9c\xea\xb5\xad\0"
+"spjelkavik.no\0"
+"is-a-photographer.com\0"
+"muenster.museum\0"
+"dyndns-ip.com\0"
+"!pref.fukuoka.jp\0"
+"game.tw\0k12.sd.us\0"
+"dovre.no\0evenes.no\0"
+"appspot.com\0altoadige.it\0"
+"steigen.no\0"
+"n\xc3\xa5\xc3\xa5mesjevuemie.no\0"
+"iglesias-carbonia.it\0"
+"dgca.aero\0nittedal.no\0"
+"dnsdojo.org\0"
+"homeunix.org\0"
+"columbia.museum\0"
+"gulen.no\0"
+"tv.it\0"
+"crimea.ua\0"
+"ltd.lk\0sologne.museum\0soundandvision.museum\0cc.nh.us\0"
+"amursk.ru\0"
+"grosseto.it\0"
+"is-a-therapist.com\0"
+"k12.nj.us\0"
+"massacarrara.it\0"
+"naval.museum\0"
+"ri.it\0environmentalconservation.museum\0"
+"farmequipment.museum\0virginia.museum\0"
+"not.br\0from-nj.com\0"
+"dolls.museum\0dnsalias.net\0"
+"al.no\0"
+"gorge.museum\0"
+"is-certified.com\0"
+"!pref.yamagata.jp\0dyndns-blog.com\0"
+"sejny.pl\0"
+"ws.na\0"
+"br.it\0cb.it\0"
+"usarts.museum\0"
+"masfjorden.no\0"
+"plants.museum\0"
+"kafjord.no\0"
+"cc.tx.us\0"
+"bmd.br\0"
+"lib.ne.us\0"
+"nalchik.ru\0"
+"tv.na\0"
+"bahn.museum\0"
+"lo.it\0"
+"jx.cn\0"
+"davvenj\xc3\xa1rga.no\0"
+"nes.akershus.no\0"
+"hl.no\0"
+"nsw.au\0plc.co.im\0"
+"n.bg\0"
+"\xe4\xb8\xaa\xe4\xba\xba.hk\0"
+"!pref.okayama.jp\0lib.wv.us\0"
+"haugesund.no\0ovre-eiker.no\0sopot.pl\0"
+"modum.no\0"
+"botanical.museum\0"
+"hk.cn\0m\xc3\xa1latvuopmi.no\0komi.ru\0is-found.org\0"
+"msk.ru\0"
+"\xe7\xb5\x84\xe7\xbb\x87.hk\0"
+"labour.museum\0"
+"issmarterthanyou.com\0"
+"rennesoy.no\0"
+"k12.oh.us\0"
+"!pref.oita.jp\0r\xc3\xb8st.no\0lukow.pl\0"
+"ge.it\0"
+"so.it\0"
+"huissier-justice.fr\0"
+"cc.ma.us\0is-a-cpa.com\0"
+"mulhouse.museum\0"
+"ol.no\0"
+"hoylandet.no\0"
+"agrigento.it\0"
+"nord-aurdal.no\0"
+"k12.ky.us\0"
+"is-a-democrat.com\0"
+"pr.it\0\xc3\xa5seral.no\0"
+"house.museum\0from-ct.com\0"
+"sci.eg\0j\xc3\xb8rpeland.no\0zp.ua\0"
+"motorcycle.museum\0szczecin.pl\0"
+"rad\xc3\xb8y.no\0"
+"bushey.museum\0"
+"adv.br\0"
+"k\xc3\xa1r\xc3\xa1\xc5\xa1johka.no\0"
+"s\xc3\xb8mna.no\0"
+"org.ac\0"
+"is-a-hunter.com\0"
+"org.ae\0\xd8\xa7\xdb\x8c\xd8\xb1\xd8\xa7\xd9\x86.ir\0jewish.museum\0"
+"org.af\0al.us\0"
+"org.ag\0andria-barletta-trani.it\0mari-el.ru\0"
+"vossevangen.no\0"
+"org.ai\0pubol.museum\0"
+"grimstad.no\0"
+"ln.cn\0b\xc3\xa1id\xc3\xa1r.no\0"
+"org.al\0"
+"org.an\0gs.hm.no\0"
+"viking.museum\0"
+"teramo.it\0o.se\0"
+"org.ba\0"
+"org.bb\0"
+"ne.jp\0"
+"d\xc3\xb8nna.no\0sn\xc3\xa5sa.no\0"
+"mil.ac\0"
+"nesset.no\0"
+"mil.ae\0"
+"org.bh\0"
+"org.bi\0corporation.museum\0"
+"org.az\0"
+"org.bm\0"
+"mil.al\0"
+"org.bo\0time.museum\0"
+"webhop.net\0"
+"org.br\0"
+"mil.ba\0org.bs\0"
+"org.bt\0"
+"ne.kr\0vanylven.no\0"
+"holtalen.no\0"
+"org.bw\0"
+"org.ci\0"
+"org.bz\0varoy.no\0"
+"elblag.pl\0"
+"mil.az\0"
+"andoy.no\0skierv\xc3\xa1.no\0"
+"org.cn\0better-than.tv\0"
+"org.co\0"
+"berkeley.museum\0"
+"mil.bo\0coal.museum\0neat-url.com\0"
+"operaunite.com\0sogne.no\0"
+"mil.br\0"
+"gd.cn\0org.cu\0"
+"sn.cn\0"
+"e164.arpa\0b\xc3\xa1hccavuotna.no\0"
+"baghdad.museum\0fylkesbibl.no\0"
+"*.ar\0mil.by\0klodzko.pl\0"
+"*.bd\0org.dm\0info.ht\0"
+"*.au\0info.hu\0"
+"org.do\0"
+"mil.cn\0"
+"mil.co\0!pref.kumamoto.jp\0elburg.museum\0"
+"civilaviation.aero\0org.ec\0"
+"skaun.no\0"
+"org.ee\0"
+"en.it\0"
+"*.bn\0org.eg\0ri.us\0"
+"is-a-techie.com\0"
+"org.dz\0"
+"skoczow.pl\0"
"force.museum\0"
-"torino.it\0cc.md.us\0"
-"artanddesign.museum\0pisz.pl\0"
-"olsztyn.pl\0"
-"unsa.ba\0rade.no\0vinnica.ua\0"
-"in.rs\0astrakhan.ru\0"
-"sogne.no\0"
-"homebuilt.aero\0"
-"polkowice.pl\0"
-"hole.no\0health.vn\0"
-"fj.cn\0"
-"davvesiida.no\0"
-"vic.au\0"
+"kchr.ru\0"
+"mil.do\0overhalla.no\0voronezh.ru\0"
+"fjaler.no\0nat.tn\0"
+"org.es\0daegu.kr\0oygarden.no\0"
+"*.ck\0"
+"mil.ec\0"
+"lib.dc.us\0"
+"mil.eg\0"
+"ca.it\0"
+"bahcavuotna.no\0"
+"biz\0"
+"vestv\xc3\xa5g\xc3\xb8y.no\0"
+"*.cy\0"
+"k-uralsk.ru\0"
+"org.ge\0"
+"milano.it\0!pref.kyoto.jp\0"
+"cim.br\0org.gg\0"
+"org.gh\0"
+"org.gi\0batsfjord.no\0marker.no\0lebork.pl\0"
+"bearalvahki.no\0froland.no\0"
+"collection.museum\0"
+"se.net\0lib.mt.us\0lib.nd.us\0"
+"org.gn\0from-id.com\0"
+"g\xc3\xa1ls\xc3\xa1.no\0porsanger.no\0"
+"org.gp\0"
+"org.gr\0"
+"sch.ae\0"
+"\xd0\xb8\xd0\xba\xd0\xbe\xd0\xbc.museum\0"
+"suisse.museum\0"
+"guernsey.museum\0"
+"mil.ge\0"
+"ppg.br\0"
+"mil.gh\0ne.pw\0"
+"*.er\0org.hk\0aca.pro\0"
+"info.ec\0"
+"*.et\0settlement.museum\0"
+"org.hn\0"
+"m.bg\0"
+"siljan.no\0iamallama.com\0"
+"*.fj\0lib.wy.us\0"
+"*.fk\0org.ht\0"
+"org.hu\0"
+"ddr.museum\0gb.net\0dudinka.ru\0"
+"gz.cn\0"
+"info.bb\0nic.im\0"
+"nic.in\0cesenaforli.it\0"
+"info.at\0org.im\0"
+"br.com\0org.in\0"
+"mil.hn\0"
+"eu.int\0org.iq\0prof.pr\0"
+"org.ir\0mosjoen.no\0"
+"info.az\0org.is\0merseine.nu\0"
+"org.je\0is-a-student.com\0"
+"mil.id\0olbia-tempio.it\0"
+"trani-barletta-andria.it\0!pref.miyazaki.jp\0"
+"ca.na\0k12.as.us\0"
+"from-hi.com\0"
+"*.gt\0"
+"*.gu\0sorfold.no\0"
+"org.jo\0!pref.shizuoka.jp\0quebec.museum\0tver.ru\0"
+"mil.in\0za.net\0"
+"\xc3\xb8ksnes.no\0"
+"mil.iq\0"
+"agr.br\0"
+"village.museum\0"
+"org.kg\0"
+"info.co\0"
+"org.ki\0"
+"alvdal.no\0"
+"bristol.museum\0sos.pl\0"
+"org.km\0"
+"org.kn\0foundation.museum\0\xe7\xb5\x84\xe7\xb9\x94.tw\0"
+"embaixada.st\0"
+"org.kp\0pskov.ru\0"
+"mil.jo\0org.la\0gop.pk\0pr.us\0"
+"\xd8\xa7\xd9\x8a\xd8\xb1\xd8\xa7\xd9\x86.ir\0org.lb\0"
+"org.lc\0"
+"*.il\0g\xc3\xa1\xc5\x8bgaviika.no\0"
+"essex.museum\0"
+"brandywinevalley.museum\0"
+"ravenna.it\0trolley.museum\0konskowola.pl\0"
+"mil.kg\0org.ky\0"
+"org.kz\0davvenjarga.no\0ne.ug\0"
+"org.lk\0"
+"rimini.it\0"
+"szczytno.pl\0ne.tz\0"
+"mil.km\0pila.pl\0"
+"atm.pl\0"
+"org.ma\0beskidy.pl\0"
+"org.lr\0is-an-actor.com\0"
+"org.ls\0"
+"mil.kr\0"
+"org.me\0ak.us\0"
+"mt.it\0*.jm\0org.lv\0ne.us\0"
+"org.mg\0"
+"info\0at-band-camp.net\0"
+"org.ly\0kh.ua\0"
+"*.kagoshima.jp\0org.mk\0kepno.pl\0"
+"mil.kz\0org.ml\0med.pro\0"
+"jobs\0gs.hl.no\0"
+"*.ke\0org.mn\0"
+"org.mo\0jur.pro\0n.se\0"
+"*.kh\0org.na\0"
+"!pref.wakayama.jp\0r\xc3\xa1hkker\xc3\xa1vju.no\0"
+"\xe0\xaa\xad\xe0\xaa\xbe\xe0\xaa\xb0\xe0\xaa\xa4\0\xd8\xa7\xd9\x84\xd9\x8a\xd9\x85\xd9\x86\0"
+"sch.gg\0org.mu\0figueres.museum\0zaporizhzhe.ua\0"
+"org.mv\0"
+"org.mw\0org.ng\0dyndns-at-work.com\0"
+"cat\0mil.lv\0org.mx\0gildesk\xc3\xa5l.no\0"
+"mil.mg\0org.my\0"
+"j\xc3\xb8lster.no\0!nel.uk\0"
+"*.kw\0ringerike.no\0"
+"org.nr\0"
+"planetarium.museum\0"
+"gc.ca\0newyork.museum\0"
+"mil.mv\0"
+"mil.my\0"
+"cadaques.museum\0samara.ru\0k12.ca.us\0"
+"missoula.museum\0"
+"ud.it\0anthropology.museum\0mil.no\0org.pa\0"
+"sch.id\0"
+"*.tokyo.jp\0vagsoy.no\0"
+"is-a-blogger.com\0"
+"!pref.kochi.jp\0scienceandhistory.museum\0org.pe\0"
+"pp.az\0*.mm\0org.pf\0cc.al.us\0"
+"mazowsze.pl\0"
+"countryestate.museum\0gs.ol.no\0org.ph\0"
+"kg.kr\0usantiques.museum\0"
+"ask\xc3\xb8y.no\0org.pk\0"
+"technology.museum\0org.pl\0"
+"*.mt\0"
+"org.pn\0"
+"from-wa.com\0"
+"sch.ir\0r\xc3\xa5""de.no\0udmurtia.ru\0blogdns.org\0"
+"fhsk.se\0"
+"experts-comptables.fr\0!city.fukuoka.jp\0*.ni\0sauherad.no\0org.pr\0"
+"media.hu\0sch.je\0*.mz\0org.ps\0"
+"leirvik.no\0org.pt\0"
+"rg.it\0v\xc3\xa5ler.\xc3\xb8stfold.no\0"
+"mil.pe\0"
+"*.np\0"
+"kvinesdal.no\0mil.ph\0"
+"surnadal.no\0"
+"sch.jo\0"
+"mil.pl\0here-for-more.info\0"
+"chungnam.kr\0"
+"viterbo.it\0fedje.no\0"
+"*.nz\0boldlygoingnowhere.org\0"
+"narviika.no\0"
+"kv\xc3\xa6nangen.no\0*.om\0\xd1\x80\xd1\x84\0"
+"ca.us\0"
+"ok.us\0doesntexist.org\0"
+"cultural.museum\0"
+"webhop.info\0"
+"l\xc3\xa1hppi.no\0usenet.pl\0"
+"carbonia-iglesias.it\0org.ro\0"
+"*.pg\0volgograd.ru\0"
+"org.sa\0isa.us\0"
+"psc.br\0org.sb\0"
+"org.rs\0org.sc\0"
+"org.sd\0"
+"org.ru\0org.se\0"
+"!city.shizuoka.jp\0"
+"org.sg\0"
+"sch.lk\0novosibirsk.ru\0"
+"naroy.no\0*.qa\0dnsdojo.net\0"
+"flesberg.no\0lutsk.ua\0"
+"kuban.ru\0org.sl\0"
+"org.sn\0kirovograd.ua\0"
+"!city.nagoya.jp\0org.so\0"
+"luroy.no\0"
+"name\0*.py\0"
+"org.st\0"
+"sch.ly\0castres.museum\0mil.ru\0cc.ri.us\0"
+"*.mie.jp\0nic.tj\0"
+"mil.rw\0org.sy\0"
+"cesena-forli.it\0org.sz\0org.tj\0"
+"tananger.no\0karasjok.no\0"
+"from-la.net\0"
+"is-a-soxfan.org\0"
+"org.tn\0"
+"l.bg\0drobak.no\0org.to\0"
+"hof.no\0"
+"org.ua\0"
+"pisa.it\0"
+"org.tt\0sells-for-u.com\0"
+"mil.st\0"
+"org.tw\0"
+"ltd.co.im\0thruhere.net\0"
+"hi.cn\0"
+"arteducation.museum\0mil.sy\0"
+"stjohn.museum\0mil.tj\0serveftp.org\0"
+"m\xc3\xa5lselv.no\0"
+"other.nf\0"
+"tel\0mil.to\0"
+"aarborte.no\0"
+"org.vc\0"
+"sokndal.no\0"
+"info.vn\0"
+"mansions.museum\0k12.nv.us\0"
+"mil.tw\0org.vi\0"
+"dyndns-remote.com\0"
"kongsberg.no\0"
-"pub.sa\0"
-"vv.it\0"
-"!pref.tottori.jp\0"
-"*.sendai.jp\0in.th\0"
-"lib.pa.us\0"
-"chiropractic.museum\0"
-"mobi.na\0aca.pro\0"
-"konyvelo.hu\0sciencecenters.museum\0"
-"he.cn\0"
-"in.ua\0"
-"!city.nagoya.jp\0"
-"muenchen.museum\0"
-"psi.br\0"
-"maryland.museum\0"
-"!statecouncil.om\0"
+"mil.tz\0"
+"homebuilt.aero\0zoology.museum\0tuva.ru\0org.vn\0"
+"*.sv\0"
+"2000.hu\0"
+"nore-og-uvdal.no\0"
+"crew.aero\0"
+"mil.vc\0from-mi.com\0"
+"\xe9\xa6\x99\xe6\xb8\xaf\0"
+"snoasa.no\0"
+"shop.ht\0southwest.museum\0*.tr\0lib.fl.us\0"
+"shop.hu\0rnu.tn\0"
+"is-uberleet.com\0"
+"simple-url.com\0"
+"frana.no\0"
+"frei.no\0"
+"charter.aero\0"
+"tinn.no\0org.ws\0"
+"riodejaneiro.museum\0*.uk\0"
+"lyngen.no\0"
+"fineart.museum\0info.tn\0"
+"modelling.aero\0"
+"aremark.no\0gratangen.no\0"
+"media.pl\0"
+"casino.hu\0info.tt\0"
+"bindal.no\0valer.hedmark.no\0*.ve\0"
+"stadt.museum\0rubtsovsk.ru\0"
+"*.niigata.jp\0"
+"usdecorativearts.museum\0"
+"brussels.museum\0naturalhistorymuseum.museum\0k12.id.us\0*.uy\0"
+"lakas.hu\0\xd1\x81\xd1\x80\xd0\xb1\0dyndns.tv\0"
+"ms.it\0mt.us\0nd.us\0"
+"indianmarket.museum\0"
+"slask.pl\0"
"tr\xc3\xa6na.no\0"
-"!pref.yamagata.jp\0jewishart.museum\0"
-"lu.it\0me.it\0"
-"chel.ru\0"
-"tatarstan.ru\0"
-"adult.ht\0in.us\0"
-"kafjord.no\0"
-"\xd7\x99\xd7\xa8\xd7\x95\xd7\xa9\xd7\x9c\xd7\x99\xd7\x9d.museum\0"
-"net.ac\0k12.ec\0"
-"net.ae\0bashkiria.ru\0"
-"net.af\0!omantel.om\0"
-"net.ag\0"
-"net.ai\0"
-"!pref.toyama.jp\0"
-"net.al\0timekeeping.museum\0"
-"net.an\0design.museum\0fin.tn\0"
-"ethnology.museum\0"
-"perso.ht\0asker.no\0b.se\0"
+"m.se\0"
+"sch.sa\0"
+"cuneo.it\0"
+"net.ac\0spb.ru\0"
+"gateway.museum\0"
+"net.ae\0"
+"net.af\0campobasso.it\0vlaanderen.museum\0"
+"net.ag\0info.ro\0"
+"net.ai\0watchandclock.museum\0gdansk.pl\0"
+"net.al\0valer.ostfold.no\0info.sd\0"
+"plc.ly\0capebreton.museum\0go.dyndns.org\0"
+"net.an\0"
+"cc.pr.us\0"
"net.ba\0"
-"net.bb\0flanders.museum\0"
-"mincom.tn\0"
-"frana.no\0"
-"bt.it\0"
-"net.bh\0"
-"auto.pl\0"
+"net.bb\0urbinopesaro.it\0ms.kr\0pilots.museum\0"
+"miners.museum\0"
+"bearalv\xc3\xa1hki.no\0"
+"net.bh\0!city.kobe.jp\0midtre-gauldal.no\0"
"net.az\0"
-"treviso.it\0"
-"war.museum\0"
-"net.bm\0"
-"langevag.no\0m\xc3\xa5lselv.no\0"
-"net.bo\0"
-"gol.no\0"
-"folkebibl.no\0"
+"lib.va.us\0"
+"net.bm\0*.ye\0"
+"net.bo\0ts.it\0"
+"com\0gloppen.no\0dyndns.ws\0"
"net.br\0"
-"net.bs\0troandin.no\0saotome.st\0lib.tn.us\0"
-"md.us\0k12.ut.us\0"
-"d.bg\0cambridge.museum\0\xc3\xa5s.no\0"
-"net.ci\0"
-"net.bz\0"
-"sch.ae\0undersea.museum\0odda.no\0"
+"net.bs\0info.pk\0"
+"net.bt\0info.pl\0cc.ak.us\0"
+"british.museum\0cc.ne.us\0"
+"tourism.tn\0"
+"scotland.museum\0"
+"siena.it\0"
+"net.ci\0*.za\0"
+"net.bz\0info.pr\0"
+"\xe5\x80\x8b\xe4\xba\xba.hk\0"
+"aerodrome.aero\0works.aero\0*.yu\0"
"net.cn\0"
-"net.co\0c.la\0"
+"net.co\0badajoz.museum\0"
+"k12.ak.us\0"
+"k12.me.us\0"
+"chukotka.ru\0"
+"net.cu\0*.zm\0"
+"info.na\0"
+"malatvuopmi.no\0"
+"north.museum\0"
+"art.br\0net.dm\0"
+"mod.gi\0info.mv\0info.nf\0"
+"net.do\0zoological.museum\0tgory.pl\0*.zw\0"
+"nb.ca\0muenchen.museum\0fosnes.no\0"
+"dnsalias.org\0"
"gliwice.pl\0"
-"aurskog-h\xc3\xb8land.no\0"
-"andria-trani-barletta.it\0"
-"net.cu\0loab\xc3\xa1t.no\0"
-"rep.kp\0"
-"\xe7\xbb\x84\xe7\xb9\x94.hk\0"
-"gallery.museum\0"
-"\xc3\xb8rland.no\0"
-"store.ro\0"
-"net.dm\0"
-"somna.no\0"
-"hemnes.no\0"
-"ringebu.no\0k12.ky.us\0"
"net.ec\0"
-"dn.ua\0"
-"tarnobrzeg.pl\0"
-"soc.lk\0"
-"romsa.no\0"
-"bamble.no\0"
-"net.dz\0lutsk.ua\0"
-"barlettatraniandria.it\0ta.it\0countryestate.museum\0"
-"kaszuby.pl\0"
-"*.yamaguchi.jp\0cranbrook.museum\0store.st\0"
-"southcarolina.museum\0lib.md.us\0"
-"textile.museum\0"
-"cheltenham.museum\0hurum.no\0"
-"*.oita.jp\0"
-"shop.ht\0cc.me.us\0"
-"shop.hu\0turin.it\0"
-"louvre.museum\0"
-"k12.ar.us\0"
-"consulting.aero\0"
-"gv.ao\0"
-"sauherad.no\0"
-"gv.at\0net.ge\0"
-"ostre-toten.no\0lib.ok.us\0"
-"net.gg\0pilots.museum\0"
-"2000.hu\0geology.museum\0"
+"salangen.no\0lib.de.us\0"
+"palmsprings.museum\0watch-and-clock.museum\0"
+"net.eg\0k12.vt.us\0"
+"bo.it\0r\xc3\xb8yken.no\0"
+"net.dz\0info.nr\0"
+"ah.cn\0lahppi.no\0"
+"\xe7\xb5\x84\xe7\xb9\x94.hk\0"
+"aircraft.aero\0pa.gov.pl\0"
+"!gobiernoelectronico.ar\0"
+"trd.br\0"
+"sandoy.no\0"
+"tozsde.hu\0"
+"info.la\0"
+"art.do\0stat.no\0osteroy.no\0"
+"local\0"
+"nrw.museum\0servebbs.net\0"
+"\xe6\x95\x99\xe8\x82\xb2.hk\0"
+"tychy.pl\0"
+"!pref.gifu.jp\0"
+"grong.no\0"
+"art.dz\0net.ge\0!pref.aichi.jp\0"
+"net.gg\0"
+"williamsburg.museum\0sor-aurdal.no\0"
+"barum.no\0tambov.ru\0"
+"western.museum\0"
+"rakkestad.no\0"
+"k.bg\0skierva.no\0"
"net.gn\0"
-"mazowsze.pl\0bir.ru\0"
-"net.gp\0"
-"net.gr\0"
-"oxford.museum\0"
-"per.la\0"
-"eastafrica.museum\0"
-"meeres.museum\0"
-"net.gy\0*.shizuoka.jp\0"
"\xe5\x95\x86\xe6\xa5\xad.tw\0"
+"net.gp\0halden.no\0pp.ru\0pp.se\0"
+"net.gr\0"
+"vi.it\0"
+"kopervik.no\0rygge.no\0"
+"vibovalentia.it\0"
+"gx.cn\0"
+"net.gy\0chocolate.museum\0mari.ru\0cc.ca.us\0"
+"bo.telemark.no\0cc.ok.us\0"
"net.hk\0"
+"hobby-site.com\0"
"net.hn\0"
-"philadelphiaarea.museum\0"
-"osen.no\0"
+"hellas.museum\0kalmykia.ru\0"
"net.ht\0net.id\0"
-"fundacio.museum\0"
-"j\xc3\xb8rpeland.no\0"
-"\xe6\x95\x99\xe8\x82\xb2.hk\0"
-"divtasvuodna.no\0"
-"student.aero\0sch.gg\0net.im\0"
-"\xe7\xbd\x91\xe7\xbb\x9c.cn\0net.in\0"
-"net.iq\0"
+"plaza.museum\0"
+"krager\xc3\xb8.no\0s\xc3\xa1l\xc3\xa1t.no\0k12.ok.us\0"
+"fr.it\0"
+"*.yamanashi.jp\0"
+"cv.ua\0kherson.ua\0"
+"net.im\0ullensvang.no\0"
+"net.in\0"
+"community.museum\0kirov.ru\0"
+"net.iq\0info.ki\0"
"net.ir\0"
"net.is\0"
"net.je\0"
-"kepno.pl\0lapy.pl\0"
-"per.nf\0"
-"gov\0*.shimane.jp\0"
-"artcenter.museum\0"
-"k\xc3\xa5""fjord.no\0"
-"net.jo\0"
-"eu.int\0"
-"c.se\0"
-"net.kg\0"
-"ce.it\0net.ki\0"
-"sch.id\0os.hedmark.no\0"
-"columbus.museum\0"
-"arteducation.museum\0"
-"net.kn\0"
-"kr.com\0"
-"net.la\0bushey.museum\0cc.gu.us\0"
-"net.lb\0"
-"net.lc\0"
-"gs.bu.no\0"
-"e164.arpa\0"
-"chieti.it\0labour.museum\0"
-"sch.ir\0creation.museum\0krodsherad.no\0"
-"net.ky\0"
-"net.kz\0me.us\0"
-"e.bg\0sch.je\0net.lk\0"
-"zlg.br\0suwalki.pl\0"
-"\xe5\x80\x8b\xe4\xba\xba.hk\0net.ma\0"
-"net.lr\0"
-"sch.jo\0notaires.km\0net.me\0"
-"net.lv\0karate.museum\0"
-"net.ly\0karm\xc3\xb8y.no\0"
-"rg.it\0"
+"bievat.no\0"
+"po.it\0verona.it\0gon.pk\0"
+"art.ht\0net.jo\0fed.us\0"
+"etnedal.no\0"
+"nx.cn\0"
+"from-ms.com\0from-nc.com\0"
+"durham.museum\0is-a-cubicle-slave.com\0"
+"*.yokohama.jp\0net.kg\0"
+"ancona.it\0net.ki\0"
+"sorreisa.no\0"
+"ulm.museum\0"
+"press.museum\0"
+"urn.arpa\0ogliastra.it\0!national-library-scotland.uk\0"
+"net.kn\0from-fl.com\0"
+"ac\0naples.it\0"
+"ad\0net.la\0openair.museum\0giske.no\0"
+"ae\0net.lb\0"
+"af\0frosinone.it\0!pref.kagoshima.jp\0net.lc\0b\xc3\xb8.nordland.no\0ms.us\0nc.us\0"
+"ag\0incheon.kr\0"
+"!mecon.ar\0"
+"ai\0"
+"\xe0\xb9\x84\xe0\xb8\x97\xe0\xb8\xa2\0"
+"al\0net.ky\0linz.museum\0"
+"am\0net.kz\0"
+"an\0net.lk\0"
+"ao\0l.se\0"
+"!pref.osaka.jp\0oceanographic.museum\0"
+"aq\0ba\0historical.museum\0bronnoysund.no\0poltava.ua\0"
+"bb\0"
+"as\0messina.it\0"
+"at\0net.ma\0"
+"be\0net.lr\0"
+"bf\0ggf.br\0"
+"aw\0bg\0l\xc3\xa4ns.museum\0\xc3\xa5""fjord.no\0"
+"ax\0bh\0net.me\0computerhistory.museum\0indian.museum\0"
+"bi\0net.lv\0"
+"az\0bj\0"
+"lom.no\0"
+"*.kagawa.jp\0net.ly\0"
+"bm\0juif.museum\0"
"net.mk\0"
-"net.ml\0evenes.no\0"
-"ngo.lk\0net.mo\0egyptian.museum\0"
-"marine.ru\0"
-"realestate.pl\0"
-"net.mu\0"
-"net.mv\0net.nf\0"
-"net.mw\0net.ng\0gda.pl\0"
+"bo\0net.ml\0"
+"ca\0fuoisku.no\0"
+"qld.edu.au\0br\0net.mo\0workshop.museum\0"
+"bs\0cc\0bryne.no\0"
+"bt\0cd\0"
+"za.org\0game-host.org\0"
+"cf\0*.kanagawa.jp\0berg.no\0"
+"tmp.br\0bw\0cg\0"
+"sk.ca\0ch\0net.mu\0"
+"by\0ci\0net.mv\0net.nf\0"
+"bz\0alessandria.it\0gyeongnam.kr\0net.mw\0net.ng\0is-a-nascarfan.com\0"
"net.mx\0"
-"freemasonry.museum\0net.my\0enebakk.no\0"
-"karlsoy.no\0"
-"\xe7\xbd\x91\xe7\xbb\x9c.hk\0\xc3\xb8rskog.no\0"
-"randaberg.no\0"
-"club.aero\0"
-"certification.aero\0sr.it\0"
-"center.museum\0so.gov.pl\0"
-"caa.aero\0"
-"sch.lk\0tvedestrand.no\0"
-"net.nr\0"
-"luroy.no\0"
-"aukra.no\0s\xc3\xa1lat.no\0lib.me.us\0"
-"ddr.museum\0"
-"york.museum\0stryn.no\0k12.nm.us\0"
-"per.sg\0"
-"judaica.museum\0"
-"verona.it\0"
-"agdenes.no\0"
-"cng.br\0sch.ly\0"
+"cl\0net.my\0"
+"cm\0groks-the.info\0"
+"cn\0"
+"co\0"
+"hi.us\0"
+"paragliding.aero\0tr.it\0ustka.pl\0"
+"cr\0baths.museum\0drammen.no\0"
+"mus.br\0vladimir.ru\0"
+"cu\0de\0net.nr\0"
+"cv\0"
+"volkenkunde.museum\0tourism.pl\0cc.mt.us\0cc.nd.us\0"
+"cx\0scienceandindustry.museum\0"
+"emergency.aero\0cz\0dj\0"
+"dk\0"
+"cnt.br\0sola.no\0"
+"dm\0izhevsk.ru\0"
+"do\0jondal.no\0"
+"tsk.ru\0"
+"government.aero\0k12.al.us\0"
+"ec\0"
"net.pa\0"
-"author.aero\0"
-"naturalhistory.museum\0steiermark.museum\0bu.no\0"
-"sn\xc3\xa5sa.no\0net.pe\0"
+"ee\0monzabrianza.it\0"
+"laquila.it\0re.it\0"
+"eg\0"
+"net.pe\0"
+"spy.museum\0"
+"dz\0khv.ru\0"
"net.ph\0"
-"savannahga.museum\0batsfjord.no\0lib.oh.us\0"
-"net.pk\0"
+"enna.it\0dyr\xc3\xb8y.no\0net.pk\0"
"net.pl\0"
-"net.pn\0"
-"washingtondc.museum\0"
-"net.pr\0"
-"net.ps\0"
-"net.pt\0"
-"nordkapp.no\0"
-"emergency.aero\0krokstadelva.no\0"
-"satx.museum\0ngo.ph\0omsk.ru\0"
-"texas.museum\0"
-"ngo.pl\0"
-"mantova.it\0gu.us\0"
-"!pref.shiga.jp\0isa.us\0"
-"usa.museum\0"
-"gb.net\0k12.vi\0"
-"iveland.no\0"
-"tempio-olbia.it\0"
-"net.sa\0"
+"ah.no\0"
+"mr.no\0net.pn\0\xe0\xa6\xad\xe0\xa6\xbe\xe0\xa6\xb0\xe0\xa6\xa4\0"
+"es\0medecin.km\0"
+"eu\0net.pr\0"
+"net.ps\0lib.ct.us\0"
+"net.pt\0!icnet.uk\0"
+"fi\0sund.no\0k12.wi.us\0"
+"bn.it\0"
+"ny.us\0"
+"ris\xc3\xb8r.no\0"
+"fm\0"
+"magazine.aero\0fo\0"
+"jeju.kr\0kartuzy.pl\0"
+"ga\0"
+"fr\0"
+"gd\0re.kr\0"
+"ge\0american.museum\0"
+"gf\0"
+"gg\0"
+"gh\0"
+"gi\0"
+"television.museum\0art.pl\0"
+"gl\0tolga.no\0"
+"gm\0dinosaur.museum\0"
+"forum.hu\0reklam.hu\0asker.no\0from-sc.com\0"
+"gp\0"
+"gq\0lecco.it\0trana.no\0"
+"gr\0os.hedmark.no\0"
+"gs\0"
+"!pref.gunma.jp\0net.sa\0"
"net.sb\0"
-"works.aero\0net.sc\0komvux.se\0"
-"net.sd\0"
-"net.ru\0"
-"0.bg\0"
-"forlicesena.it\0net.rw\0net.sg\0"
-"klodzko.pl\0"
-"detroit.museum\0wegrow.pl\0"
-"net.sl\0"
-"glogow.pl\0"
-"store.bb\0air.museum\0"
-"net.so\0"
-"katowice.pl\0"
-"nsk.ru\0"
-"pisa.it\0eid.no\0"
+"net.sc\0"
+"gw\0net.sd\0"
+"steam.museum\0net.ru\0"
+"uri.arpa\0gy\0homelinux.com\0"
+"krodsherad.no\0net.rw\0net.sg\0"
+"hk\0neues.museum\0"
+"sherbrooke.museum\0tr.no\0"
+"engineer.aero\0hm\0aver\xc3\xb8y.no\0"
+"hn\0ferrara.it\0"
+"maintenance.aero\0j.bg\0oristano.it\0net.sl\0"
+"hr\0net.so\0"
+"ht\0id\0sciences.museum\0"
+"hu\0ie\0"
+"vi.us\0"
"net.st\0"
-"film.hu\0"
-"tuva.ru\0d.se\0"
+"gaivuotna.no\0"
"net.th\0"
"net.sy\0"
-"viterbo.it\0tsaritsyn.ru\0perso.sn\0net.tj\0"
-"lib.gu.us\0"
-"plc.co.im\0sec.ps\0"
-"r\xc3\xa1hkker\xc3\xa1vju.no\0kazimierz-dolny.pl\0net.tn\0"
-"net.to\0"
-"veterinaire.km\0"
-"net.ua\0"
-"info.ht\0net.tt\0"
-"info.hu\0"
-"exchange.aero\0"
-"sch.sa\0net.tw\0"
-"andriatranibarletta.it\0perso.tn\0"
-"f.bg\0malselv.no\0"
-"net.vc\0"
-"trana.no\0"
-"ns.ca\0"
-"net.vi\0"
-"lucca.it\0oristano.it\0"
-"usarts.museum\0net.vn\0"
-"gon.pk\0"
-"pl.ua\0"
-"eastcoast.museum\0"
-"novara.it\0"
-"k12.ks.us\0"
-"dp.ua\0"
-"nesseby.no\0"
-"!pref.wakayama.jp\0"
-"repbody.aero\0"
-"jamison.museum\0lugansk.ua\0"
-"ss.it\0"
-"alessandria.it\0"
-"hadsel.no\0net.ws\0"
-"\xe0\xae\x9a\xe0\xae\xbf\xe0\xae\x99\xe0\xaf\x8d\xe0\xae\x95\xe0\xae\xaa\xe0\xaf\x8d\xe0\xae\xaa\xe0\xaf\x82\xe0\xae\xb0\xe0\xaf\x8d\0"
-"veterinaire.fr\0leirfjord.no\0"
-"massacarrara.it\0north.museum\0"
-"project.museum\0"
-"other.nf\0"
-"k12.nh.us\0"
-"mat.br\0artgallery.museum\0"
-"sr.gov.pl\0"
-"gamvik.no\0"
-"info.ec\0lancashire.museum\0"
-"fm.br\0ltd.co.im\0"
-"americana.museum\0southwest.museum\0cc.ak.us\0"
-"enna.it\0lunner.no\0"
-"v\xc3\xa5gan.no\0"
-"mari.ru\0"
-"accident-investigation.aero\0"
-"sor-aurdal.no\0lib.ny.us\0"
-"novosibirsk.ru\0"
-"bjugn.no\0"
-"n\xc3\xa6r\xc3\xb8y.no\0ostrowwlkp.pl\0"
-"info.bb\0foundation.museum\0"
-"brand.se\0"
-"info.at\0!pref.akita.jp\0l\xc3\xb8ten.no\0"
-"coal.museum\0miners.museum\0"
-"glass.museum\0"
-"info.az\0"
-"frog.museum\0szczytno.pl\0nov.ru\0"
-"sunndal.no\0"
-"gen.in\0"
-"gx.cn\0"
-"web.co\0*.mie.jp\0hobol.no\0\xe5\x8f\xb0\xe6\xb9\xbe\0"
-"logistics.aero\0plo.ps\0"
-"erotika.hu\0"
-"torsken.no\0"
-"exeter.museum\0"
-"info.co\0"
-"selje.no\0"
-"storfjord.no\0"
-"barum.no\0lind\xc3\xa5s.no\0"
-"leasing.aero\0"
-"championship.aero\0fst.br\0"
-"lierne.no\0"
-"!gobiernoelectronico.ar\0""1.bg\0"
-"corporation.museum\0"
-"al.it\0*.miyagi.jp\0"
-"*.aomori.jp\0"
-"\xd8\xa7\xd9\x84\xd8\xa7\xd8\xb1\xd8\xaf\xd9\x86\0"
-"amursk.ru\0"
-"vestvagoy.no\0"
-"\xd8\xa7\xdb\x8c\xd8\xb1\xd8\xa7\xd9\x86.ir\0cc.fl.us\0"
-"os.hordaland.no\0"
-"pistoia.it\0"
-"tver.ru\0e.se\0"
-"res.in\0*.yamagata.jp\0syzran.ru\0"
-"capebreton.museum\0sandnessj\xc3\xb8""en.no\0"
-"ternopil.ua\0"
+"im\0heritage.museum\0net.tj\0"
+"in\0bedzin.pl\0"
+"io\0"
+"isernia.it\0"
+"iq\0!pref.chiba.jp\0net.tn\0"
+"ir\0net.to\0"
+"is\0"
+"it\0net.ua\0"
+"og.ao\0je\0"
+"net.tt\0k12.ar.us\0"
+"jpn.com\0net.tw\0"
+"miasta.pl\0art.sn\0"
+"jo\0war.museum\0"
+"jp\0"
+"fie.ee\0kustanai.ru\0"
+"cyber.museum\0"
"shop.pl\0"
-"tank.museum\0"
-"m\xc3\xa5s\xc3\xb8y.no\0"
-"potenza.it\0time.museum\0"
-"mjondalen.no\0"
-"eng.br\0nedre-eiker.no\0"
-"air-surveillance.aero\0"
-"nt.au\0am.br\0pn.it\0"
-"oystre-slidre.no\0ug.gov.pl\0"
-"g.bg\0nesodden.no\0vologda.ru\0"
-"parma.it\0tula.ru\0"
-"*.nara.jp\0ak.us\0"
-"nt.ca\0konin.pl\0"
-"kiev.ua\0"
-"skierv\xc3\xa1.no\0vestre-toten.no\0"
-"ri.it\0botanical.museum\0farsund.no\0veg\xc3\xa5rshei.no\0dagestan.ru\0"
-"ind.br\0k-uralsk.ru\0"
-"rahkkeravju.no\0cmw.ru\0"
-"canada.museum\0"
-"fm.it\0"
-"cc.wi.us\0"
-"web.id\0aver\xc3\xb8y.no\0"
-"dudinka.ru\0"
-"baghdad.museum\0fitjar.no\0grane.no\0"
-"gs.fm.no\0"
-"sumy.ua\0"
-"al.no\0"
-"westfalen.museum\0"
-"oregon.museum\0"
-"bruxelles.museum\0elk.pl\0"
-"planetarium.museum\0sn\xc3\xa5""ase.no\0"
-"s\xc3\xb8rreisa.no\0"
-"gs.st.no\0skien.no\0"
-"bible.museum\0ivanovo.ru\0"
-"avellino.it\0"
-"tgory.pl\0"
-"family.museum\0"
-"ppg.br\0k12.as.us\0"
-"trader.aero\0gorlice.pl\0"
-"cc.al.us\0"
-"ogliastra.it\0"
-"is.it\0lib.nv.us\0"
-"dr.na\0"
-"media.hu\0nesna.no\0fl.us\0"
-"uri.arpa\0"
-"bjerkreim.no\0"
-"charter.aero\0"
-"genova.it\0"
-"it.ao\0botany.museum\0hapmir.no\0"
-"educational.museum\0"
-"helsinki.museum\0"
-"memorial.museum\0"
-"web.lk\0pharmacy.museum\0"
-"aircraft.aero\0appspot.com\0"
-"ferrara.it\0beskidy.pl\0"
-"hi.cn\0"
-"taxi.aero\0flekkefjord.no\0"
-"varoy.no\0"
-"ragusa.it\0ambulance.museum\0"
-"can.museum\0"
-"*.osaka.jp\0isleofman.museum\0fm.no\0warmia.pl\0"
-"educator.aero\0asmatart.museum\0"
-"mi.it\0"
-"kutno.pl\0"
-"skedsmokorset.no\0"
-"2.bg\0"
-"*.kagoshima.jp\0km.ua\0"
-"!city.sendai.jp\0"
-"web.nf\0st.no\0cc.ri.us\0"
-"reggiocalabria.it\0"
-"wi.us\0"
-"ancona.it\0newjersey.museum\0nnov.ru\0"
-"f.se\0"
-"ind.in\0"
-"info.vn\0"
-"andoy.no\0"
-"ch.it\0fredrikstad.no\0guovdageaidnu.no\0"
-"fjaler.no\0"
-"sa.com\0"
-"gs.nt.no\0"
-"masfjorden.no\0"
-"pordenone.it\0"
-"po.it\0basel.museum\0"
-"chambagri.fr\0"
-"h.bg\0web.pk\0"
-"london.museum\0"
-"sciencecenter.museum\0\xe0\xb9\x84\xe0\xb8\x97\xe0\xb8\xa2\0"
-"unbi.ba\0augustow.pl\0"
-"wolomin.pl\0"
-"notaires.fr\0tcm.museum\0al.us\0"
-"nu.ca\0!pref.nagano.jp\0"
-"info.tn\0"
-"lib.wa.us\0"
-"ed.ao\0info.tt\0"
-"barreau.bj\0"
-"k12.wy.us\0"
-"pp.az\0gop.pk\0"
-"int\0"
-"l\xc3\xb8renskog.no\0podhale.pl\0"
-"voagat.no\0"
-"telekommunikation.museum\0"
-"qld.au\0"
-"te.it\0freiburg.museum\0snasa.no\0"
-"gjemnes.no\0"
-"sejny.pl\0"
-"media.pl\0"
-"skjak.no\0"
-"watchandclock.museum\0"
-"ed.ci\0pacific.museum\0"
-"theater.museum\0info.ro\0"
-"uk.com\0"
-"campobasso.it\0aquarium.museum\0tysv\xc3\xa6r.no\0"
-"kragero.no\0"
-"windmill.museum\0info.sd\0"
-"sologne.museum\0sande.m\xc3\xb8re-og-romsdal.no\0"
-"nt.no\0cc.mi.us\0"
-"ed.cr\0"
-"academy.museum\0zachpomor.pl\0"
-"tananger.no\0v\xc3\xa1rgg\xc3\xa1t.no\0ri.us\0"
-"federation.aero\0"
-"web.tj\0"
-"matta-varjjat.no\0"
-"steigen.no\0"
-"local\0akrehamn.no\0"
-"!pref.chiba.jp\0info.pk\0"
-"info.pl\0""6bone.pl\0"
-"klepp.no\0kherson.ua\0"
-"ketrzyn.pl\0info.pr\0"
-"sweden.museum\0"
-"lardal.no\0"
-"!retina.ar\0gz.cn\0"
-"barletta-trani-andria.it\0vikna.no\0"
-"bearalv\xc3\xa1hki.no\0"
-"broker.aero\0gov.nc.tr\0"
-"info.na\0k12.fl.us\0"
-"hembygdsforbund.museum\0"
-"entertainment.aero\0jerusalem.museum\0l\xc3\xa6rdal.no\0"
-"hitra.no\0sogndal.no\0"
-"farmequipment.museum\0info.mv\0info.nf\0\xc3\xa5lg\xc3\xa5rd.no\0"
-"la-spezia.it\0"
-"skanland.no\0fam.pk\0"
-"skole.museum\0"
-"art.museum\0"
-"presidio.museum\0"
-"3.bg\0public.museum\0"
-"h\xc3\xb8yanger.no\0zagan.pl\0"
-"an.it\0"
-"philadelphia.museum\0info.nr\0"
-"pesarourbino.it\0g\xc3\xa1ivuotna.no\0"
-"poltava.ua\0"
-"nt.ro\0"
-"station.museum\0"
-"mi.th\0"
-"altoadige.it\0"
-"nu.it\0"
-"usculture.museum\0g.se\0"
-"h\xc3\xa1mm\xc3\xa1rfeasta.no\0"
-"daegu.kr\0info.la\0"
-"dovre.no\0"
-"ci.it\0horology.museum\0"
-"bergbau.museum\0"
-"press.museum\0"
-"gangwon.kr\0"
-"!city.kitakyushu.jp\0sor-varanger.no\0cc.hi.us\0"
-"fuossko.no\0"
-"zp.ua\0"
-"american.museum\0"
-"fl\xc3\xa5.no\0mi.us\0"
-"i.bg\0"
-"od.ua\0"
-"encyclopedic.museum\0"
-"ind.tn\0"
-"midatlantic.museum\0"
-"newyork.museum\0"
-"castres.museum\0"
-"act.edu.au\0"
-"topology.museum\0"
-"ed.jp\0"
-"of.by\0"
-"iris.arpa\0inf.br\0askim.no\0pyatigorsk.ru\0"
-"nord-fron.no\0nsn.us\0"
-"beardu.no\0"
-"agrar.hu\0corvette.museum\0chtr.k12.ma.us\0"
-"figueres.museum\0"
-"!pref.gunma.jp\0medizinhistorisches.museum\0"
-"tjeldsund.no\0"
-"nebraska.museum\0"
-"bellevue.museum\0"
-"abo.pa\0k12.al.us\0"
-"info.ki\0"
-"inf.cu\0sv.it\0"
-"jfk.museum\0"
-"!city.osaka.jp\0swinoujscie.pl\0"
-"bydgoszcz.pl\0"
-"!city.kyoto.jp\0"
-"uvic.museum\0"
-"madrid.museum\0steinkjer.no\0"
-"lib.ma.us\0"
-"sirdal.no\0"
-"n\xc3\xb8tter\xc3\xb8y.no\0"
-"taranto.it\0starnberg.museum\0"
-"vic.gov.au\0pvt.ge\0pors\xc3\xa1\xc5\x8bgu.no\0"
-"naroy.no\0ris\xc3\xb8r.no\0"
-"va.it\0salem.museum\0starachowice.pl\0"
-"!nawrastelecom.om\0"
-"town.museum\0te.ua\0"
-"se.net\0"
-"kemerovo.ru\0"
-"lerdal.no\0"
-"gs.va.no\0"
-"kms.ru\0"
-"consulado.st\0"
-"haram.no\0"
-"tysnes.no\0"
-"!pref.ibaraki.jp\0hamburg.museum\0"
-"\xc3\xa5rdal.no\0"
-"airline.aero\0"
-"crew.aero\0newhampshire.museum\0"
-"muenster.museum\0"
-"aerodrome.aero\0"
-"heroy.nordland.no\0belau.pw\0"
-"kamchatka.ru\0"
-"b\xc3\xa5""d\xc3\xa5""ddj\xc3\xa5.no\0lillehammer.no\0hi.us\0"
-"hk.cn\0"
-"!city.kobe.jp\0berlevag.no\0"
-"ardal.no\0"
-"askoy.no\0"
-"vardo.no\0"
-"fyresdal.no\0"
-"sassari.it\0"
-"video.hu\0drammen.no\0"
-"lyngen.no\0nakhodka.ru\0"
-"ip6.arpa\0games.hu\0"
-"online.museum\0"
-"k12.sd.us\0"
-"4.bg\0sebastopol.ua\0"
-"ao.it\0atlanta.museum\0"
-"lebork.pl\0"
-"ravenna.it\0"
-"railway.museum\0songdalen.no\0"
-"!pref.shimane.jp\0delaware.museum\0ed.pw\0"
-"f\xc3\xb8rde.no\0"
-"living.museum\0"
-"juif.museum\0"
-"lomza.pl\0"
-"h.se\0"
-"!bl.uk\0"
-"portland.museum\0\xe7\xb5\x84\xe7\xb9\x94.tw\0"
-"stj\xc3\xb8rdal.no\0"
-"lecce.it\0"
-"bz.it\0"
-"farmstead.museum\0va.no\0"
-"express.aero\0!nacion.ar\0"
-"presse.km\0gs.of.no\0"
-"\xe5\x8f\xb0\xe7\x81\xa3\0"
-"og.ao\0gyeongbuk.kr\0vestv\xc3\xa5g\xc3\xb8y.no\0"
-"prd.fr\0"
-"pp.ru\0pp.se\0"
-"forum.hu\0!pref.saga.jp\0"
-"kvalsund.no\0"
-"!city.kawasaki.jp\0n\xc3\xa5\xc3\xa5mesjevuemie.no\0"
-"j.bg\0"
-"vlaanderen.museum\0"
-"cc.va.us\0"
-"\xd8\xa7\xd9\x8a\xd8\xb1\xd8\xa7\xd9\x86.ir\0alabama.museum\0"
-"school.museum\0her\xc3\xb8y.m\xc3\xb8re-og-romsdal.no\0"
-"\xc3\xa5seral.no\0"
-"traniandriabarletta.it\0"
-"flog.br\0"
-"presse.ml\0"
-"k\xc3\xa1r\xc3\xa1\xc5\xa1johka.no\0"
-"historisch.museum\0"
-"farm.museum\0palmsprings.museum\0oslo.no\0dyroy.no\0stranda.no\0"
-"gs.rl.no\0r\xc3\xa5""de.no\0"
-"bomlo.no\0s\xc3\xb8rum.no\0"
-"jan-mayen.no\0ivgu.no\0"
-"coop\0"
-"agr.br\0k12.ak.us\0"
-"!nic.ar\0catanzaro.it\0fusa.no\0"
-"hu.com\0"
-"inf.mk\0"
-"vet.br\0"
-"k12.mt.us\0k12.nd.us\0"
-"vlog.br\0\xe5\x85\xac\xe5\x8f\xb8.cn\0sandnessjoen.no\0"
-"lib.az.us\0"
-"nsw.edu.au\0of.no\0\xc3\xb8stre-toten.no\0"
-"*.okinawa.jp\0"
-"vb.it\0"
-"asso.fr\0firenze.it\0"
-"trieste.it\0"
-"\xe5\x85\xac\xe5\x8f\xb8.hk\0"
-"museet.museum\0"
-"prd.km\0"
-"navuotna.no\0lib.ca.us\0"
-"cc.nv.us\0"
-"asso.gp\0"
-"meraker.no\0"
-"h\xc3\xa1pmir.no\0"
-"i.ph\0"
-"sx.cn\0jeonnam.kr\0"
-"halden.no\0"
-"fed.us\0"
-"medio-campidano.it\0tsk.ru\0"
-"barcelona.museum\0"
-"giessen.museum\0roma.museum\0"
-"hl.cn\0"
-"\xe0\xae\x87\xe0\xae\xb2\xe0\xae\x99\xe0\xaf\x8d\xe0\xae\x95\xe0\xaf\x88\0"
-"biz.bb\0benevento.it\0rl.no\0bygland.no\0"
-"port.fr\0asso.ht\0prd.mg\0"
-"biz.at\0"
-"tra.kp\0"
-"*.aichi.jp\0khabarovsk.ru\0"
-"campidano-medio.it\0"
-"biz.az\0"
-"newmexico.museum\0va.us\0"
-"finearts.museum\0"
-"murmansk.ru\0"
-"\xc3\xb8rsta.no\0radom.pl\0k12.sc.us\0"
-"5.bg\0kvinesdal.no\0"
-"ap.it\0"
-"*.fukushima.jp\0"
-"asso.bj\0"
-"mad.museum\0"
-"lebesby.no\0"
-"og.it\0glas.museum\0sauda.no\0"
-"i.se\0"
-"k12.tx.us\0"
-"asso.ci\0mk.ua\0"
-"cesena-forli.it\0"
-"lowicz.pl\0"
-"k12.id.us\0"
-"tas.gov.au\0"
-"lukow.pl\0"
-"utazas.hu\0"
-"maritimo.museum\0bjark\xc3\xb8y.no\0"
-"adm.br\0"
-"pr.it\0lib.vi.us\0"
-"bergamo.it\0k12.va.us\0"
-"k.bg\0"
-"railroad.museum\0"
-"!british-library.uk\0"
-"cincinnati.museum\0"
-"sorreisa.no\0"
-"asso.dz\0!nel.uk\0"
-"rm.it\0"
-"nv.us\0"
-"nx.cn\0gos.pk\0"
-"vic.edu.au\0"
-"biella.it\0tjome.no\0"
-"r\xc3\xb8yken.no\0"
-"beiarn.no\0"
-"qc.ca\0"
-"georgia.museum\0square.museum\0"
-"labor.museum\0omasvuotna.no\0cc.la.us\0"
-"br.com\0reggioemilia.it\0"
-"kristiansund.no\0"
-"sorum.no\0"
-"orsta.no\0"
-"furniture.museum\0surrey.museum\0eng.pro\0"
-"asn.lv\0balat.no\0"
-"lavangen.no\0sld.pa\0"
-"fla.no\0k12.ms.us\0k12.nc.us\0"
-"bardu.no\0"
-"donostia.museum\0"
-"club.tw\0"
-"elburg.museum\0"
-"gs.hl.no\0lodingen.no\0"
-"samara.ru\0"
-"vc.it\0*.nagasaki.jp\0"
-"fosnes.no\0"
-"fuel.aero\0"
-"qc.com\0"
-"skjervoy.no\0"
-"bill.museum\0kv\xc3\xa6""fjord.no\0"
-"skydiving.aero\0*.tokushima.jp\0"
-"!congresodelalengua3.ar\0laquila.it\0k12.ct.us\0"
-"gorge.museum\0linz.museum\0sherbrooke.museum\0"
-"tranoy.no\0ing.pa\0"
-"ptz.ru\0"
-"kr.it\0prato.it\0stat.no\0"
-"\xd0\xb8\xd0\xba\xd0\xbe\xd0\xbc.museum\0"
-"cosenza.it\0"
-"stj\xc3\xb8rdalshalsen.no\0"
-"finland.museum\0leka.no\0cc.pr.us\0"
-"historichouses.museum\0s\xc3\xa1l\xc3\xa1t.no\0"
-"venice.it\0"
-"biz.ki\0"
-"g\xc3\xa1ls\xc3\xa1.no\0"
-"\xe7\xbb\x84\xe7\xbb\x87.hk\0"
-"*.yamanashi.jp\0"
-"rad\xc3\xb8y.no\0"
-"6.bg\0"
-"fareast.ru\0"
-"paragliding.aero\0ba.it\0aq.it\0"
-"sk\xc3\xa5nland.no\0"
-"its.me\0"
-"us.na\0"
-"hl.no\0cc.ga.us\0"
-"ac\0granvin.no\0"
-"ad\0qld.edu.au\0!city.sapporo.jp\0"
-"ae\0"
-"af\0"
-"ag\0crotone.it\0"
-"dallas.museum\0"
-"ai\0brussels.museum\0"
-"dali.museum\0"
-"la.us\0"
-"al\0salzburg.museum\0"
-"am\0"
-"an\0cl.it\0"
-"ao\0"
-"aq\0ba\0"
-"bb\0"
-"as\0lajolla.museum\0"
-"at\0"
-"be\0"
-"bf\0inderoy.no\0snz.ru\0"
-"aw\0bg\0"
-"ax\0bh\0cim.br\0ltd.gi\0biz.mv\0"
-"bi\0xz.cn\0\xe7\xb5\x84\xe7\xb9\x94.hk\0biz.mw\0"
-"az\0bj\0"
-"bm\0tranibarlettaandria.it\0naamesjevuemie.no\0"
-"chattanooga.museum\0"
-"bo\0"
-"l.bg\0"
-"ca\0"
-"br\0stateofdelaware.museum\0"
-"bs\0cc\0"
-"cd\0biz.nr\0"
-"cf\0berlev\xc3\xa5g.no\0"
-"bw\0cg\0snaase.no\0"
-"ch\0harvestcelebration.museum\0ck.ua\0"
-"by\0ci\0"
-"bz\0bahccavuotna.no\0"
-"cl\0yuzhno-sakhalinsk.ru\0"
-"cm\0halsa.no\0lyngdal.no\0"
-"cn\0"
-"co\0rn.it\0childrens.museum\0frankfurt.museum\0"
-"cr\0"
-"pskov.ru\0"
-"cu\0de\0"
-"cv\0fr.it\0lib.ky.us\0"
-"aseral.no\0kvam.no\0"
-"cx\0hellas.museum\0"
-"hof.no\0"
-"cz\0dj\0k12.la.us\0"
-"dk\0moscow.museum\0"
-"sosnowiec.pl\0"
-"dm\0biz.pk\0"
-"schokoladen.museum\0biz.pl\0"
-"far.br\0arna.no\0tynset.no\0"
-"even\xc3\xa1\xc5\xa1\xc5\xa1i.no\0"
-"ec\0"
-"biz.pr\0"
-"ee\0celtic.museum\0"
-"scientist.aero\0modern.museum\0"
-"pr.us\0"
-"dz\0"
-"mj\xc3\xb8ndalen.no\0s\xc3\xb8r-odal.no\0"
-"!nic.tr\0"
-"conference.aero\0vestnes.no\0k12.mn.us\0"
-"!pref.hiroshima.jp\0"
-"es\0trapani.it\0"
-"fermo.it\0vard\xc3\xb8.no\0"
-"eu\0gs.hm.no\0r\xc3\xb8""d\xc3\xb8y.no\0stordal.no\0"
-"gc.ca\0!nhs.uk\0"
-"jgora.pl\0"
-"fi\0stjordal.no\0"
-"fm\0!mediaphone.om\0"
-"kirov.ru\0pvt.k12.ma.us\0"
-"fo\0"
-"ga\0hyllestad.no\0"
-"gov.ac\0fr\0andriabarlettatrani.it\0ga.us\0"
-"gov.ae\0gd\0estate.museum\0"
-"gov.af\0ge\0tolga.no\0"
-"gf\0asso.re\0cc.oh.us\0"
-"gg\0florida.museum\0"
-"presse.ci\0gh\0"
-"gi\0k12.dc.us\0"
-"ltd.lk\0orland.no\0"
-"gov.al\0"
-"gl\0tokke.no\0"
-"hanggliding.aero\0gm\0"
-"hareid.no\0"
-"gov.ba\0tj.cn\0gp\0"
-"gov.bb\0gq\0"
-"gov.as\0gr\0agrigento.it\0lc.it\0"
-"gs\0kalmykia.ru\0aero.tt\0"
-"gov.bf\0"
-"county.museum\0"
-"gov.bh\0hn.cn\0gw\0"
-"gov.az\0gy\0assn.lk\0guernsey.museum\0"
-"hk\0"
-"gov.bm\0h\xc3\xa6gebostad.no\0biz.tj\0"
-"hm\0computer.museum\0"
-"gov.bo\0hn\0kl\xc3\xa6""bu.no\0"
-"pulawy.pl\0"
-"gov.br\0"
-"trd.br\0gov.bs\0hr\0reggio-calabria.it\0historyofscience.museum\0lipetsk.ru\0"
-"gov.cd\0*.nagoya.jp\0"
-"ht\0id\0spjelkavik.no\0"
-"hu\0ie\0aero.mv\0"
-"marketplace.aero\0mn.it\0biz.tt\0"
-"gov.by\0saintlouis.museum\0mer\xc3\xa5ker.no\0"
-"gov.bz\0"
-"7.bg\0gov.cl\0virtual.museum\0"
-"gov.cm\0vennesla.no\0kr.ua\0"
-"gov.cn\0im\0ar.it\0galsa.no\0rovno.ua\0"
-"gov.co\0in\0"
-"io\0limanowa.pl\0"
-"iq\0k12.ga.us\0"
-"ir\0"
-"riik.ee\0is\0\xc3\xa1laheadju.no\0"
-"gov.cu\0it\0hawaii.museum\0seaport.museum\0"
-"je\0pubol.museum\0hm.no\0"
-"gov.cx\0"
-"*.chiba.jp\0"
-"*.kawasaki.jp\0"
-"k.se\0"
-"gov.dm\0"
-"aland.fi\0vik.no\0"
-"yk.ca\0jo\0kobierzyce.pl\0"
-"jp\0biz.vn\0"
-"presse.fr\0lib.il.us\0\xe9\xa6\x99\xe6\xb8\xaf\0"
-"gov.ec\0"
-"transport.museum\0bronnoy.no\0"
-"slg.br\0gov.ee\0asso.nc\0bievat.no\0"
-"nyny.museum\0"
+"net.vc\0"
"kg\0"
-"mo-i-rana.no\0"
-"gov.dz\0ki\0"
-"monmouth.museum\0"
-"suldal.no\0"
-"bc.ca\0km\0zt.ua\0"
-"pt.it\0kn\0"
-"fineart.museum\0"
-"la\0"
-"kr\0gulen.no\0"
-"m.bg\0mo.cn\0lc\0alaheadju.no\0g\xc3\xa1\xc5\x8bgaviika.no\0"
-"nowaruda.pl\0cc.ut.us\0"
-"br\xc3\xb8nn\xc3\xb8y.no\0"
-"ky\0li\0overhalla.no\0"
-"kz\0khv.ru\0"
+"agents.aero\0ki\0"
+"kristiansund.no\0navuotna.no\0"
+"krokstadelva.no\0rns.tn\0net.vi\0"
+"km\0"
+"kn\0"
+"ct.it\0karikatur.museum\0de.us\0"
+"pn.it\0"
+"production.aero\0la\0net.vn\0"
+"kr\0"
+"lc\0"
+"vibo-valentia.it\0"
+"skien.no\0"
+"ky\0li\0modalen.no\0"
+"kz\0photography.museum\0\xd8\xa7\xd9\x8a\xd8\xb1\xd8\xa7\xd9\x86\0"
"lk\0"
-"artdeco.museum\0"
-"ma\0fortworth.museum\0kostroma.ru\0"
-"ro.it\0kirkenes.no\0vestby.no\0"
-"urbino-pesaro.it\0ls\0mc\0alstahaug.no\0"
-"blog.br\0gov.ge\0lt\0md\0"
-"lu\0me\0botanicgarden.museum\0"
-"gov.gg\0lv\0oh.us\0"
-"gov.gh\0mg\0valley.museum\0"
-"gov.gi\0mh\0"
-"ly\0sandiego.museum\0"
-"mk\0"
-"ml\0"
-"gov.gn\0rollag.no\0naklo.pl\0"
-"mn\0"
-"mo\0"
-"mp\0leirvik.no\0"
-"gov.gr\0mq\0na\0cc.ks.us\0"
-"mr\0"
+"academy.museum\0oppegard.no\0limanowa.pl\0"
+"salerno.it\0maritimo.museum\0"
+"groundhandling.aero\0rindal.no\0"
+"marburg.museum\0"
+"ma\0"
+"in.na\0hurum.no\0vads\xc3\xb8.no\0olkusz.pl\0"
+"ls\0mc\0fhv.se\0"
+"ag.it\0lt\0md\0"
+"na.it\0lu\0me\0"
+"lv\0net.ws\0"
+"mg\0newport.museum\0"
+"mh\0loppa.no\0"
+"ly\0"
+"vercelli.it\0communications.museum\0"
+"edu\0mk\0"
+"*.saitama.jp\0ml\0"
+"mn\0k.se\0"
+"mo\0guovdageaidnu.no\0"
+"mp\0"
+"mq\0na\0kv\xc3\xa6""fjord.no\0"
+"mr\0eidskog.no\0ternopil.ua\0"
"ms\0nc\0"
-"valer.hedmark.no\0"
+"is-not-certified.com\0"
"mu\0ne\0"
-"mv\0nf\0"
+"reggioemilia.it\0mv\0nf\0"
"mw\0"
-"mx\0nord-odal.no\0jur.pro\0"
-"my\0"
-"gov.hk\0name.hr\0"
+"mx\0nordkapp.no\0"
+"my\0is-a-lawyer.com\0"
+"from-az.net\0"
+"safety.aero\0"
"nl\0"
-"astronomy.museum\0lib.nm.us\0"
-"catania.it\0"
"no\0"
-"skjerv\xc3\xb8y.no\0"
-"k12.ne.us\0"
-"monza-e-della-brianza.it\0!pref.fukushima.jp\0nr\0"
-"gov.ie\0"
-"stuttgart.museum\0nu\0cc.mn.us\0"
-"karasjohka.no\0"
-"engine.aero\0bearalvahki.no\0"
-"oyer.no\0"
-"ve.it\0"
-"gov.im\0froland.no\0cc.ar.us\0"
-"gov.in\0magadan.ru\0"
-"pescara.it\0"
-"gov.iq\0usdecorativearts.museum\0"
-"gov.ir\0pa\0"
-"gov.is\0"
-"gov.it\0lavagis.no\0"
-"gov.je\0"
-"naustdal.no\0pe\0k12.or.us\0"
-"gd.cn\0carraramassa.it\0pf\0"
-"ph\0"
-"cc.ny.us\0"
-"rissa.no\0"
-"info\0pk\0pomorze.pl\0"
+"nr\0"
+"pvt.ge\0cahcesuolo.no\0nu\0po.gov.pl\0kurgan.ru\0"
+"accident-prevention.aero\0"
+"alabama.museum\0lavangen.no\0"
+"histoire.museum\0"
+"knowsitall.info\0"
+"birdart.museum\0palace.museum\0"
+"k12.or.us\0"
+"chattanooga.museum\0rybnik.pl\0"
+"opoczno.pl\0parti.se\0"
+"settlers.museum\0pa\0"
+"r\xc3\xb8mskog.no\0pe\0\xd1\x83\xd0\xba\xd1\x80\0"
+"pf\0cc.ms.us\0cc.nc.us\0"
+"bolzano.it\0"
+"ph\0is-a-financialadvisor.com\0"
+"la-spezia.it\0"
+"pk\0"
"pl\0"
-"gov.jo\0asso.km\0pn\0"
-"*.okayama.jp\0cieszyn.pl\0"
-"freight.aero\0"
-"pr\0"
-"narvik.no\0ps\0"
-"!pref.aichi.jp\0elverum.no\0pt\0"
-"edunet.tn\0"
-"gov.kg\0"
-"flatanger.no\0marker.no\0pw\0"
-"gov.ki\0nuremberg.museum\0"
-"aip.ee\0"
-"gov.km\0"
-"gov.kn\0"
-"gov.kp\0"
-"rieti.it\0gov.la\0bajddar.no\0"
-"gov.lb\0aviation.museum\0"
-"gov.lc\0"
-"asso.mc\0"
-"re\0"
-"ut.us\0"
-"sa.gov.au\0gov.ky\0"
-"mo.it\0gov.kz\0"
-"gov.lk\0"
-"iraq.museum\0"
-"badajoz.museum\0"
-"8.bg\0inder\xc3\xb8y.no\0"
-"monticello.museum\0ro\0ks.ua\0"
-"gov.ma\0svizzera.museum\0"
-"gov.lr\0sa\0"
-"matera.it\0sb\0"
-"gov.lt\0rs\0sc\0"
-"gov.me\0sd\0"
-"gov.lv\0ru\0se\0"
-"gov.mg\0"
-"rw\0sg\0"
-"gov.ly\0assisi.museum\0kids.museum\0sh\0"
-"si\0"
-"gov.mk\0"
-"gov.ml\0sk\0"
-"sl\0"
-"gov.mn\0airguard.museum\0sm\0"
-"gov.mo\0l.se\0sn\0"
-"so\0"
-"gov.mr\0ks.us\0"
-"name.az\0sr\0"
-"naturhistorisches.museum\0tc\0"
-"trainer.aero\0cn.it\0urbinopesaro.it\0gov.mu\0nativeamerican.museum\0st\0td\0"
-"gov.mv\0su\0"
-"trentino.it\0gov.mw\0gov.ng\0tf\0"
+"vard\xc3\xb8.no\0"
+"v\xc3\xa1rgg\xc3\xa1t.no\0pn\0"
+"blogdns.net\0"
+"dyndns-at-home.com\0"
+"campidanomedio.it\0notteroy.no\0marine.ru\0"
+"greta.fr\0pr\0"
+"ps\0sakhalin.ru\0"
+"pt\0"
+"chirurgiens-dentistes.fr\0"
+"pw\0"
+"hamar.no\0"
+"montreal.museum\0"
+"likescandy.com\0"
+"*.hiroshima.jp\0"
+"agrar.hu\0"
+"lipetsk.ru\0"
+"augustow.pl\0"
+"in.rs\0"
+"portlligat.museum\0re\0"
+"avellino.it\0wroclaw.pl\0"
+"zachpomor.pl\0"
+"nsw.edu.au\0forgot.his.name\0"
+"nuremberg.museum\0kommune.no\0mosreg.ru\0"
+"og.it\0oh.us\0"
+"agriculture.museum\0giehtavuoatna.no\0"
+"time.no\0radom.pl\0"
+"zj.cn\0salem.museum\0ro\0"
+"cc.hi.us\0"
+"sa\0"
+"sb\0is-into-anime.com\0"
+"rs\0sc\0"
+"sd\0"
+"ru\0se\0"
+"oceanographique.museum\0utsira.no\0rw\0sg\0"
+"sh\0"
+"gv.ao\0loabat.no\0sorum.no\0si\0in.th\0"
+"sk\0lib.nh.us\0"
+"farsund.no\0sl\0k12.ga.us\0"
+"gj\xc3\xb8vik.no\0sm\0"
+"gv.at\0sn\0"
+"bozen.it\0presidio.museum\0so\0"
+"aviation.museum\0rzeszow.pl\0"
+"leirfjord.no\0dvrdns.org\0"
+"sr\0in.ua\0"
+"js.cn\0s\xc3\xb8r-odal.no\0tc\0"
+"st\0td\0"
+"su\0"
+"monticello.museum\0tf\0"
"tg\0"
-"co.ae\0venezia.it\0gov.my\0th\0"
-"!pref.ehime.jp\0sy\0"
-"co.ag\0lewismiller.museum\0ostrowiec.pl\0sz\0tj\0"
+"th\0ivano-frankivsk.ua\0"
+"virtual.museum\0pors\xc3\xa1\xc5\x8bgu.no\0sy\0"
+"sz\0tj\0"
"tk\0"
-"motorcycle.museum\0tl\0"
-"birdart.museum\0trogstad.no\0tm\0"
-"tn\0"
-"humanities.museum\0to\0"
-"pu.it\0gov.nr\0ua\0lib.ut.us\0"
-"co.ao\0"
-"co.ba\0trondheim.no\0tt\0"
-"in-addr.arpa\0tempioolbia.it\0!city.yokohama.jp\0mn.us\0"
-"n.bg\0schoenbrunn.museum\0tv\0"
-"co.at\0aremark.no\0tw\0ug\0"
-"jus.br\0"
-"co.bi\0bialowieza.pl\0ar.us\0"
-"audnedaln.no\0kustanai.ru\0"
+"tl\0"
+"tm\0"
+"i.bg\0tn\0"
+"to\0"
+"getmyip.com\0"
+"ua\0"
+"recreation.aero\0"
+"im.it\0tt\0in.us\0is-a-doctor.com\0"
+"altai.ru\0tv\0"
+"tula.ru\0tw\0ug\0"
+"firm.ht\0"
+"pilot.aero\0fitjar.no\0"
+"cc.ny.us\0"
"va\0"
-"us\0vc\0"
-"newport.museum\0"
-"kopervik.no\0gov.ph\0vg\0"
-"ny.us\0vi\0"
-"co.bw\0finn\xc3\xb8y.no\0gov.pk\0uz\0"
-"honefoss.no\0gov.pl\0lanbib.se\0"
-"co.ci\0"
-"gov.pn\0intl.tn\0"
-"act.gov.au\0vn\0"
-"television.museum\0gov.pr\0"
-"sykkylven.no\0v\xc3\xa5ler.hedmark.no\0gov.ps\0"
-"gov.pt\0"
-"co.cr\0vu\0"
-"legnica.pl\0"
-"sa.au\0"
-"bjarkoy.no\0"
-"openair.museum\0birkenes.no\0lib.nj.us\0"
-"fylkesbibl.no\0holt\xc3\xa5len.no\0"
-"iz.hr\0"
+"firm.in\0gol.no\0irkutsk.ru\0us\0vc\0"
+"lib.tx.us\0"
+"coastaldefence.museum\0vg\0"
+"jerusalem.museum\0romsa.no\0elk.pl\0"
+"przeworsk.pl\0komforb.se\0ga.us\0vi\0"
+"elvendrell.museum\0uz\0"
+"*.oita.jp\0"
+"vn\0"
+"gs.ah.no\0"
+"chiropractic.museum\0nationalheritage.museum\0gs.mr.no\0"
+"molde.no\0"
+"yaroslavl.ru\0"
+"forlicesena.it\0vu\0"
+"transport.museum\0"
+"fot.br\0"
+"aurskog-holand.no\0"
+"of.by\0cs.it\0waw.pl\0ct.us\0"
+"med.br\0"
"ws\0"
-"oceanographique.museum\0"
-"b\xc3\xa1id\xc3\xa1r.no\0cc.mo.us\0"
-"\xc3\xb8ygarden.no\0"
-"contemporary.museum\0"
-"gb.com\0cc.as.us\0"
-"belluno.it\0gov.sa\0"
-"gov.sb\0"
-"gov.rs\0gov.sc\0"
-"gov.sd\0"
-"!pref.nagasaki.jp\0gov.ru\0"
-"asia\0"
-"sa.cr\0gov.rw\0gov.sg\0"
-"kuzbass.ru\0"
-"gs.vf.no\0"
-"gov.sl\0"
-"norfolk.museum\0"
-"k12.de.us\0"
-"mil\0"
-"rendalen.no\0"
-"gov.st\0"
-"agro.pl\0"
-"orkdal.no\0"
-"le.it\0gov.sy\0"
-"gov.tj\0"
-"co.gg\0nore-og-uvdal.no\0v\xc3\xa5ler.\xc3\xb8stfold.no\0"
-"gov.tl\0"
-"gov.tn\0"
-"gov.to\0"
-"kids.us\0"
-"equipment.aero\0gov.ua\0"
-"!city.niigata.jp\0gov.tt\0"
-"sel.no\0"
-"l\xc3\xa4ns.museum\0"
-"gov.tw\0"
-"rennebu.no\0"
-"egersund.no\0"
-"medecin.km\0"
-"co.gy\0"
-"!mecon.ar\0"
-"berlin.museum\0"
-"carrara-massa.it\0"
-"9.bg\0"
-"pri.ee\0gov.vc\0"
-"at.it\0"
-"muosat.no\0"
-"co.id\0"
-"co.hu\0"
-"etne.no\0"
-"\xc3\xa1lt\xc3\xa1.no\0"
-"gov.vn\0"
-"modelling.aero\0"
-"co.im\0"
-"co.in\0\xc3\xa5krehamn.no\0m.se\0"
-"gouv.fr\0*.kitakyushu.jp\0"
-"narviika.no\0"
-"rennes\xc3\xb8y.no\0"
-"co.ir\0afjord.no\0"
-"lea\xc5\x8bgaviika.no\0buryatia.ru\0"
-"co.it\0coastaldefence.museum\0"
-"co.je\0vf.no\0"
-"osteroy.no\0"
-"uslivinghistory.museum\0"
-"aerobatic.aero\0"
-"mesaverde.museum\0mining.museum\0"
-"a\xc3\xa9roport.ci\0gov.ws\0"
-"co.jp\0copenhagen.museum\0"
-"pv.it\0"
-"r\xc3\xb8mskog.no\0"
-"vossevangen.no\0porsanger.no\0"
-"salat.no\0mo.us\0"
-"o.bg\0imperia.it\0carrier.museum\0"
-"carbonia-iglesias.it\0"
-"as.us\0"
-"alvdal.no\0"
-"state.museum\0mandal.no\0cn.ua\0"
-"cuneo.it\0"
-"gouv.ht\0"
-"!city.okayama.jp\0co.kr\0"
-"co.lc\0"
-"sa.it\0"
-"donna.no\0"
+"firm.co\0"
+"jfk.museum\0lorenskog.no\0"
+"kunstunddesign.museum\0cc.vi.us\0"
+"austin.museum\0music.museum\0"
+"ath.cx\0"
+"nesoddtangen.no\0is-a-republican.com\0"
+"astrakhan.ru\0"
+"kobierzyce.pl\0"
+"gran.no\0"
+"tonsberg.no\0"
+"championship.aero\0"
+"medecin.fr\0"
+"sanok.pl\0"
+"\xc3\xb8rland.no\0"
+"muncie.museum\0gs.tr.no\0"
+"dynalias.net\0"
+"b\xc3\xb8mlo.no\0"
+"usculture.museum\0"
+"emp.br\0med.ec\0"
+"jan-mayen.no\0"
+"med.ee\0"
+"lib.la.us\0"
+"imb.br\0"
+"b\xc3\xb8.telemark.no\0"
+"sykkylven.no\0"
+"from-nv.com\0"
+"r\xc3\xb8""d\xc3\xb8y.no\0"
"sortland.no\0"
-"tomsk.ru\0"
-"birthplace.museum\0l\xc3\xb8""dingen.no\0"
-"ge.it\0orenburg.ru\0"
-"cn.com\0"
-"co.ma\0"
-"co.ls\0skaun.no\0name.vn\0"
-"navigation.aero\0"
-"cagliari.it\0co.me\0portal.museum\0"
-"gouv.bj\0"
-"udine.it\0"
-"engineer.aero\0"
-"szczecin.pl\0"
-"wales.museum\0"
-"co.na\0bo.telemark.no\0"
-"austin.museum\0"
-"k12.mo.us\0"
-"co.mu\0"
-"gouv.ci\0"
-"co.mw\0"
-"esp.br\0"
-"naturalhistorymuseum.museum\0"
-"mosjoen.no\0"
-"solund.no\0"
-"name.tj\0"
-"sand\xc3\xb8y.no\0"
-"kunstunddesign.museum\0"
-"cartoonart.museum\0collection.museum\0gsm.pl\0"
+"audnedaln.no\0cc.de.us\0"
+"is-a-patsfan.org\0"
+"bar.pro\0"
"aure.no\0"
-"!pref.yamaguchi.jp\0historical.museum\0"
-"name.tt\0"
-"england.museum\0valle.no\0"
-"cc.ok.us\0"
-"salangen.no\0"
-"gloppen.no\0"
-"cc.co.us\0"
-"contemporaryart.museum\0"
-"tas.edu.au\0"
-"trading.aero\0"
-"mazury.pl\0"
-"!pref.aomori.jp\0co.pl\0"
-"opoczno.pl\0"
-"*.kobe.jp\0co.pn\0"
-"oppegard.no\0"
-"co.pw\0"
-"saltdal.no\0smolensk.ru\0"
-"na.it\0\xc4\x8d\xc3\xa1hcesuolo.no\0"
-"vgs.no\0evenassi.no\0"
-"parachuting.aero\0jl.cn\0maritime.museum\0bd.se\0"
-"badaddja.no\0"
-"bergen.no\0"
-"brussel.museum\0"
-"avoues.fr\0"
-"cesenaforli.it\0"
-"oregontrail.museum\0"
-"ullensaker.no\0"
-"jobs\0"
-"accident-prevention.aero\0"
-"n.se\0"
-"association.museum\0california.museum\0"
-"cultural.museum\0co.rs\0"
-"zoology.museum\0"
-"pruszkow.pl\0"
-"control.aero\0nt.edu.au\0net\0komforb.se\0"
-"lincoln.museum\0aurland.no\0name.pr\0co.rw\0"
-"ostroleka.pl\0"
-"isernia.it\0"
-"tm.fr\0"
-"gs.ol.no\0"
-"nb.ca\0marnardal.no\0"
-"williamsburg.museum\0"
-"!jet.uk\0"
-"suisse.museum\0\xc3\xa5""fjord.no\0flakstad.no\0"
-"karmoy.no\0"
-"yn.cn\0chesapeakebay.museum\0"
-"nsw.au\0"
-"amur.ru\0co.st\0"
-"imb.br\0siellak.no\0\xe7\xb6\xb2\xe8\xb7\xaf.tw\0"
-"name.na\0"
-"co.th\0"
-"p.bg\0"
-"co.sz\0co.tj\0"
-"name.mv\0\xc3\xa5lesund.no\0lib.in.us\0"
-"lucerne.museum\0naumburg.museum\0"
-"society.museum\0name.my\0"
-"tinn.no\0"
-"co.tt\0"
-"unj\xc3\xa1rga.no\0"
-"co.ug\0"
-"lib.wy.us\0"
-"co.tz\0"
-"ass.km\0"
-"ok.us\0"
-"tm.hu\0kongsvinger.no\0"
-"ibestad.no\0"
-"juedisches.museum\0co.us\0"
-"cq.cn\0"
-"rs.ba\0"
-"wa.edu.au\0co.vi\0"
-"co.uz\0"
-"health.museum\0"
-"grue.no\0"
-"automotive.museum\0journalism.museum\0settlement.museum\0"
-"qh.cn\0interactive.museum\0"
-"snillfjord.no\0!national-library-scotland.uk\0"
-"balsfjord.no\0lib.nh.us\0"
-"kolobrzeg.pl\0"
-"gs.tm.no\0"
-"h\xc3\xb8nefoss.no\0"
-"ol.no\0"
-"music.museum\0moareke.no\0"
-"b\xc3\xb8.nordland.no\0"
-"name.mk\0lier.no\0"
-"eidfjord.no\0"
-"sc.cn\0tm.km\0"
-"jelenia-gora.pl\0sanok.pl\0"
-"intelligence.museum\0"
-"srv.br\0elblag.pl\0"
-"judygarland.museum\0"
-"padua.it\0"
-"k12.co.us\0"
-"lindesnes.no\0"
-"name.jo\0izhevsk.ru\0"
-"yorkshire.museum\0mel\xc3\xb8y.no\0"
-"tm.mc\0lib.pr.us\0"
-"hjartdal.no\0"
-"tm.mg\0"
-"bari.it\0milano.it\0"
-"lg.jp\0"
-"zgrad.ru\0"
-"sm\xc3\xb8la.no\0"
-"communications.museum\0"
-"arts.co\0seoul.kr\0engerdal.no\0"
-"oster\xc3\xb8y.no\0"
-"\xe6\x95\x8e\xe8\x82\xb2.hk\0foggia.it\0verran.no\0"
-"orskog.no\0voronezh.ru\0kv.ua\0"
-"av.it\0"
-"tm.no\0nissedal.no\0"
-"historisches.museum\0gs.mr.no\0"
-"medecin.fr\0"
-"montreal.museum\0"
-"o.se\0"
-"!metro.tokyo.jp\0sola.no\0"
-"k12.tn.us\0"
-"floro.no\0"
-"milan.it\0*.shiga.jp\0"
-"berkeley.museum\0"
-"maintenance.aero\0"
-"ws.na\0"
-"lindas.no\0cc.ia.us\0"
-"brescia.it\0embroidery.museum\0"
-"arezzo.it\0tm.pl\0"
-"r\xc3\xa6lingen.no\0"
-"burghof.museum\0"
+"estate.museum\0hjartdal.no\0"
+"egyptian.museum\0deatnu.no\0"
+"francaise.museum\0"
+"gen.in\0dyndns-free.com\0"
+"dell-ogliastra.it\0"
+"building.museum\0"
+"tp.it\0from-in.com\0"
+"military.museum\0"
+"carrier.museum\0"
+"novara.it\0roros.no\0"
+"livorno.it\0barrell-of-knowledge.info\0"
"rec.br\0"
-"q.bg\0"
-"!nawras.om\0"
+"*.ehime.jp\0"
+"kirkenes.no\0donna.no\0"
+"pharmacy.museum\0york.museum\0k12.md.us\0"
+"rec.co\0rc.it\0"
+"castle.museum\0buryatia.ru\0"
+"torino.it\0cranbrook.museum\0"
+"from-ok.com\0"
+"intl.tn\0"
+"arq.br\0"
+"isleofman.museum\0localhistory.museum\0"
+"r\xc3\xb8yrvik.no\0"
+"surgut.ru\0"
+"med.ht\0catanzaro.it\0"
+"hamaroy.no\0"
+"marylhurst.museum\0"
+"air-surveillance.aero\0"
+"pro.az\0bl.it\0"
+"roma.museum\0"
+"*.hyogo.jp\0"
+"mo.cn\0brasil.museum\0"
+"fusa.no\0leitungsen.de\0"
+"pro.br\0pistoia.it\0homelinux.net\0"
+"catering.aero\0jogasz.hu\0zgorzelec.pl\0"
+"tromsa.no\0"
+"lier.no\0"
+"!city.saitama.jp\0"
+"fla.no\0"
+"bydgoszcz.pl\0press.se\0"
+"sk\xc3\xa5nland.no\0lowicz.pl\0"
+"li.it\0"
+"saves-the-whales.com\0"
+"state.museum\0from-nh.com\0"
+"servebbs.org\0"
+"boleslawiec.pl\0"
+"zakopane.pl\0"
+"larsson.museum\0"
+"stavanger.no\0"
+"amber.museum\0fauske.no\0jgora.pl\0orenburg.ru\0"
+"scientist.aero\0h.bg\0coop.ht\0bern.museum\0"
+"\xe7\xbb\x84\xe7\xbb\x87.hk\0sn\xc3\xa5""ase.no\0"
+"pro.ec\0"
+"illustration.museum\0"
+"he.cn\0homeunix.com\0"
+"gangwon.kr\0"
+"web.co\0sa.com\0assisi.museum\0epilepsy.museum\0s\xc3\xb8gne.no\0cc.oh.us\0"
+"b\xc3\xa5tsfjord.no\0"
+"v\xc3\xa5g\xc3\xa5.no\0"
+"rauma.no\0lib.gu.us\0"
+"from-wv.com\0"
+"\xe7\xae\x87\xe4\xba\xba.hk\0"
+"med.ly\0"
+"si.it\0"
+"web.do\0"
+"coop.br\0"
+"swinoujscie.pl\0from-nm.com\0"
+"gausdal.no\0i.ph\0"
+"lomza.pl\0is-saved.org\0"
+"qsl.br\0"
+"of.no\0"
+"nu.ca\0suli.hu\0"
+"!pref.mie.jp\0"
+"travel.pl\0"
+"dnsalias.com\0"
+"stpetersburg.museum\0"
+"cr.it\0dc.us\0"
+"gok.pk\0"
+"nord-odal.no\0"
+"vevelstad.no\0"
+"society.museum\0egersund.no\0"
+"cc.in.us\0writesthisblog.com\0"
+"koenig.ru\0"
+"arendal.no\0"
+"unbi.ba\0museum.tt\0dyndns.org\0"
+"bir.ru\0"
+"maryland.museum\0"
+"med.pa\0"
+"pro.ht\0"
+"mo.it\0press.ma\0"
+"lel.br\0!pref.yamaguchi.jp\0dnepropetrovsk.ua\0homedns.org\0"
+"*.aomori.jp\0"
+"can.museum\0"
+"aero.tt\0cc.ga.us\0"
+"med.pl\0"
+"i.se\0"
"hammarfeasta.no\0"
+"architecture.museum\0"
+"!pref.hokkaido.jp\0vf.no\0"
+"!pref.kagawa.jp\0"
+"hob\xc3\xb8l.no\0"
+"nyny.museum\0khabarovsk.ru\0"
+"sondrio.it\0"
+"*.tochigi.jp\0odda.no\0"
+"snaase.no\0starachowice.pl\0"
+"aero.mv\0"
+"tsaritsyn.ru\0"
+"*.shizuoka.jp\0"
+"cc.ct.us\0"
+"web.id\0doomdns.com\0"
+"bjugn.no\0"
+"gmina.pl\0"
+"firm.ro\0"
+"nom.ad\0"
+"rec.nf\0"
+"nom.ag\0samnanger.no\0"
+"to.it\0"
+"travel.tt\0"
+"med.sa\0"
+"depot.museum\0"
+"sh.cn\0"
+"tra.kp\0bahccavuotna.no\0med.sd\0"
+"idrett.no\0"
+"agrinet.tn\0"
+"t\xc3\xb8nsberg.no\0"
+"tyumen.ru\0"
+"yorkshire.museum\0"
+"!city.osaka.jp\0"
+"vadso.no\0"
+"k12.mi.us\0"
+"torino.museum\0vinnica.ua\0"
+"textile.museum\0"
+"union.aero\0algard.no\0"
+"*.miyagi.jp\0halloffame.museum\0"
+"cq.cn\0"
+"nom.br\0air.museum\0"
+"ragusa.it\0br\xc3\xb8nn\xc3\xb8y.no\0"
+"afjord.no\0oyer.no\0"
+"!city.niigata.jp\0pro.na\0"
+"!city.chiba.jp\0florida.museum\0"
+"far.br\0ruovat.no\0aid.pl\0"
+"nom.co\0humanities.museum\0pro.mv\0"
+"tydal.no\0k12.in.us\0"
+"web.lk\0kazan.ru\0"
+"nu.it\0os\xc3\xb8yro.no\0nv.us\0"
+"certification.aero\0"
+"cargo.aero\0firm.nf\0"
+"!pref.nagano.jp\0"
+"oryol.ru\0"
+"name.hr\0"
+"lesja.no\0isteingeek.de\0"
+"dallas.museum\0uw.gov.pl\0"
+"trapani.it\0"
+"lib.nj.us\0"
+"is-an-accountant.com\0"
+"southcarolina.museum\0"
+"ky.us\0"
+"karlsoy.no\0"
+"cosenza.it\0gjemnes.no\0"
+"web.nf\0"
+"oppdal.no\0"
+"is-a-nurse.com\0"
+"rec.ro\0"
+"geometre-expert.fr\0donostia.museum\0"
+"solund.no\0"
+"nom.es\0"
+"fhs.no\0vardo.no\0"
+"g.bg\0"
+"vega.no\0"
"moss.no\0"
-"on.ca\0"
-"gouv.rw\0"
-"luxembourg.museum\0"
-"rec.co\0british.museum\0"
-"reggio-emilia.it\0"
-"gouv.sn\0lib.wv.us\0"
-"avocat.fr\0"
-"simbirsk.ru\0"
-"jar.ru\0"
-"monza-brianza.it\0"
-"tm.ro\0"
-"imageandsound.museum\0"
-"jpn.com\0mr.no\0"
-"siracusa.it\0"
-"norilsk.ru\0tm.se\0"
+"pro.pr\0"
+"pesaro-urbino.it\0silk.museum\0il.us\0"
+"ve.it\0"
+"historisch.museum\0history.museum\0alesund.no\0"
+"airport.aero\0"
+"nom.fr\0"
+"museum.mv\0selfip.net\0"
+"museum.mw\0"
+"k12.mo.us\0"
+"cinema.museum\0mallorca.museum\0museum.no\0web.pk\0bieszczady.pl\0"
+"dni.us\0"
+"nt.au\0"
+"no.com\0"
+"botany.museum\0pl.ua\0"
+"parachuting.aero\0gjesdal.no\0"
+"gyeonggi.kr\0"
+"ham-radio-op.net\0"
+"bellevue.museum\0"
+"nt.ca\0"
+"vic.gov.au\0"
+"name.eg\0"
+"preservation.museum\0lib.ri.us\0"
+"randaberg.no\0"
+"public.museum\0"
+"bruxelles.museum\0"
+"nyc.museum\0"
+"bj.cn\0eisenbahn.museum\0"
+"bialystok.pl\0"
+"trainer.aero\0atlanta.museum\0"
+"name.az\0"
+"mn.it\0wloclawek.pl\0pro.tt\0mo.us\0"
+"sciencesnaturelles.museum\0"
+"s\xc3\xb8r-fron.no\0scrapping.cc\0"
+"federation.aero\0"
+"h.se\0"
+"uk.com\0"
+"qld.gov.au\0ad.jp\0"
+"glass.museum\0"
+"gallery.museum\0"
+"nom.km\0stalowa-wola.pl\0"
+"bashkiria.ru\0lib.ks.us\0"
+"comunica\xc3\xa7\xc3\xb5""es.museum\0"
+"modena.it\0web.tj\0!jet.uk\0"
+"dr\xc3\xb8""bak.no\0\xd8\xa7\xd9\x84\xd8\xa7\xd8\xb1\xd8\xaf\xd9\x86\0"
+"kaluga.ru\0"
+"fyresdal.no\0scrapper-site.net\0"
+"jorpeland.no\0polkowice.pl\0is-very-nice.org\0"
+"handson.museum\0pro.vn\0"
+"cc.dc.us\0"
+"barletta-trani-andria.it\0"
+"lubin.pl\0"
+"troms\xc3\xb8.no\0"
+"fjell.no\0"
+"fm.br\0"
+"potenza.it\0"
+"lib.ut.us\0"
+"versailles.museum\0"
+"nom.mg\0whaling.museum\0gu.us\0"
"tn.it\0"
-"jeju.kr\0"
-"!pref.fukuoka.jp\0"
-"*.hyogo.jp\0portlligat.museum\0"
-"!pref.osaka.jp\0"
-"siena.it\0sc.kr\0omaha.museum\0saskatchewan.museum\0"
-"phoenix.museum\0vanylven.no\0"
-"botanicalgarden.museum\0"
-"turek.pl\0"
-"vagsoy.no\0"
-"riodejaneiro.museum\0"
-"vi.it\0"
+"gsm.pl\0"
+"monza-brianza.it\0"
+"ac.ae\0is-leet.com\0"
+"gs.of.no\0"
+"furniture.museum\0isa-geek.org\0"
+"losangeles.museum\0"
+"lea\xc5\x8bgaviika.no\0"
+"coop.tt\0"
+"fuossko.no\0lib.sc.us\0"
+"ac.at\0"
+"ac.be\0eng.pro\0"
+"arts.co\0ra.it\0"
+"niepce.museum\0"
+"chesapeakebay.museum\0"
+"ski.no\0lapy.pl\0"
+"vic.edu.au\0v\xc3\xa5ler.hedmark.no\0"
+"tarnobrzeg.pl\0"
+"jeonnam.kr\0"
+"coop.mv\0buyshouses.net\0"
+"coop.mw\0"
+"tingvoll.no\0"
+"veterinaire.km\0"
+"ac.ci\0narvik.no\0"
+"nom.pa\0"
+"ac.cn\0nom.pe\0"
+"padova.it\0"
+"ac.cr\0k12.ec\0starnberg.museum\0"
+"gs.vf.no\0"
+"nom.pl\0"
"uy.com\0"
-"kristiansand.no\0"
-"sd.cn\0trento.it\0"
-"muncie.museum\0"
-"berg.no\0meldal.no\0"
+"traniandriabarletta.it\0"
+"hurdal.no\0"
+"perugia.it\0lib.nm.us\0"
+"est-mon-blogueur.com\0"
+"inf.br\0"
+"caserta.it\0from-tn.com\0"
+"botanicgarden.museum\0"
+"tree.museum\0grajewo.pl\0"
+"automotive.museum\0"
+"wielun.pl\0"
+"even\xc3\xa1\xc5\xa1\xc5\xa1i.no\0naustdal.no\0"
+"bio.br\0"
+"landes.museum\0"
+"lg.jp\0"
+"association.aero\0"
+"nordre-land.no\0ing.pa\0nom.re\0"
+"f.bg\0santabarbara.museum\0cbg.ru\0"
+"gov\0"
+"inf.cu\0andriatranibarletta.it\0maritime.museum\0"
+"volda.no\0"
+"is-by.us\0"
+"communication.museum\0"
+"ivanovo.ru\0"
+"lodingen.no\0"
+"honefoss.no\0swidnica.pl\0nom.ro\0"
+"gs.cn\0"
+"cc.nv.us\0"
+"veterinaire.fr\0"
"nes.buskerud.no\0"
-"saratov.ru\0"
-"gs.oslo.no\0"
-"harstad.no\0vaga.no\0"
-"research.museum\0"
-"brunel.museum\0ia.us\0"
-"test.tj\0"
-"columbia.museum\0"
-"ms.it\0stockholm.museum\0"
-"reklam.hu\0"
-"pomorskie.pl\0lg.ua\0"
-"bg.it\0historicalsociety.museum\0rns.tn\0"
-"mallorca.museum\0surgut.ru\0cc.sc.us\0"
-"ushistory.museum\0"
-"palana.ru\0"
-"snoasa.no\0"
-"naturalsciences.museum\0"
-"yaroslavl.ru\0"
-"unjarga.no\0"
-"p.se\0"
-"ingatlan.hu\0"
-"irc.pl\0"
-"savona.it\0"
-"cr.it\0"
-"test.ru\0cc.tn.us\0"
-"ms.kr\0museumvereniging.museum\0"
-"time.no\0k12.ia.us\0"
-"vladimir.ru\0"
-"correios-e-telecomunica\xc3\xa7\xc3\xb5""es.museum\0"
-"gouv.km\0nationalfirearms.museum\0"
-"m\xc3\xa1latvuopmi.no\0"
-"aero\0yosemite.museum\0"
-"r.bg\0school.na\0"
-"cc.vi.us\0"
-"*.wakayama.jp\0"
-"beauxarts.museum\0averoy.no\0ullensvang.no\0bar.pro\0"
-"!city.hiroshima.jp\0"
-"b\xc3\xa1hccavuotna.no\0"
-"frosta.no\0"
-"gdynia.pl\0"
-"medical.museum\0"
-"embaixada.st\0"
-"balsan.it\0vantaa.museum\0"
-"za.net\0"
-"!city.saitama.jp\0lib.ks.us\0"
-"fnd.br\0"
-"ru.com\0se.com\0hol.no\0modalen.no\0"
-"gouv.ml\0chukotka.ru\0"
-"malopolska.pl\0"
-"mansion.museum\0"
-"iki.fi\0children.museum\0"
-"cyber.museum\0rec.nf\0mo\xc3\xa5reke.no\0"
-"to.it\0"
-"hasvik.no\0"
-"\xc3\xb8yer.no\0"
-"arts.ro\0sc.ug\0"
-"lib.ar.us\0"
-"sc.tz\0cc.ms.us\0cc.nc.us\0"
-"etc.br\0poznan.pl\0"
-"cnt.br\0viking.museum\0"
-"*.miyazaki.jp\0"
-"melhus.no\0"
-"skodje.no\0vevelstad.no\0"
-"sc.us\0"
-"upow.gov.pl\0"
-"!city.fukuoka.jp\0brandywinevalley.museum\0natuurwetenschappen.museum\0tranby.no\0"
-"bahn.museum\0msk.ru\0"
-"delmenhorst.museum\0"
-"russia.museum\0fuoisku.no\0"
-"shell.museum\0"
-"r\xc3\xa1isa.no\0"
-"hs.kr\0udmurtia.ru\0"
-"palermo.it\0"
-"pilot.aero\0"
+"games.hu\0"
+"9.bg\0from-vt.com\0"
+"tank.museum\0"
+"udm.ru\0"
+"l\xc3\xb8ten.no\0tranoy.no\0"
+"fm.it\0"
+"media.aero\0iraq.museum\0\xc3\xa1k\xc5\x8boluokta.no\0"
+"ac.gn\0"
+"leka.no\0"
+"and\xc3\xb8y.no\0cc.ky.us\0"
+"!pref.tokushima.jp\0"
+"*.akita.jp\0coldwar.museum\0nt.no\0"
+"tur.br\0ns.ca\0smola.no\0homelinux.org\0"
+"square.museum\0"
+"coop.km\0stv.ru\0"
+"taxi.br\0"
+"konyvelo.hu\0stuttgart.museum\0hadsel.no\0lugansk.ua\0"
+"children.museum\0nuernberg.museum\0"
+"eastafrica.museum\0"
+"sa.edu.au\0ac.id\0jaworzno.pl\0"
+"mbone.pl\0cc.il.us\0"
+"kolobrzeg.pl\0malbork.pl\0"
+"iki.fi\0"
+"medizinhistorisches.museum\0"
+"levanger.no\0"
+"ac.im\0\xc3\xa5lg\xc3\xa5rd.no\0"
+"tm.fr\0ac.in\0"
+"ac.ir\0name.vn\0"
+"mn.us\0"
+"mat.br\0"
+"trento.it\0"
+"dnsdojo.com\0"
+"phoenix.museum\0"
+"g.se\0"
+"ac.jp\0"
+"graz.museum\0"
+"drangedal.no\0"
+"prato.it\0county.museum\0"
+"is-very-bad.org\0"
+"dynalias.org\0"
+"repbody.aero\0land-4-sale.us\0"
+"jus.br\0"
+"name.tj\0"
+"co.ae\0"
+"bajddar.no\0"
+"co.ag\0tm.hu\0"
+"ac.kr\0"
+"tj\xc3\xb8me.no\0"
+"baltimore.museum\0fm.no\0"
+"nt.ro\0"
+"kraanghke.no\0"
+"fl\xc3\xa5.no\0um.gov.pl\0name.tt\0"
+"co.ao\0"
+"fst.br\0"
+"co.ba\0birkenes.no\0lib.ia.us\0"
+"auto.pl\0"
+"co.at\0"
+"blog.br\0garden.museum\0"
"tn.us\0"
-"priv.hu\0"
-"li.it\0"
-"kr\xc3\xa5""anghke.no\0mosreg.ru\0"
-"lib.fl.us\0"
-"plants.museum\0"
-"ulsan.kr\0national.museum\0"
-"mil.ac\0!pref.nara.jp\0surgeonshall.museum\0"
-"mil.ae\0santacruz.museum\0vi.us\0"
-"wlocl.pl\0"
-"mt.it\0napoli.it\0alaska.museum\0arts.nf\0"
-"missoula.museum\0"
-"rec.ro\0"
-"mil.al\0"
-"marburg.museum\0waw.pl\0"
-"pharmaciens.km\0indianapolis.museum\0larsson.museum\0"
-"cc.sd.us\0"
-"mil.ba\0mobi\0"
-"indianmarket.museum\0"
-"recreation.aero\0padova.it\0"
-"varese.it\0parti.se\0"
-"mil.az\0"
-"mil.bo\0!pref.kagoshima.jp\0khmelnitskiy.ua\0"
-"rygge.no\0"
-"os\xc3\xb8yro.no\0"
-"mil.br\0"
-"cs.it\0"
-"austevoll.no\0fjell.no\0"
-"mil.by\0"
-"!pref.tokushima.jp\0org\0"
-"mil.cn\0gs.svalbard.no\0"
-"mil.co\0"
-"pz.it\0lib.va.us\0\xd1\x80\xd1\x84\0"
-"\xe4\xb8\xaa\xe4\xba\xba.hk\0ms.us\0nc.us\0k12.wi.us\0"
-"s.bg\0drangedal.no\0"
-"en.it\0"
-"culturalcenter.museum\0"
-"house.museum\0divttasvuotna.no\0"
-"fhs.no\0"
-"circus.museum\0"
-"priv.at\0"
-"mil.ec\0"
-"ruovat.no\0"
-"midsund.no\0vagan.no\0"
-"casadelamoneda.museum\0"
-"bristol.museum\0"
-"and.museum\0"
-"ascolipiceno.it\0computerhistory.museum\0vyatka.ru\0"
-"uhren.museum\0"
-"lahppi.no\0"
-"*.yokohama.jp\0cody.museum\0lib.al.us\0"
-"colonialwilliamsburg.museum\0indian.museum\0cc.ky.us\0"
-"tp.it\0biev\xc3\xa1t.no\0"
-"can.br\0royken.no\0"
-"id.ir\0"
-"mediocampidano.it\0tromso.no\0"
-"kartuzy.pl\0k12.ok.us\0"
-"*.saitama.jp\0stjohn.museum\0m\xc3\xa1tta-v\xc3\xa1rjjat.no\0"
-"mil.ge\0trani-barletta-andria.it\0"
-"lib.as.us\0"
-"swiebodzin.pl\0cc.mt.us\0cc.nd.us\0"
-"mil.gh\0"
-"science-fiction.museum\0\xd9\x82\xd8\xb7\xd8\xb1\0"
-"airtraffic.aero\0"
-"konskowola.pl\0"
-"scienceandhistory.museum\0nysa.pl\0sd.us\0"
-"balestrand.no\0"
-"oygarden.no\0"
-"her\xc3\xb8y.nordland.no\0"
-"!pref.ishikawa.jp\0strand.no\0"
-"\xe7\xb5\x84\xe7\xbb\x87.hk\0mil.hn\0"
-"gob.bo\0volda.no\0"
-"losangeles.museum\0larvik.no\0"
-"university.museum\0"
-"cc.dc.us\0"
-"mil.id\0"
-"sorfold.no\0"
-"watch-and-clock.museum\0"
-"flor\xc3\xb8.no\0"
-"nittedal.no\0oppeg\xc3\xa5rd.no\0"
-"k12.ri.us\0"
-"gob.cl\0"
-"komi.ru\0"
-"government.aero\0mil.in\0"
-"mil.iq\0id.lv\0"
-"culture.museum\0"
-"id.ly\0"
-"raholt.no\0"
-"lubin.pl\0grozny.ru\0"
-"kchr.ru\0"
-"nikolaev.ua\0"
-"lib.sd.us\0"
-"de.com\0"
-"mil.jo\0"
-"*.kanagawa.jp\0gaular.no\0miasta.pl\0"
-"bi.it\0rnu.tn\0uzhgorod.ua\0"
-"idrett.no\0v\xc3\xa5gs\xc3\xb8y.no\0"
-"wroclaw.pl\0"
-"res.aero\0ne.jp\0mil.kg\0"
-"\xc3\xa5mli.no\0"
-"education.museum\0"
-"dgca.aero\0"
-"mil.km\0"
-"trolley.museum\0"
-"cci.fr\0r.se\0"
-"archaeological.museum\0"
-"monzaedellabrianza.it\0mil.kr\0"
-"gob.es\0kvafjord.no\0ky.us\0"
-"lecco.it\0"
-"ct.it\0"
-"magazine.aero\0"
-"operaunite.com\0ne.kr\0"
-"mil.kz\0skoczow.pl\0"
-"nf.ca\0"
-"western.museum\0"
-"kunst.museum\0gaivuotna.no\0karpacz.pl\0spb.ru\0cc.id.us\0"
-"slask.pl\0"
-"youth.museum\0"
-"adv.br\0campidanomedio.it\0!songfest.om\0"
-"geelvinck.museum\0\xd8\xa7\xd9\x85\xd8\xa7\xd8\xb1\xd8\xa7\xd8\xaa\0"
-"mil.lv\0"
-"fie.ee\0mil.mg\0mt.us\0nd.us\0k12.vt.us\0"
-"t.bg\0ushuaia.museum\0"
-"off.ai\0"
-"irkutsk.ru\0"
-"stor-elvdal.no\0tourism.tn\0"
-"penza.ru\0"
-"bj.cn\0\xe4\xb8\xad\xe5\x9b\xbd\0"
-"civilwar.museum\0mil.mv\0opole.pl\0"
-"nes.akershus.no\0"
-"mil.my\0karelia.ru\0"
-"como.it\0sande.vestfold.no\0"
-"\xe4\xb8\xad\xe5\x9c\x8b\0"
-"gob.hn\0lib.la.us\0"
-"mil.no\0cc.wv.us\0"
-"boleslawiec.pl\0"
-"!pref.niigata.jp\0gs.sf.no\0dc.us\0k12.mi.us\0"
-"museum\0dep.no\0kv\xc3\xa6nangen.no\0l\xc3\xa1hppi.no\0"
-"film.museum\0"
-"frei.no\0"
-"notodden.no\0risor.no\0"
-"messina.it\0"
-"eidsberg.no\0"
-"krakow.pl\0lib.mt.us\0lib.nd.us\0"
-"rauma.no\0"
-"mulhouse.museum\0"
-"sibenik.museum\0grong.no\0mil.pe\0"
-"budejju.no\0k12.nv.us\0"
-"stavanger.no\0mil.ph\0"
-"forli-cesena.it\0"
-"naples.it\0cc.ne.us\0"
-"s\xc3\xb8r-aurdal.no\0"
-"mil.pl\0"
-"vibo-valentia.it\0ski.museum\0siedlce.pl\0"
-"bus.museum\0"
-"tozsde.hu\0"
-"!pref.shizuoka.jp\0santabarbara.museum\0"
-"zhitomir.ua\0"
-"pro.az\0"
-"ne.pw\0"
-"pro.br\0orkanger.no\0b\xc3\xb8.telemark.no\0"
-"roma.it\0cc.ct.us\0"
-"heritage.museum\0giske.no\0"
-"!pref.kumamoto.jp\0prof.pr\0"
-"*.kochi.jp\0"
-"andria-barletta-trani.it\0*.toyama.jp\0sveio.no\0"
-"id.us\0"
-"bolt.hu\0"
-"fetsund.no\0porsgrunn.no\0"
-"iglesias-carbonia.it\0"
-"sf.no\0"
-"mil.ru\0"
-"from.hr\0asnes.no\0mil.rw\0"
-"alesund.no\0sos.pl\0"
-"livorno.it\0"
-"crafts.museum\0"
-"aquila.it\0"
-"vega.no\0"
-"jewelry.museum\0"
-"sk\xc3\xa1nit.no\0chita.ru\0"
-"pro.ec\0"
-"fortmissoula.museum\0j\xc3\xb8lster.no\0"
-"pro\0mil.st\0"
-"busan.kr\0lib.ga.us\0"
-"dellogliastra.it\0"
-"aosta.it\0chungnam.kr\0gob.mx\0"
-"mil.sy\0k12.hi.us\0"
-"mil.tj\0"
-"ulan-ude.ru\0mil.to\0wv.us\0"
-"luster.no\0volgograd.ru\0"
-"pa.it\0kommunalforbund.se\0lib.tx.us\0"
-"s.se\0"
-"qsl.br\0"
-"mil.tw\0"
-"est.pr\0ens.tn\0"
-"lib.id.us\0"
-"mil.tz\0"
-"uscountryestate.museum\0"
-"agents.aero\0"
-"\xc3\xb8vre-eiker.no\0ne.ug\0"
-"pb.ao\0"
-"gob.pa\0ne.tz\0"
-"tur.br\0"
-"mil.vc\0"
-"or.at\0gob.pe\0"
-"s\xc3\xb8r-fron.no\0"
-"or.bi\0ne.us\0"
-"u.bg\0gob.pk\0"
-"stavern.no\0"
-"brindisi.it\0"
-"aknoluokta.no\0"
-"!pref.kyoto.jp\0tydal.no\0"
-"plc.ly\0muos\xc3\xa1t.no\0"
-"or.ci\0hamaroy.no\0priv.pl\0"
-"vestre-slidre.no\0gniezno.pl\0"
-"\xe7\xae\x87\xe4\xba\xba.hk\0"
-"andebu.no\0"
-"nieruchomosci.pl\0\xd8\xa7\xd9\x84\xd8\xb3\xd8\xb9\xd9\x88\xd8\xaf\xd9\x8a\xd8\xa9\0"
-"or.cr\0pro.ht\0bolzano.it\0"
-"ct.us\0k12.md.us\0"
-"za.org\0"
-"!icnet.uk\0"
-"localhistory.museum\0"
-"firm.ht\0"
-"lel.br\0tr.it\0kvanangen.no\0"
-"sondre-land.no\0t\xc3\xb8nsberg.no\0vefsn.no\0"
-"nature.museum\0yamal.ru\0"
-"rv.ua\0"
-"lans.museum\0lib.ne.us\0"
+"ac.ma\0grue.no\0"
+"co.bi\0!songfest.om\0"
+"bialowieza.pl\0"
+"ac.me\0"
+"cc.mo.us\0"
+"s\xc3\xa1lat.no\0vestre-toten.no\0"
+"engine.aero\0"
+"\xd8\xa7\xd9\x84\xd8\xb3\xd8\xb9\xd9\x88\xd8\xaf\xdb\x8c\xd8\xa9\0"
+"pyatigorsk.ru\0\xe0\xb6\xbd\xe0\xb6\x82\xe0\xb6\x9a\xe0\xb7\x8f\0"
+"co.bw\0"
+"co.ci\0dagestan.ru\0kids.us\0"
+"ac.mu\0"
+"ac.mw\0ac.ng\0"
+"od.ua\0"
+"belluno.it\0tm.km\0misconfused.org\0"
+"co.cr\0"
+"is-a-conservative.com\0isa-geek.com\0"
+"ab.ca\0*.ishikawa.jp\0"
+"*.nara.jp\0nedre-eiker.no\0"
+"dyndns-server.com\0"
+"\xe7\xbb\x84\xe7\xb9\x94.hk\0stranda.no\0lib.pa.us\0"
+"inf.mk\0f\xc3\xb8rde.no\0"
+"bi.it\0az.us\0"
+"ontario.museum\0saotome.st\0"
+"*.fukuoka.jp\0"
+"lg.ua\0"
+"video.hu\0tm.mc\0"
+"!omantel.om\0cc.gu.us\0"
+"skedsmokorset.no\0ac.pa\0"
+"nt.gov.au\0"
+"tm.mg\0"
+"taxi.aero\0dep.no\0prochowice.pl\0"
+"from-ma.com\0"
+"name.pr\0"
+"ingatlan.hu\0nesseby.no\0"
+"dali.museum\0dyndns-work.com\0"
+"kr.com\0"
+"dyndns-mail.com\0"
+"from-ar.com\0"
+"windmill.museum\0ac.pr\0from-co.net\0"
+"assassination.museum\0"
+"name.na\0"
+"arts.ro\0"
+"strand.no\0"
+"dyndns-office.com\0"
+"entertainment.aero\0name.mv\0kvalsund.no\0\xd8\xa7\xdb\x8c\xd8\xb1\xd8\xa7\xd9\x86\0"
+"!city.sapporo.jp\0tm.no\0is-very-good.org\0"
+"dyndns.info\0"
+"name.my\0"
+"e.bg\0pomorskie.pl\0"
+"folkebibl.no\0"
+"co.gg\0usa.museum\0lib.wa.us\0homeftp.org\0"
+"targi.pl\0"
+"vc.it\0ut.us\0"
+"livinghistory.museum\0"
+"hb.cn\0"
+"bronnoy.no\0"
+"haram.no\0"
+"museumcenter.museum\0"
+"ptz.ru\0"
+"fet.no\0"
+"8.bg\0co.gy\0ac.rs\0xxx\0"
+"ac.ru\0ac.se\0"
+"ac.rw\0k12.ne.us\0"
+"tm.pl\0gniezno.pl\0"
+"mo\xc3\xa5reke.no\0"
+"co.id\0"
+"co.hu\0"
+"christiansburg.museum\0"
+"wegrow.pl\0lanbib.se\0"
+"ryazan.ru\0"
+"co.im\0"
+"co.in\0brescia.it\0ac.th\0"
+"ac.sz\0ac.tj\0"
+"co.ir\0"
+"arts.nf\0tjeldsund.no\0is-a-geek.com\0"
+"co.it\0"
+"pi.it\0co.je\0name.mk\0"
+"helsinki.museum\0"
+"svalbard.no\0"
+"delaware.museum\0"
+"is-a-candidate.org\0"
+"adm.br\0ac.ug\0"
+"kalisz.pl\0k12.vi\0"
+"co.jp\0ac.tz\0"
+"tm.ro\0"
+"*.okayama.jp\0"
+"cymru.museum\0"
+"chieti.it\0"
+"lib.nv.us\0"
+"wa.gov.au\0konin.pl\0tm.se\0"
+"us.na\0dynathome.net\0"
+"name.jo\0"
+"!nacion.ar\0"
+"trieste.it\0"
+"ru.com\0se.com\0"
+"co.kr\0"
+"co.lc\0f.se\0"
+"theater.museum\0ac.vn\0"
+"\xc3\xb8rskog.no\0"
+"port.fr\0"
+"flog.br\0rahkkeravju.no\0"
+"krakow.pl\0"
+"coop\0"
+"co.ma\0moareke.no\0"
+"sogndal.no\0"
+"co.ls\0"
+"co.me\0skodje.no\0!statecouncil.om\0"
+"mail.pl\0"
+"educational.museum\0uhren.museum\0"
"lur\xc3\xb8y.no\0"
-"eu.com\0firm.in\0"
-"hjelmeland.no\0"
-"gs.tr.no\0"
-"casino.hu\0essex.museum\0tourism.pl\0"
-"rennesoy.no\0"
-"priv.no\0"
-"baths.museum\0mytis.ru\0"
-"tingvoll.no\0"
-"cc.az.us\0"
-"sh.cn\0"
-"!pref.miyazaki.jp\0s\xc3\xb8rfold.no\0"
-"aurskog-holand.no\0malatvuopmi.no\0"
-"lib.ct.us\0"
-"cc.pa.us\0"
-"pa.gov.pl\0"
-"firm.co\0cc.de.us\0"
-"nrw.museum\0"
-"daejeon.kr\0livinghistory.museum\0"
-"gildeskal.no\0lund.no\0"
-"\xc3\xb8ksnes.no\0stavropol.ru\0"
-"b\xc3\xa6rum.no\0r\xc3\xb8yrvik.no\0"
-"osoyro.no\0"
-"priv.me\0sula.no\0!parliament.uk\0"
-"nationalheritage.museum\0"
-"jaworzno.pl\0"
-"dinosaur.museum\0"
-"garden.museum\0trust.museum\0"
-"turen.tn\0"
-"kautokeino.no\0"
-"pro.na\0"
-"gorizia.it\0"
-"siljan.no\0"
-"or.id\0pro.mv\0"
-"bieszczady.pl\0www.ro\0"
-"lib.ee\0antiques.museum\0brasil.museum\0tr.no\0"
-"aejrie.no\0"
-"!pref.hokkaido.jp\0"
-"schlesisches.museum\0"
-"huissier-justice.fr\0or.it\0"
-"t.se\0"
-"environment.museum\0"
-"vindafjord.no\0"
-"edu.ac\0or.jp\0"
-"tree.museum\0"
-"groundhandling.aero\0edu.af\0"
-"rochester.museum\0sanfrancisco.museum\0"
-"ebiz.tw\0"
-"kirovograd.ua\0"
-"edu.al\0"
-"edu.an\0\xc3\xa1k\xc5\x8boluokta.no\0v\xc3\xa5g\xc3\xa5.no\0"
-"v.bg\0"
+"sf.no\0"
+"gb.com\0is-very-evil.org\0"
+"edunet.tn\0"
+"beardu.no\0"
+"co.na\0"
+"is-a-rockstar.com\0"
+"nowaruda.pl\0"
+"gr.it\0"
+"per.la\0co.mu\0"
+"marnardal.no\0"
+"co.mw\0wolomin.pl\0"
+"edu.ac\0"
+"tas.gov.au\0"
+"edu.af\0vlog.br\0!pref.niigata.jp\0cc.mn.us\0"
+"co.nl\0gs.nt.no\0"
+"co.no\0"
+"gr.jp\0!city.kawasaki.jp\0"
+"edu.al\0burghof.museum\0sunndal.no\0!omanpost.om\0"
+"tempio-olbia.it\0stj\xc3\xb8rdal.no\0"
+"edu.an\0"
+"za.com\0"
"edu.ba\0"
-"edu.bb\0nesset.no\0"
-"hornindal.no\0pro.pr\0"
-"or.kr\0"
-"az.us\0"
-"edu.bh\0volkenkunde.museum\0"
-"edu.bi\0"
+"edu.bb\0natuurwetenschappen.museum\0"
+"mining.museum\0kutno.pl\0"
+"cechire.com\0"
+"edu.bh\0kicks-ass.net\0"
+"edu.bi\0memorial.museum\0nesodden.no\0"
"edu.az\0"
-"b\xc3\xb8mlo.no\0"
-"edu.bm\0"
-"edu.bo\0tyumen.ru\0"
+"genova.it\0"
+"edu.bm\0sydney.museum\0"
+"edu.bo\0barrel-of-knowledge.info\0"
+"uvic.museum\0"
"edu.br\0"
-"edu.bs\0pa.us\0"
-"alto-adige.it\0whaling.museum\0"
-"*.iwate.jp\0"
-"edu.ci\0law.pro\0"
-"edu.bz\0de.us\0"
-"lib.ak.us\0"
-"edu.cn\0"
-"edu.co\0"
-"laspezia.it\0"
-"baidar.no\0"
-"ts.it\0"
-"or.na\0"
-"edu.cu\0hotel.lk\0"
-"show.aero\0or.mu\0"
-"sandnes.no\0"
-"museumcenter.museum\0"
-"edu.dm\0kazan.ru\0"
-"biz\0caltanissetta.it\0odessa.ua\0k12.oh.us\0"
-"crimea.ua\0"
-"research.aero\0lom.no\0"
-"edu.ec\0florence.it\0clock.museum\0sshn.se\0"
-"edu.ee\0game.tw\0"
-"!pref.okinawa.jp\0"
-"ilawa.pl\0"
-"edu.dz\0indiana.museum\0"
-"gs.jan-mayen.no\0"
-"publ.pt\0"
-"nom.ad\0"
-"skanit.no\0gdansk.pl\0k12.pa.us\0"
-"nom.ag\0edu.es\0"
-"if.ua\0"
-"pro.tt\0lib.de.us\0"
-"environmentalconservation.museum\0cc.or.us\0"
-"bern.museum\0nat.tn\0"
-"rubtsovsk.ru\0"
-"!educ.ar\0masoy.no\0"
-"bologna.it\0"
-"\xc3\xa5snes.no\0fhv.se\0"
-"*.tottori.jp\0radoy.no\0"
-"romskog.no\0"
-"malbork.pl\0"
-"olbiatempio.it\0"
-"edu.ge\0"
-"edu.gh\0"
-"edu.gi\0"
-"or.pw\0"
-"hob\xc3\xb8l.no\0"
-"nom.br\0edu.gn\0virginia.museum\0mbone.pl\0!nls.uk\0"
-"seljord.no\0pro.vn\0"
-"edu.gp\0"
-"edu.gr\0"
-"!uba.ar\0!pref.saitama.jp\0"
-"greta.fr\0gs.aa.no\0kvinnherad.no\0"
-"lib.sc.us\0"
-"js.cn\0nom.co\0edu.hk\0"
-"lesja.no\0"
-"bl.it\0"
-"edu.hn\0\xc3\xb8ystre-slidre.no\0mari-el.ru\0"
-"hotel.hu\0"
-"rindal.no\0"
-"edu.ht\0"
-"!pref.miyagi.jp\0"
-"midtre-gauldal.no\0"
-"xj.cn\0australia.museum\0"
-"ab.ca\0salvadordali.museum\0olawa.pl\0"
-"pc.it\0"
-"u.se\0"
-"edu.in\0b\xc3\xa1l\xc3\xa1t.no\0"
-"ln.cn\0alta.no\0"
-"chelyabinsk.ru\0"
-"edu.iq\0"
-"ontario.museum\0"
+"edu.bs\0"
+"edu.bt\0"
+"per.nf\0"
+"co.pl\0isla.pr\0"
+"mansion.museum\0is-an-engineer.com\0"
+"edu.ci\0co.pn\0\xd8\xa7\xd9\x84\xd8\xb3\xd8\xb9\xd9\x88\xd8\xaf\xdb\x8c\xdb\x83\0"
+"edu.bz\0\xe6\x94\xbf\xe5\xba\x9c.hk\0"
+"arezzo.it\0"
+"\xe6\x96\xb0\xe5\x8a\xa0\xe5\x9d\xa1\0"
+"kv.ua\0"
+"edu.cn\0stjordal.no\0"
+"edu.co\0amsterdam.museum\0pvt.k12.ma.us\0"
+"schlesisches.museum\0cc.tn.us\0"
+"consultant.aero\0co.pw\0"
+"edu.cu\0jewishart.museum\0"
+"!city.kyoto.jp\0"
+"jelenia-gora.pl\0"
+"ind.br\0edu.dm\0"
+"edu.do\0le.it\0"
+"edu.ec\0"
+"edu.ee\0wallonie.museum\0"
+"gs.fm.no\0"
+"edu.eg\0"
+"gangaviika.no\0"
+"edu.dz\0magadan.ru\0"
+"!pref.miyagi.jp\0americana.museum\0"
+"ed.ao\0d.bg\0co.rs\0"
+"b\xc3\xa1l\xc3\xa1t.no\0"
+"royrvik.no\0"
+"k12.co.us\0"
+"co.rw\0"
+"edu.es\0aejrie.no\0"
+"ae.org\0"
+"vb.it\0"
+"ha.cn\0rv.ua\0from-dc.com\0"
+"cc.az.us\0"
+"stor-elvdal.no\0"
+"plantation.museum\0co.st\0"
+"7.bg\0co.th\0"
+"trust.museum\0"
+"edu.ge\0co.sz\0co.tj\0lib.hi.us\0selfip.org\0"
+"for-better.biz\0"
+"k12.mn.us\0"
+"ed.ci\0edu.gh\0is-a-geek.org\0"
+"edu.gi\0fl.us\0"
+"student.aero\0"
+"klepp.no\0szkola.pl\0"
+"edu.gn\0veg\xc3\xa5rshei.no\0"
+"co.tt\0is-a-anarchist.com\0"
+"ar.com\0edu.gp\0is-a-bulls-fan.com\0"
+"ed.cr\0meland.no\0"
+"edu.gr\0co.ug\0"
+"co.tz\0"
+"per.sg\0"
+"mragowo.pl\0"
+"is-a-musician.com\0"
+"edu.hk\0broadcast.museum\0"
+"terni.it\0k12.wy.us\0"
+"edu.hn\0cn.it\0co.us\0"
+"inder\xc3\xb8y.no\0"
+"edu.ht\0co.vi\0"
+"stargard.pl\0co.uz\0"
+"texas.museum\0cc.ut.us\0"
+"seljord.no\0tromso.no\0"
+"ecn.br\0"
+"edu.in\0"
+"lib.as.us\0"
+"lib.ny.us\0is-slick.com\0"
+"edu.iq\0k12.il.us\0"
+"k12.tn.us\0"
"edu.is\0"
-"edu.it\0"
-"b\xc3\xa5tsfjord.no\0"
-"trysil.no\0or.th\0"
-"utsira.no\0"
-"nom.es\0edu.jo\0fhsk.se\0"
-"bale.museum\0"
-"w.bg\0"
-"lillesand.no\0"
-"edu.kg\0"
-"amusement.aero\0"
-"edu.ki\0"
-"fauske.no\0or.ug\0"
-"int.az\0askvoll.no\0eidskog.no\0cv.ua\0"
-"algard.no\0"
-"edu.km\0or.tz\0"
-"nom.fr\0edu.kn\0"
-"*.ibaraki.jp\0hoylandet.no\0"
-"int.bo\0edu.kp\0"
+"edu.it\0jewelry.museum\0monmouth.museum\0s\xc3\xb8rum.no\0"
+"ens.tn\0"
+"anthro.museum\0"
+"fuel.aero\0"
+"colonialwilliamsburg.museum\0"
+"broker.aero\0"
+"britishcolumbia.museum\0lucerne.museum\0"
+"*.kitakyushu.jp\0gs.tm.no\0beiarn.no\0"
+"e.se\0"
+"entomology.museum\0servebbs.com\0"
+"edu.jo\0"
+"vik.no\0"
+"slupsk.pl\0"
+"laspezia.it\0"
+"z.bg\0savannahga.museum\0stange.no\0snz.ru\0"
+"newspaper.museum\0"
+"asti.it\0edu.kg\0"
+"h\xc3\xb8ylandet.no\0"
+"ind.in\0edu.ki\0sarpsborg.no\0"
+"ebiz.tw\0wi.us\0"
+"daejeon.kr\0"
+"edu.km\0sand\xc3\xb8y.no\0"
+"edu.kn\0"
+"edu.kp\0"
"edu.la\0"
-"si.it\0edu.lb\0travel.pl\0"
-"edu.lc\0mx.na\0n\xc3\xa1vuotna.no\0ovre-eiker.no\0"
-"aa.no\0!siemens.om\0"
-"sciences.museum\0or.us\0"
-"cat\0"
-"edu.ky\0"
-"int.ci\0edu.kz\0firm.ro\0cc.wy.us\0"
-"edu.lk\0vaapste.no\0"
-"!pref.tochigi.jp\0"
-"int.co\0podlasie.pl\0"
-"edu.lr\0"
-"karikatur.museum\0jamal.ru\0"
-"gjovik.no\0krager\xc3\xb8.no\0k12.az.us\0"
-"edu.me\0"
-"ud.it\0edu.lv\0entomology.museum\0"
-"edu.mg\0moskenes.no\0"
-"\xe6\x94\xbf\xe5\xba\x9c.hk\0edu.ly\0"
-"stpetersburg.museum\0"
-"edu.mk\0"
-"edu.ml\0nordreisa.no\0"
-"!pref.fukui.jp\0lib.ms.us\0lib.nc.us\0"
-"edu.mn\0\xd9\x81\xd9\x84\xd8\xb3\xd8\xb7\xd9\x8a\xd9\x86\0"
-"fot.br\0edu.mo\0"
-"iron.museum\0"
-"asti.it\0annefrank.museum\0stv.ru\0cc.nh.us\0"
+"air-traffic-control.aero\0edu.lb\0"
+"edu.lc\0steiermark.museum\0"
+"!rakpetroleum.om\0"
+"edu.ky\0convent.museum\0"
+"edu.kz\0czeladz.pl\0"
+"edu.lk\0lib.vi.us\0"
+"radio.br\0indiana.museum\0"
+"int\0"
+"fj.cn\0edu.lr\0"
+"sd.cn\0midsund.no\0tr\xc3\xb8gstad.no\0"
+"edu.me\0exeter.museum\0for-more.biz\0"
+"edu.lv\0from-or.com\0"
+"edu.mg\0!police.uk\0isa-geek.net\0"
+"flight.aero\0salzburg.museum\0"
+"edu.ly\0"
+"edu.mk\0nsn.us\0"
+"edu.ml\0"
+"hu.com\0edu.mn\0mosj\xc3\xb8""en.no\0"
+"edu.mo\0bomlo.no\0chernigov.ua\0"
+"lib.sd.us\0"
+"accident-investigation.aero\0store.nf\0"
+"rieti.it\0"
"edu.mv\0"
-"lodi.it\0edu.mw\0edu.ng\0"
-"gwangju.kr\0edu.mx\0"
+"edu.mw\0edu.ng\0"
+"edu.mx\0dyndns-wiki.com\0"
"edu.my\0"
-"soundandvision.museum\0"
-"lenvik.no\0"
-"ballooning.aero\0"
-"name\0"
-"jogasz.hu\0frogn.no\0"
-"history.museum\0"
-"consultant.aero\0edu.nr\0"
-"manchester.museum\0"
-"*.hiroshima.jp\0"
-"pol.dz\0"
-"*.tochigi.jp\0heimatunduhren.museum\0"
-"!pref.kanagawa.jp\0"
-"firm.nf\0edu.pa\0"
-"coop.ht\0pc.pl\0"
-"chicago.museum\0"
-"vn.ua\0"
+"ushistory.museum\0"
+"art.museum\0"
+"gliding.aero\0"
+"aa.no\0"
+"ed.jp\0trogstad.no\0"
+"show.aero\0r\xc3\xa6lingen.no\0"
+"edu.nr\0"
+"eastcoast.museum\0"
+"florence.it\0"
+"chel.ru\0grozny.ru\0"
+"bg.it\0"
+"from-tx.com\0"
+"surgeonshall.museum\0"
+"brumunddal.no\0sk\xc3\xa1nit.no\0"
+"manx.museum\0"
+"edu.pa\0"
"edu.pe\0"
-"tana.no\0edu.pf\0"
+"hawaii.museum\0edu.pf\0"
"edu.ph\0"
-"nom.km\0"
-"travel.tt\0"
-"edu.pk\0"
-"experts-comptables.fr\0edu.pl\0bryansk.ru\0"
-"edu.pn\0"
-"evje-og-hornnes.no\0warszawa.pl\0"
-"ac.ae\0"
-"edu.pr\0"
-"vaksdal.no\0edu.ps\0dni.us\0"
-"po.gov.pl\0edu.pt\0"
-"nordre-land.no\0vadso.no\0"
-"rnrt.tn\0"
-"sport.hu\0!pref.gifu.jp\0voss.no\0targi.pl\0"
-"flesberg.no\0"
-"photography.museum\0"
-"modena.it\0tonsberg.no\0"
-"ac.at\0"
-"ac.be\0coop.br\0"
-"services.aero\0"
-"nom.mg\0"
-"wielun.pl\0"
-"jefferson.museum\0wy.us\0"
-"pd.it\0ot.it\0neues.museum\0slattum.no\0"
-"vdonsk.ru\0"
-"ar.com\0edu.sa\0"
-"\xc3\xa5l.no\0edu.sb\0"
-"edu.rs\0edu.sc\0"
-"ac.ci\0int.is\0edu.sd\0!tsk.tr\0"
-"br\xc3\xb8nn\xc3\xb8ysund.no\0and\xc3\xb8y.no\0edu.ru\0"
-"pol.ht\0"
-"edu.rw\0edu.sg\0"
-"gyeongnam.kr\0olecko.pl\0"
-"ac.cn\0"
-"graz.museum\0"
-"coldwar.museum\0edu.sl\0"
-"ac.cr\0"
-"edu.sn\0"
-"hamar.no\0"
-"histoire.museum\0"
-"!city.shizuoka.jp\0"
-"edu.st\0"
-"oceanographic.museum\0nh.us\0"
-"x.bg\0"
-"surnadal.no\0"
-"fc.it\0costume.museum\0stalowa-wola.pl\0"
-"valer.ostfold.no\0edu.sy\0"
+"berlevag.no\0"
+"science.museum\0edu.pk\0"
+"edu.pl\0omsk.ru\0"
+"*.kawasaki.jp\0sells-it.net\0"
+"ass.km\0eidsvoll.no\0edu.pn\0"
+"agro.pl\0legnica.pl\0"
+"software.aero\0"
+"eidsberg.no\0edu.pr\0"
+"r\xc3\xa5holt.no\0edu.ps\0"
+"valle.no\0edu.pt\0"
+"gs.sf.no\0sel.no\0"
+"ha.no\0"
+"c.bg\0"
+"unj\xc3\xa1rga.no\0"
+"k12.pr.us\0"
+"uscountryestate.museum\0"
+"va.it\0"
+"joshkar-ola.ru\0"
+"tj.cn\0"
+"arna.no\0"
+"cn.com\0"
+"medio-campidano.it\0oskol.ru\0"
+"cagliari.it\0project.museum\0r\xc3\xb8ros.no\0"
+"rennebu.no\0edu.sa\0"
+"6.bg\0flanders.museum\0edu.sb\0"
+"harstad.no\0edu.rs\0edu.sc\0"
+"edu.sd\0"
+"res.aero\0edu.ru\0"
+"k12.ms.us\0k12.nc.us\0"
+"karelia.ru\0edu.rw\0edu.sg\0"
+"americanart.museum\0"
+"midatlantic.museum\0"
+"cn.ua\0"
+"edu.sl\0"
+"skanland.no\0"
+"porsgrunn.no\0edu.sn\0"
+"from-al.com\0"
+"m\xc3\xa1tta-v\xc3\xa1rjjat.no\0edu.st\0game-server.cc\0"
+"nesna.no\0"
+"online.museum\0edu.sy\0"
"edu.tj\0"
-"arq.br\0"
-"aeroclub.aero\0odo.br\0pe.ca\0\xe7\xb6\xb2\xe7\xb5\xa1.cn\0bronnoysund.no\0nom.pa\0"
+"podhale.pl\0"
+"pg.it\0"
"edu.to\0"
-"paleo.museum\0nom.pe\0edu.ua\0"
-"int.la\0trustee.museum\0forsand.no\0krasnoyarsk.ru\0"
-"!pref.hyogo.jp\0"
+"edu.ua\0mk.ua\0"
+"enebakk.no\0"
+"film.hu\0"
"edu.tt\0"
-"zarow.pl\0"
-"edu.tw\0"
-"nom.pl\0"
-"community.museum\0kvitsoy.no\0"
-"int.lk\0tychy.pl\0"
-"k12.me.us\0"
-"jondal.no\0edu.vc\0"
-"illustration.museum\0"
-"clinton.museum\0"
-"tas.au\0es.kr\0"
-"production.aero\0"
-"rodoy.no\0"
-"database.museum\0bodo.no\0"
-"anthro.museum\0landes.museum\0edu.vn\0"
-"nom.re\0"
-"altai.ru\0"
-"filatelia.museum\0"
-"sk.ca\0lezajsk.pl\0"
-"rockart.museum\0int.mv\0"
-"int.mw\0herad.no\0"
-"eti.br\0ac.gn\0"
-"fedje.no\0nom.ro\0"
-"money.museum\0"
-"\xd9\x85\xd8\xb5\xd8\xb1\0"
-"horten.no\0"
-"gangaviika.no\0mielec.pl\0"
-"uw.gov.pl\0"
-"moma.museum\0"
-"edu.ws\0"
-"go.ci\0"
-"tv.bo\0technology.museum\0"
-"s\xc3\xb8ndre-land.no\0"
-"tv.br\0"
-"jor.br\0lib.dc.us\0"
-"arboretum.museum\0"
-"go.cr\0"
-"artsandcrafts.museum\0\xd8\xaa\xd9\x88\xd9\x86\xd8\xb3\0"
-"psc.br\0ac.id\0!city.chiba.jp\0"
-"wa.au\0"
-"rome.it\0"
-"amli.no\0"
-"ac.im\0lo.it\0"
-"ac.in\0"
-"\xe7\xb6\xb2\xe7\xb5\xa1.hk\0durham.museum\0"
-"ac.ir\0"
-"torino.museum\0"
-"loabat.no\0"
-"com\0"
-"nalchik.ru\0"
+"ed.pw\0"
+"de.com\0artdeco.museum\0database.museum\0edu.tw\0"
"yakutia.ru\0"
-"settlers.museum\0"
-"!promocion.ar\0int.pt\0"
-"union.aero\0"
-"utah.museum\0"
-"giehtavuoatna.no\0"
-"ac.jp\0"
-"air-traffic-control.aero\0"
-"silk.museum\0usantiques.museum\0"
-"bn.it\0"
-"kalisz.pl\0"
-"perm.ru\0"
-"aoste.it\0bindal.no\0"
-"coloradoplateau.museum\0k12.gu.us\0"
-"frosinone.it\0forde.no\0"
-"epilepsy.museum\0"
-"olbia-tempio.it\0"
-"journalist.aero\0ac.kr\0*.sch.uk\0"
-"nic.im\0sciencesnaturelles.museum\0bedzin.pl\0"
-"nic.in\0pe.it\0"
-"w.se\0"
-"!pref.okayama.jp\0"
-"urn.arpa\0"
-"cinema.museum\0"
-"monza.it\0versailles.museum\0int.ru\0"
-"andasuolo.no\0skj\xc3\xa5k.no\0chernovtsy.ua\0"
-"nyc.museum\0int.rw\0paroch.k12.ma.us\0"
-"ringerike.no\0"
-"ac.ma\0"
-"org.ac\0civilaviation.aero\0"
-"rakkestad.no\0"
-"org.ae\0ac.me\0"
-"org.af\0"
-"org.ag\0"
-"org.ai\0stokke.no\0"
-"airport.aero\0"
+"judaica.museum\0"
+"space-to-rent.com\0"
+"mediocampidano.it\0"
+"*.nagoya.jp\0lib.ar.us\0"
+"lib.oh.us\0homeftp.net\0"
+"siracusa.it\0"
+"edu.vc\0"
+"namsskogan.no\0ind.tn\0cc.fl.us\0"
+"pruszkow.pl\0"
+"airtraffic.aero\0"
+"d.se\0"
+"cci.fr\0edu.vn\0"
+"va.no\0"
+"satx.museum\0"
+"y.bg\0kongsvinger.no\0!nawrastelecom.om\0"
+"bjarkoy.no\0"
+"rs.ba\0"
+"istmein.de\0"
+"cheltenham.museum\0"
+"balat.no\0flora.no\0"
+"national.museum\0"
+"ntr.br\0"
+"cc.co.us\0"
+"kvits\xc3\xb8y.no\0notodden.no\0bytom.pl\0"
+"evje-og-hornnes.no\0"
+"rotorcraft.aero\0dellogliastra.it\0*.shiga.jp\0edu.ws\0"
+"!pref.fukui.jp\0naklo.pl\0"
+"museum\0"
+"oystre-slidre.no\0belau.pw\0"
+"est-le-patron.com\0"
+"jessheim.no\0"
+"skole.museum\0"
+"sc.cn\0"
+"fi.cr\0agdenes.no\0"
+"austrheim.no\0"
+"for-the.biz\0"
+"meloy.no\0"
+"unsa.ba\0vladivostok.ru\0"
+"civilization.museum\0r\xc3\xa1isa.no\0"
"finnoy.no\0"
-"org.al\0"
-"org.an\0y.bg\0habmer.no\0"
-"stadt.museum\0holtalen.no\0"
-"int.tj\0"
-"org.ba\0gjerdrum.no\0"
-"org.bb\0ascoli-piceno.it\0molde.no\0r\xc3\xb8st.no\0tysfjord.no\0"
-"pe.kr\0rybnik.pl\0"
+"equipment.aero\0"
+"tas.edu.au\0"
+"\xe7\xb6\xb2\xe7\xb5\xa1.cn\0"
+"rovigo.it\0"
+"!pref.fukushima.jp\0stord.no\0"
+"store.ro\0cc.wi.us\0"
+"priv.hu\0carboniaiglesias.it\0kunst.museum\0"
+"sveio.no\0\xd8\xa7\xd9\x85\xd8\xa7\xd8\xb1\xd8\xa7\xd8\xaa\0doomdns.org\0"
+"ostroleka.pl\0"
+"hole.no\0lib.or.us\0"
+"k12.va.us\0"
+"av.it\0c.la\0"
+"contemporaryart.museum\0"
+"rovno.ua\0"
+"seaport.museum\0"
+"kristiansand.no\0mypets.ws\0"
+"lillehammer.no\0"
+"store.st\0"
+"h\xc3\xa1mm\xc3\xa1rfeasta.no\0z.se\0"
+"ulsan.kr\0lib.ak.us\0"
+"lib.ma.us\0"
+"conf.lv\0turystyka.pl\0"
+"lc.it\0dynalias.com\0"
+"geology.museum\0"
+"!city.hiroshima.jp\0westfalen.museum\0"
+"jl.cn\0"
+"space.museum\0"
+"vgs.no\0"
+"its.me\0artanddesign.museum\0"
+"seoul.kr\0\xd8\xa7\xd9\x84\xd9\x85\xd8\xba\xd8\xb1\xd8\xa8\0"
+"b.bg\0"
+"adult.ht\0pesarourbino.it\0"
+"bo.nordland.no\0"
+"k12.de.us\0"
+"iron.museum\0khakassia.ru\0"
+"go.ci\0"
+"pri.ee\0mantova.it\0dyndns.biz\0"
+"va.us\0"
+"myphotos.cc\0"
+"b.br\0"
+"skjerv\xc3\xb8y.no\0"
+"go.cr\0"
+"lincoln.museum\0kicks-ass.org\0"
+"mielno.pl\0"
+"tcm.museum\0"
+"california.museum\0"
+"5.bg\0"
+"\xe7\xb6\xb2\xe7\xb5\xa1.hk\0"
+"navigation.aero\0association.museum\0"
+"k12.az.us\0"
+"luxembourg.museum\0stathelle.no\0k12.mt.us\0k12.nd.us\0"
+"nikolaev.ua\0"
+"fi.it\0cody.museum\0slattum.no\0"
+"sd.us\0"
+"yekaterinburg.ru\0traeumtgerade.de\0"
+"freight.aero\0"
+"halsa.no\0kuzbass.ru\0"
+"express.aero\0pol.dz\0"
+"priv.at\0etne.no\0rollag.no\0"
+"gs.aa.no\0skanit.no\0"
+"!mediaphone.om\0murmansk.ru\0est-a-la-masion.com\0"
+"!nic.ar\0"
+"trysil.no\0"
+"s\xc3\xb8rreisa.no\0"
+"verran.no\0"
+"trani-andria-barletta.it\0"
+"gov.nc.tr\0"
+"skydiving.aero\0cl.it\0askim.no\0tynset.no\0"
+"\xe0\xae\x87\xe0\xae\xb2\xe0\xae\x99\xe0\xaf\x8d\xe0\xae\x95\xe0\xaf\x88\0"
+"sc.kr\0"
+"oxford.museum\0is-a-liberal.com\0"
+"clock.museum\0"
+"beauxarts.museum\0"
+"tokke.no\0"
+"lib.ok.us\0"
+"unjarga.no\0"
+"s\xc3\xb8r-aurdal.no\0"
+"!pref.tottori.jp\0"
+"mi.it\0"
+"kiev.ua\0"
+"\xc3\xa5lesund.no\0storfjord.no\0"
+"kvam.no\0"
+"padua.it\0"
+"baikal.ru\0c.se\0"
+"kautokeino.no\0"
+"paderborn.museum\0"
+"x.bg\0"
+"civilwar.museum\0"
+"sandnes.no\0is-a-geek.net\0"
+"pol.ht\0"
+"monzaebrianza.it\0"
+"vv.it\0"
"go.id\0"
-"ac.mu\0"
-"ac.mw\0ac.ng\0"
-"org.bh\0\xc3\xa5mot.no\0rana.no\0"
-"org.bi\0"
-"org.az\0belgorod.ru\0int.tt\0"
-"ae.org\0"
-"group.aero\0posts-and-telecommunications.museum\0"
-"org.bm\0salerno.it\0"
-"etnedal.no\0"
-"org.bo\0*.hokkaido.jp\0donetsk.ua\0"
-"ostroda.pl\0"
-"org.br\0"
-"org.bs\0"
-"go.it\0h\xc3\xb8ylandet.no\0"
-"zgorzelec.pl\0"
-"org.bw\0"
-"org.ci\0"
-"org.bz\0vicenza.it\0resistance.museum\0"
-"missile.museum\0"
-"org.cn\0"
-"org.co\0assassination.museum\0"
+"!metro.tokyo.jp\0"
+"microlight.aero\0arboretum.museum\0"
+"fortworth.museum\0naamesjevuemie.no\0for-some.biz\0"
+"indianapolis.museum\0research.museum\0www.ro\0"
+"vegarshei.no\0nysa.pl\0mordovia.ru\0"
+"venice.it\0freiburg.museum\0kragero.no\0"
+"creation.museum\0tvedestrand.no\0verdal.no\0\xe5\x8f\xb0\xe6\xb9\xbe\0from-wy.com\0"
+"go.it\0"
+"hemne.no\0karmoy.no\0gets-it.net\0"
+"naumburg.museum\0"
+"!city.sendai.jp\0"
+"civilisation.museum\0"
+"mill.museum\0broke-it.net\0"
+"!city.kitakyushu.jp\0"
+"res.in\0"
"go.jp\0"
-"tv.it\0austrheim.no\0ac.pa\0"
-"verbania.it\0"
-"palace.museum\0"
-"tmp.br\0int.vn\0"
-"org.cu\0"
-"paris.museum\0"
-"media.aero\0hokksund.no\0"
-"arts.museum\0gemological.museum\0hammerfest.no\0"
-"k12.ny.us\0"
-"org.dm\0hemsedal.no\0ringsaker.no\0sklep.pl\0"
-"h\xc3\xa5.no\0cc.nj.us\0"
-"rzeszow.pl\0"
-"go.kr\0gjesdal.no\0ac.pr\0"
-"org.ec\0"
-"org.ee\0"
-"media.museum\0"
-"terni.it\0touch.museum\0zakopane.pl\0"
-"journal.aero\0org.dz\0"
-"incheon.kr\0"
-"b\xc3\xa1hcavuotna.no\0"
-"leksvik.no\0ulvik.no\0"
-"plantation.museum\0"
-"org.es\0loyalist.museum\0"
-"gildesk\xc3\xa5l.no\0bytom.pl\0"
-"bo.nordland.no\0"
-"ambulance.aero\0iglesiascarbonia.it\0"
-"tw.cn\0\xe6\x96\xb0\xe5\x8a\xa0\xe5\x9d\xa1\0"
-"chocolate.museum\0"
-"pittsburgh.museum\0"
-"royrvik.no\0sor-odal.no\0ac.rs\0"
-"kaluga.ru\0"
-"org.ge\0erotica.hu\0ac.ru\0ac.se\0"
-"org.gg\0leangaviika.no\0ac.rw\0"
-"org.gh\0v\xc3\xa6r\xc3\xb8y.no\0"
-"org.gi\0"
-"jevnaker.no\0"
-"org.gn\0tv.na\0leikanger.no\0"
-"org.gp\0"
-"ask\xc3\xb8y.no\0"
-"org.gr\0wroc.pl\0"
-"ad.jp\0"
-"powiat.pl\0"
-"tj\xc3\xb8me.no\0"
-"coop.tt\0"
-"ac.th\0"
-"mragowo.pl\0ac.sz\0ac.tj\0"
-"org.hk\0bo.it\0"
+"pe.ca\0filatelia.museum\0imageandsound.museum\0\xc3\xb8ygarden.no\0"
"philately.museum\0"
-"org.hn\0"
-"fet.no\0"
-"axis.museum\0mansions.museum\0"
-"wiki.br\0"
-"org.ht\0"
-"org.hu\0piacenza.it\0scotland.museum\0cpa.pro\0"
-"ac.ug\0"
-"coop.mv\0x.se\0"
-"coop.mw\0ac.tz\0"
-"bmd.br\0"
-"org.im\0ralingen.no\0"
-"org.in\0"
-"cz.it\0lib.ia.us\0"
-"org.iq\0"
-"org.ir\0"
-"org.is\0"
-"nl.ca\0"
-"org.je\0"
-"childrensgarden.museum\0"
-"kvits\xc3\xb8y.no\0go.pw\0"
-"sokndal.no\0"
-"ra.it\0grimstad.no\0"
-"denmark.museum\0"
-"ac.vn\0"
-"ecn.br\0org.jo\0"
-"bialystok.pl\0nj.us\0"
-"z.bg\0bilbao.museum\0stargard.pl\0nic.tj\0"
-"eisenbahn.museum\0"
-"fe.it\0bryne.no\0vrn.ru\0"
-"cc.wa.us\0"
-"sex.hu\0skierva.no\0"
-"org.kg\0"
-"org.ki\0"
-"org.km\0"
-"org.kn\0khakassia.ru\0"
-"org.kp\0"
-"org.la\0"
-"org.lb\0"
-"org.lc\0"
-"francaise.museum\0"
-"panama.museum\0"
-"rotorcraft.aero\0gateway.museum\0olkusz.pl\0"
-"org.ky\0czeladz.pl\0ryazan.ru\0"
-"org.kz\0"
-"org.lk\0dyr\xc3\xb8y.no\0"
-"raisa.no\0"
-"dlugoleka.pl\0"
-"org.ma\0"
-"org.lr\0prochowice.pl\0"
-"org.ls\0"
-"org.me\0sandoy.no\0s\xc3\xb8r-varanger.no\0"
-"org.lv\0"
-"org.mg\0"
-"tel\0go.th\0"
-"org.ly\0"
-"steam.museum\0go.tj\0"
-"org.mk\0pasadena.museum\0jessheim.no\0lib.mn.us\0"
-"org.ml\0"
-"software.aero\0"
-"org.mn\0"
-"org.mo\0"
-"*.fukui.jp\0decorativearts.museum\0"
-"spy.museum\0org.na\0jorpeland.no\0"
-"vads\xc3\xb8.no\0"
-"org.mu\0building.museum\0gausdal.no\0"
-"org.mv\0nannestad.no\0"
-"org.mw\0org.ng\0go.ug\0"
-"vr.it\0org.mx\0"
-"org.my\0"
-"go.tz\0"
-"oppdal.no\0"
-"uk.net\0"
-"coop.km\0"
-"*.kyoto.jp\0"
-"sarpsborg.no\0org.nr\0"
-"chernigov.ua\0"
-"ha.cn\0no.com\0"
-"space.museum\0"
-"org.pa\0"
-"*.ar\0"
-"usgarden.museum\0"
-"*.bd\0org.pe\0"
-"*.au\0org.pf\0um.gov.pl\0"
-"bio.br\0"
-"org.ph\0"
-"org.pk\0"
-"fr\xc3\xa6na.no\0org.pl\0"
-"nord-aurdal.no\0org.pn\0"
-"*.bn\0handson.museum\0agrinet.tn\0"
-"kviteseid.no\0"
-"rel.ht\0virtuel.museum\0atm.pl\0org.pr\0"
-"org.ps\0cherkassy.ua\0"
-"org.pt\0wa.us\0"
-"*.bt\0arendal.no\0magnitka.ru\0"
-"depot.museum\0porsangu.no\0"
-"laakesvuemie.no\0"
-"sor-fron.no\0"
+"eti.br\0galsa.no\0"
+"gs.svalbard.no\0snasa.no\0from-ga.com\0"
+"gda.pl\0"
+"imperia.it\0"
+"presse.km\0"
+"philadelphiaarea.museum\0"
+"go.kr\0"
+"moskenes.no\0"
+"!pref.aomori.jp\0"
+"ringsaker.no\0"
+"v\xc3\xa6r\xc3\xb8y.no\0"
+"\xd7\x99\xd7\xa8\xd7\x95\xd7\xa9\xd7\x9c\xd7\x99\xd7\x9d.museum\0"
+"gotdns.com\0"
+"\xc3\xa5mli.no\0vefsn.no\0"
+"notaires.km\0topology.museum\0"
+"szex.hu\0leksvik.no\0"
+"*.yamagata.jp\0siedlce.pl\0"
+"newjersey.museum\0"
+"no.it\0"
+"moscow.museum\0travel\0is-a-teacher.com\0"
+"ks.ua\0"
+"from-ne.com\0"
+"gs.va.no\0"
+"y.se\0"
+"is-a-designer.com\0"
+"kaszuby.pl\0"
+"youth.museum\0"
+"presse.ml\0"
+"macerata.it\0"
+"alaska.museum\0bygland.no\0"
+"tas.au\0bale.museum\0fam.pk\0"
+"arts.museum\0"
+"kr.it\0stavern.no\0palana.ru\0ks.us\0"
+"vikna.no\0"
+"loyalist.museum\0if.ua\0"
+"parma.it\0"
+"council.aero\0"
+"schweiz.museum\0"
+"club.aero\0reggio-calabria.it\0"
+"a.bg\0"
+"store.bb\0likes-pie.com\0"
+"dr.na\0froya.no\0"
+"town.museum\0"
+"\xc3\xa5s.no\0"
+"donetsk.ua\0"
+"\xc3\xb8rsta.no\0dontexist.net\0"
+"sx.cn\0"
+"gdynia.pl\0"
+"steinkjer.no\0"
+"sc.ug\0"
+"sc.tz\0"
+"4.bg\0"
+"glogow.pl\0"
"heroy.more-og-romsdal.no\0"
-"*.ck\0"
-"!rakpetroleum.om\0"
-"kr\xc3\xb8""dsherad.no\0mail.pl\0"
-"mod.gi\0"
-"gs.nl.no\0"
-"mb.ca\0"
-"pavia.it\0"
-"civilisation.museum\0folldal.no\0"
-"suli.hu\0"
-"brumunddal.no\0"
-"*.cy\0"
-"pg.it\0troms\xc3\xb8.no\0"
-"sex.pl\0y.se\0"
-"org.ro\0"
-"*.do\0"
-"caserta.it\0org.sa\0"
-"za.com\0halloffame.museum\0org.sb\0lviv.ua\0"
-"mill.museum\0org.rs\0org.sc\0"
-"org.sd\0"
-"idv.hk\0!omanmobile.om\0org.ru\0org.se\0"
-"langev\xc3\xa5g.no\0r\xc3\xa5holt.no\0starostwo.gov.pl\0"
-"trani-andria-barletta.it\0org.sg\0"
-"*.eg\0hvaler.no\0"
-"*.ehime.jp\0"
-"gmina.pl\0"
-"bod\xc3\xb8.no\0org.sl\0"
-"edu\0org.sn\0"
-"org.so\0lib.wi.us\0"
-"kommune.no\0"
-"nome.pt\0"
-"*.er\0namdalseid.no\0k12.wa.us\0"
-"nm.cn\0org.st\0"
-"*.et\0d\xc3\xb8nna.no\0"
-"jewish.museum\0preservation.museum\0"
-"slupsk.pl\0org.sy\0"
-"art.br\0org.sz\0org.tj\0"
-"ntr.br\0*.fj\0ski.no\0"
-"*.fk\0rimini.it\0grajewo.pl\0"
-"loppa.no\0"
-"franziskaner.museum\0notteroy.no\0org.tn\0"
-"org.to\0"
-"nesoddtangen.no\0"
-"org.ua\0"
-"discovery.museum\0wloclawek.pl\0"
-"lakas.hu\0org.tt\0"
-"kurgan.ru\0"
-"baltimore.museum\0nkz.ru\0org.tw\0"
-"com.ac\0castle.museum\0"
-"*.fukuoka.jp\0sandefjord.no\0varggat.no\0"
-"com.af\0"
-"com.ag\0"
-"ato.br\0k12.nj.us\0"
-"com.ai\0"
-"city.hu\0oryol.ru\0"
-"com.al\0nl.no\0mielno.pl\0cc.ma.us\0"
-"org.vc\0"
-"com.an\0g12.br\0"
-"*.gt\0"
-"*.gu\0"
-"com.ba\0"
-"com.bb\0americanart.museum\0"
-"org.vi\0"
+"corvette.museum\0sc.us\0"
+"!british-library.uk\0"
+"!pref.saitama.jp\0"
+"muos\xc3\xa1t.no\0"
+"go.pw\0"
+"interactive.museum\0"
+"mi.th\0"
+"br\xc3\xb8nn\xc3\xb8ysund.no\0"
+"lajolla.museum\0porsangu.no\0plo.ps\0bryansk.ru\0"
+"pe.it\0amli.no\0"
+"yamal.ru\0!parliament.uk\0"
+"webhop.biz\0"
+"cc.va.us\0"
+"n\xc3\xa1vuotna.no\0"
+"mi.us\0"
+"dyn-o-saur.com\0"
+"cc.sd.us\0"
+"pe.kr\0nsk.ru\0b.se\0"
+"aurland.no\0"
+"gyeongbuk.kr\0"
+"w.bg\0go.th\0"
+"!promocion.ar\0laakesvuemie.no\0"
+"her\xc3\xb8y.m\xc3\xb8re-og-romsdal.no\0go.tj\0lib.ky.us\0"
+"k12.fl.us\0"
+"foggia.it\0"
+"sa.au\0juedisches.museum\0schoenbrunn.museum\0"
+"trader.aero\0usgarden.museum\0selfip.biz\0"
+"simbirsk.ru\0"
+"lund.no\0"
+"barcelona.museum\0"
+"go.ug\0"
+"granvin.no\0go.tz\0"
+"portal.museum\0evenassi.no\0"
+"judygarland.museum\0lancashire.museum\0lib.id.us\0"
+"design.museum\0"
+"walbrzych.pl\0"
+"*.tokushima.jp\0"
+"ibestad.no\0"
+"aquarium.museum\0"
+"sa.cr\0"
+"erotika.hu\0"
+"h\xc3\xa5.no\0"
+"!pref.shimane.jp\0"
+"costume.museum\0"
+"hagebostad.no\0yuzhno-sakhalinsk.ru\0"
+"mj\xc3\xb8ndalen.no\0"
+"lind\xc3\xa5s.no\0"
+"bergamo.it\0"
+"sande.more-og-romsdal.no\0"
+"priv.pl\0"
+"exhibition.museum\0"
+"from-pa.com\0"
+"birthplace.museum\0"
+"eigersund.no\0"
+"vaapste.no\0!nic.tr\0dyndns-home.com\0"
+"historichouses.museum\0"
+"forsand.no\0"
+"at.it\0"
+"jolster.no\0"
+"consulting.aero\0off.ai\0"
+"\xe0\xa8\xad\xe0\xa8\xbe\xe0\xa8\xb0\xe0\xa8\xa4\0"
+"!pref.nagasaki.jp\0kr.ua\0!nhs.uk\0!nic.uk\0"
+"design.aero\0"
+"h\xc3\xb8yanger.no\0x.se\0"
+"venezia.it\0"
+"qld.au\0"
+"fh.se\0"
+"priv.no\0"
+"lebesby.no\0"
+"rendalen.no\0"
+"lecce.it\0"
+"bod\xc3\xb8.no\0"
+"perso.ht\0farm.museum\0\xd9\x81\xd9\x84\xd8\xb3\xd8\xb7\xd9\x8a\xd9\x86\0"
+"gorizia.it\0"
+"*.sapporo.jp\0"
+"computer.museum\0lenvik.no\0"
+"crafts.museum\0"
+"columbus.museum\0chita.ru\0"
+"ardal.no\0"
+"lewismiller.museum\0station.museum\0"
+"vologda.ru\0"
+"lib.in.us\0"
+"k12.dc.us\0lib.vt.us\0"
+"id.ir\0"
+"film.museum\0"
+"genoa.it\0museet.museum\0forde.no\0"
+"vaksdal.no\0"
+"gs.jan-mayen.no\0"
+"!pref.shiga.jp\0"
+"magnitka.ru\0"
+"us.com\0"
+"gob.bo\0priv.me\0"
+"3.bg\0"
+"sciencehistory.museum\0"
+"discovery.museum\0\xd8\xa7\xd9\x84\xd8\xac\xd8\xb2\xd8\xa7\xd8\xa6\xd8\xb1\0"
+"tranby.no\0"
+"andria-trani-barletta.it\0fg.it\0"
+"sa.it\0"
+"ck.ua\0from-ny.net\0"
+"svizzera.museum\0larvik.no\0law.pro\0"
+"sweden.museum\0"
+"gob.cl\0"
+"consulado.st\0cc.ks.us\0"
+"nkz.ru\0"
+"orskog.no\0"
+"bc.ca\0"
+"baidar.no\0"
+"conference.aero\0"
+"warmia.pl\0"
+"bz.it\0"
+"pd.it\0ot.it\0"
+"selfip.info\0"
+"gob.do\0ballangen.no\0"
+"nm.cn\0"
+"hoyanger.no\0"
+"gob.ec\0nuoro.it\0id.lv\0"
+"eun.eg\0"
+"id.ly\0"
+"salat.no\0"
+"royken.no\0"
+"!pref.hyogo.jp\0tysvar.no\0"
+"!congresodelalengua3.ar\0"
+"gob.es\0"
+"iz.hr\0"
+"avoues.fr\0"
+"xj.cn\0masoy.no\0"
+"sanfrancisco.museum\0cc.sc.us\0"
+"office-on-the.net\0"
+"a.se\0"
+"v.bg\0!pref.ehime.jp\0"
+"contemporary.museum\0"
+"balsan.it\0"
+"vt.it\0"
+"fribourg.museum\0"
+"*.kochi.jp\0"
+"odo.br\0historisches.museum\0"
+"caa.aero\0"
+"!pref.ishikawa.jp\0"
+"fredrikstad.no\0os.hordaland.no\0"
+"fundacio.museum\0"
+"bd.se\0"
+"so.gov.pl\0"
+"alta.no\0"
+"selfip.com\0"
+"freemasonry.museum\0"
+"gob.hn\0"
+"amusement.aero\0"
+"\xe7\xb6\xb2\xe8\xb7\xaf.tw\0"
+"s\xc3\xb8rfold.no\0"
+"suwalki.pl\0cc.mi.us\0\xe4\xb8\xad\xe5\x9b\xbd\0"
+"g\xc3\xa1ivuotna.no\0"
+"bykle.no\0"
+"culture.museum\0"
+"\xc3\xa5krehamn.no\0"
+"is-into-games.com\0"
+"\xe7\xb6\xb2\xe7\xbb\x9c.hk\0troandin.no\0"
+"k12.la.us\0"
+"hokksund.no\0\xe4\xb8\xad\xe5\x9c\x8b\0"
+"pz.it\0is-an-actress.com\0"
+"presse.ci\0gjerstad.no\0"
+"qc.com\0chungbuk.kr\0"
+"meraker.no\0"
+"group.aero\0telekommunikation.museum\0skiptvet.no\0"
+"portland.museum\0torsken.no\0"
+"horology.museum\0"
+"!pref.nara.jp\0"
+"jamal.ru\0"
+"fnd.br\0"
+"barlettatraniandria.it\0frog.museum\0lib.ca.us\0"
+"ketrzyn.pl\0"
+"*.aichi.jp\0touch.museum\0"
+"clinton.museum\0"
+"\xe8\x87\xba\xe7\x81\xa3\0"
+"vestnes.no\0"
+"!pref.saga.jp\0rodoy.no\0"
+"hemnes.no\0w.se\0"
+"norddal.no\0ftpaccess.cc\0"
"kunstsammlung.museum\0"
+"hasvik.no\0"
+"correios-e-telecomunica\xc3\xa7\xc3\xb5""es.museum\0"
+"lib.al.us\0"
+"la.us\0"
+"!city.yokohama.jp\0"
+"b\xc3\xa1jddar.no\0"
+"siellak.no\0"
+"jefferson.museum\0"
+"h\xc3\xa1""bmer.no\0"
+"presse.fr\0from-va.com\0"
+"k12.ct.us\0"
+"wildlife.museum\0"
+"namsos.no\0id.us\0"
+"koebenhavn.museum\0"
+"from-oh.com\0"
+"n\xc3\xb8tter\xc3\xb8y.no\0"
+"boston.museum\0"
+"gildeskal.no\0"
+"gob.mx\0"
+"notaires.fr\0berlin.museum\0"
+"ethnology.museum\0"
+"eid.no\0"
+"lillesand.no\0"
+"2.bg\0\xe5\x8f\xb0\xe7\x81\xa3\0"
+"radoy.no\0"
+"skj\xc3\xa5k.no\0"
+"katowice.pl\0"
+"hs.kr\0odessa.ua\0"
+"slg.br\0"
+"gob.pa\0"
+"nl.ca\0vang.no\0"
+"orsta.no\0gob.pe\0"
+"university.museum\0"
+"k12.wv.us\0"
+"ci.it\0zagan.pl\0"
+"pc.it\0gob.pk\0is-a-bruinsfan.org\0"
+"airguard.museum\0"
+"langev\xc3\xa5g.no\0"
+"bjark\xc3\xb8y.no\0trondheim.no\0"
+"giessen.museum\0"
+"fetsund.no\0is-into-cars.com\0"
+"turen.tn\0"
+"home.dyndns.org\0"
+"forli-cesena.it\0from-md.com\0"
+"nationalfirearms.museum\0"
+"k12.gu.us\0"
+"aukra.no\0"
+"osoyro.no\0"
+"irc.pl\0"
+"austevoll.no\0"
+"orkdal.no\0"
+"aeroclub.aero\0sr.gov.pl\0"
+"marketplace.aero\0"
+"endoftheinternet.org\0"
+"\xe5\x85\xac\xe5\x8f\xb8.cn\0geelvinck.museum\0"
+"tranibarlettaandria.it\0"
+"u.bg\0is-a-linux-user.org\0"
+"skjervoy.no\0vestre-slidre.no\0"
+"bologna.it\0"
+"vs.it\0vt.us\0"
+"mil\0"
+"oksnes.no\0"
+"\xe5\x85\xac\xe5\x8f\xb8.hk\0perso.sn\0"
+"aurskog-h\xc3\xb8land.no\0"
+"blogdns.com\0"
+"gjovik.no\0"
+"chicago.museum\0"
+"saskatchewan.museum\0"
+"eu.com\0malvik.no\0from-ky.com\0"
+"assedic.fr\0"
+"pb.ao\0"
+"fuettertdasnetz.de\0"
+"*.fukushima.jp\0"
+"or.at\0perso.tn\0"
+"sv.it\0"
+"dp.ua\0"
+"monza-e-della-brianza.it\0"
+"or.bi\0"
+"sauda.no\0malopolska.pl\0"
+"heimatunduhren.museum\0"
+"can.br\0\xe0\xae\x87\xe0\xae\xa8\xe0\xaf\x8d\xe0\xae\xa4\xe0\xae\xbf\xe0\xae\xaf\xe0\xae\xbe\0"
+"\xc3\xa5rdal.no\0"
+"is-lost.org\0"
+"family.museum\0"
+"riik.ee\0"
+"jor.br\0or.ci\0virtuel.museum\0"
+"belgorod.ru\0"
+"!mod.uk\0"
+"svelvik.no\0"
+"norfolk.museum\0"
+"or.cr\0tran\xc3\xb8y.no\0"
+"chuvashia.ru\0"
+"insurance.aero\0surrey.museum\0"
+"bjerkreim.no\0"
+"ushuaia.museum\0askvoll.no\0"
+"*.toyama.jp\0"
+"bari.it\0"
+"pc.pl\0mytis.ru\0"
+"ar.it\0as.us\0"
+"iris.arpa\0divttasvuotna.no\0arkhangelsk.ru\0nm.us\0"
+"rep.kp\0"
+"\xe7\xbd\x91\xe7\xb5\xa1.hk\0"
+"leangaviika.no\0lindas.no\0"
+"kr\xc3\xb8""dsherad.no\0spydeberg.no\0"
+"urbino-pesaro.it\0paris.museum\0lib.me.us\0"
+"ug.gov.pl\0"
+"*.sendai.jp\0"
+"iglesiascarbonia.it\0"
+"from-mt.com\0from-nd.com\0"
+"inderoy.no\0"
+"from-ks.com\0groks-this.info\0"
+"from.hr\0"
+"hobby-site.org\0"
+"decorativearts.museum\0"
+"davvesiida.no\0"
+"canada.museum\0"
+"asn.lv\0b\xc3\xa5""d\xc3\xa5""ddj\xc3\xa5.no\0is-a-personaltrainer.com\0"
+"h\xc3\xa1pmir.no\0endofinternet.net\0"
+"erotica.hu\0"
+"dontexist.org\0"
+"chambagri.fr\0nome.pt\0"
+"pordenone.it\0brussel.museum\0songdalen.no\0dielddanuorri.no\0ostroda.pl\0"
+"sells-for-less.com\0"
+"1.bg\0"
+"bolt.hu\0"
+"k12.nh.us\0"
+"dlugoleka.pl\0"
+"fe.it\0holt\xc3\xa5len.no\0\xe0\xa4\xad\xe0\xa4\xbe\xe0\xa4\xb0\xe0\xa4\xa4\0"
+"ro.it\0andasuolo.no\0"
+"vestvagoy.no\0"
+"carraramassa.it\0"
+"qh.cn\0"
+"or.id\0nieruchomosci.pl\0"
+"norilsk.ru\0cc.la.us\0readmyblog.org\0"
+"press.aero\0nl.no\0"
+"skedsmo.no\0olecko.pl\0"
+"!omanmobile.om\0"
+"ch.it\0stj\xc3\xb8rdalshalsen.no\0"
+"asia\0or.it\0"
+"aip.ee\0bodo.no\0"
+"is-a-landscaper.com\0"
+"is-a-libertarian.com\0"
+"sande.m\xc3\xb8re-og-romsdal.no\0"
+"cc.id.us\0"
+"krasnoyarsk.ru\0"
+"int.az\0"
+"or.jp\0"
+"piacenza.it\0"
+"*.iwate.jp\0"
+"int.bo\0"
+"lib.mo.us\0forgot.her.name\0"
+"sula.no\0k12.tx.us\0"
+"ambulance.museum\0"
+"lu.it\0me.it\0"
+"!pref.yamanashi.jp\0"
+"workinggroup.aero\0"
+"int.ci\0ringebu.no\0sandefjord.no\0"
+"zgrad.ru\0"
+"gov.ac\0"
+"is-an-artist.com\0"
+"gov.ae\0or.kr\0"
+"gov.af\0alto-adige.it\0asmatart.museum\0rochester.museum\0budejju.no\0"
+"srv.br\0int.co\0"
+"astronomy.museum\0"
+"t.bg\0"
+"gov.al\0reggio-emilia.it\0"
+"medical.museum\0k12.ri.us\0"
+"!retina.ar\0gov.ba\0askoy.no\0"
+"gov.bb\0vr.it\0"
+"gov.as\0"
+"gov.bf\0bilbao.museum\0kms.ru\0"
+"gov.bh\0gjerdrum.no\0sondre-land.no\0"
+"\xd9\x82\xd8\xb7\xd8\xb1\0"
+"gov.az\0city.hu\0"
+"school.museum\0"
+"gov.bm\0net\0rissa.no\0"
+"aeroport.fr\0mad.museum\0"
+"gov.bo\0hareid.no\0ostrowiec.pl\0"
+"*.kyoto.jp\0"
+"gov.br\0"
+"gov.bs\0hamburg.museum\0"
+"gov.bt\0gov.cd\0or.na\0"
+"from-sd.com\0"
+"te.it\0historicalsociety.museum\0"
+"or.mu\0artgallery.museum\0"
+"gov.by\0stalbans.museum\0jar.ru\0"
+"gov.bz\0"
+"campidano-medio.it\0"
+"gov.cl\0missile.museum\0"
+"gov.cm\0shacknet.nu\0"
+"gov.cn\0"
+"gov.co\0"
+"v\xc3\xa5gan.no\0"
+"posts-and-telecommunications.museum\0"
+"cng.br\0frosta.no\0"
+"andriabarlettatrani.it\0kvanangen.no\0"
+"gov.cu\0"
+"sigdal.no\0"
+"gov.cx\0from-il.com\0"
+"omaha.museum\0"
+"gov.dm\0is-a-hard-worker.com\0"
+"\xd8\xa8\xda\xbe\xd8\xa7\xd8\xb1\xd8\xaa\0"
+"gov.do\0*.gifu.jp\0vladikavkaz.ru\0"
+"sor-varanger.no\0"
+"gov.ec\0cc.vt.us\0"
+"gov.ee\0*.wakayama.jp\0kvafjord.no\0"
+"gov.eg\0"
+"health.vn\0"
+"gov.dz\0zarow.pl\0"
+"starostwo.gov.pl\0"
+"from-me.org\0"
+"cambridge.museum\0"
+"jeonbuk.kr\0wroc.pl\0"
+"md.ci\0ba.it\0aq.it\0labor.museum\0ar.us\0from-ri.com\0"
+"wa.au\0"
+"in-addr.arpa\0"
+"yn.cn\0"
+"vindafjord.no\0"
+"andebu.no\0"
+"or.pw\0u.se\0"
+"ascoli-piceno.it\0"
+"act.gov.au\0"
+"pharmaciens.km\0balsfjord.no\0"
+"barreau.bj\0soc.lk\0from-mo.com\0"
+"!city.okayama.jp\0lib.md.us\0"
+"from-ia.com\0"
+"*.osaka.jp\0"
+"gouv.fr\0gov.ge\0philadelphia.museum\0"
+"saintlouis.museum\0"
+"gov.gg\0wy.us\0"
+"com.ac\0gov.gh\0ulvik.no\0"
+"gov.gi\0"
+"luzern.museum\0"
+"com.af\0int.is\0"
+"com.ag\0gs.oslo.no\0"
+"com.ai\0gov.gn\0"
+"historyofscience.museum\0"
+"com.al\0"
+"gov.gr\0"
+"com.an\0"
+"com.ba\0*.fukui.jp\0"
+"com.bb\0"
+"minnesota.museum\0lib.wi.us\0"
+"is-gone.com\0"
+"realestate.pl\0"
+"gov.hk\0"
"com.aw\0"
-"flight.aero\0com.bh\0lib.mo.us\0org.vn\0"
-"com.bi\0adygeya.ru\0"
+"com.bh\0her\xc3\xb8y.nordland.no\0"
+"com.bi\0aoste.it\0"
"com.az\0"
-"art.dz\0"
-"com.bm\0"
-"dr\xc3\xb8""bak.no\0"
-"com.bo\0isla.pr\0"
-"com.br\0"
-"com.bs\0ustka.pl\0kuban.ru\0"
-"press.aero\0"
-"vs.it\0"
-"meloy.no\0"
-"*.il\0ulm.museum\0"
-"com.by\0com.ci\0genoa.it\0"
-"com.bz\0sn.cn\0"
-"lib.or.us\0"
-"santafe.museum\0org.ws\0"
+"hyllestad.no\0varggat.no\0cc.as.us\0"
+"com.bm\0amur.ru\0cc.nm.us\0"
+"snillfjord.no\0pub.sa\0"
+"com.bo\0"
+"gov.ie\0"
+"com.br\0gouv.ht\0"
+"com.bs\0"
+"com.bt\0crotone.it\0int.la\0sandnessj\xc3\xb8""en.no\0"
+"0.bg\0*.sch.uk\0"
+"or.th\0"
+"gov.im\0verbania.it\0"
+"com.by\0com.ci\0gov.in\0k12.nm.us\0"
+"com.bz\0michigan.museum\0"
+"*.nagasaki.jp\0elverum.no\0"
+"gov.iq\0rn.it\0finland.museum\0manchester.museum\0"
};
QT_END_NAMESPACE
diff --git a/src/corelib/io/qurltlds_p.h.INFO b/src/corelib/io/qurltlds_p.h.INFO
index 5781c2c..44f6608 100644
--- a/src/corelib/io/qurltlds_p.h.INFO
+++ b/src/corelib/io/qurltlds_p.h.INFO
@@ -9,8 +9,8 @@ Those arrays in qurltlds_p.h are derived from the Public
Suffix List ([2]), which was originally provided by
Jo Hermans <jo.hermans@gmail.com>.
-The file qurltlds_p.h was last generated Friday,
-November 19th 15:24 2010.
+The file qurltlds_p.h was last generated Wednesday,
+November 9th 12:20 2011 CET.
----
[1] list: http://mxr.mozilla.org/mozilla-central/source/netwerk/dns/effective_tld_names.dat?raw=1
diff --git a/src/corelib/kernel/qpointer.cpp b/src/corelib/kernel/qpointer.cpp
index c7fcf4f..87e903f 100644
--- a/src/corelib/kernel/qpointer.cpp
+++ b/src/corelib/kernel/qpointer.cpp
@@ -97,7 +97,7 @@
Note that class \c T must inherit QObject, or a compilation or
link error will result.
- \sa QSharedPointer, QObject, QObjectCleanupHandler
+ \sa QSharedPointer, QWeakPointer, QObject, QObjectCleanupHandler
*/
/*!
diff --git a/src/corelib/kernel/qtranslator.cpp b/src/corelib/kernel/qtranslator.cpp
index dfc90e8..692c78c 100644
--- a/src/corelib/kernel/qtranslator.cpp
+++ b/src/corelib/kernel/qtranslator.cpp
@@ -408,13 +408,26 @@ bool QTranslator::load(const QString & filename, const QString & directory,
Q_D(QTranslator);
d->clear();
+ QString fname = filename;
QString prefix;
if (QFileInfo(filename).isRelative()) {
#ifdef Q_OS_SYMBIAN
- if (directory.isEmpty())
+ //TFindFile doesn't like path in the filename
+ QString dir(directory);
+ int slash = filename.lastIndexOf(QLatin1Char('/'));
+ slash = qMax(slash, filename.lastIndexOf(QLatin1Char('\\')));
+ if (slash >=0) {
+ //so move the path component into the directory prefix
+ if (dir.isEmpty())
+ dir = filename.left(slash + 1);
+ else
+ dir = dir + QLatin1Char('/') + filename.left(slash + 1);
+ fname = fname.mid(slash + 1);
+ }
+ if (dir.isEmpty())
prefix = QCoreApplication::applicationDirPath();
else
- prefix = QFileInfo(directory).absoluteFilePath(); //TFindFile doesn't like dirty paths
+ prefix = QFileInfo(dir).absoluteFilePath(); //TFindFile doesn't like dirty paths
if (prefix.length() > 2 && prefix.at(1) == QLatin1Char(':') && prefix.at(0).isLetter())
prefix[0] = QLatin1Char('Y');
#else
@@ -428,7 +441,6 @@ bool QTranslator::load(const QString & filename, const QString & directory,
QString nativePrefix = QDir::toNativeSeparators(prefix);
#endif
- QString fname = filename;
QString realname;
QString delims;
delims = search_delimiters.isNull() ? QString::fromLatin1("_.") : search_delimiters;
diff --git a/src/corelib/tools/qline.cpp b/src/corelib/tools/qline.cpp
index 9c7c243..7e3dd34 100644
--- a/src/corelib/tools/qline.cpp
+++ b/src/corelib/tools/qline.cpp
@@ -488,7 +488,8 @@ bool QLineF::isNull() const
/*!
\fn qreal QLineF::dx() const
- Returns the horizontal component of the line's vector.
+ Returns the horizontal component of the line's vector.
+ Return value is positive if x2() >= x1() and negative if x2() < x1().
\sa dy(), pointAt()
*/
@@ -497,6 +498,7 @@ bool QLineF::isNull() const
\fn qreal QLineF::dy() const
Returns the vertical component of the line's vector.
+ Return value is positive if y2() >= y1() and negative if y2() < y1().
\sa dx(), pointAt()
*/
@@ -506,7 +508,8 @@ bool QLineF::isNull() const
Sets the length of the line to the given \a length. QLineF will
move the end point - p2() - of the line to give the line its new length.
-
+ If the given \a length is negative the angle() is also changed.
+
If the line is a null line, the length will remain zero regardless
of the length specified.
@@ -762,7 +765,7 @@ QLineF::IntersectType QLineF::intersect(const QLineF &l, QPointF *intersectionPo
\since 4.4
- Returns the angle (in degrees) from this line to the given \a
+ Returns the angle (in positive degrees) from this line to the given \a
line, taking the direction of the lines into account. If the lines
do not intersect within their range, it is the intersection point of
the extended lines that serves as origin (see
diff --git a/src/corelib/tools/qlist.cpp b/src/corelib/tools/qlist.cpp
index 18bfe24..2e95ef8 100644
--- a/src/corelib/tools/qlist.cpp
+++ b/src/corelib/tools/qlist.cpp
@@ -469,8 +469,8 @@ void **QListData::erase(void **xi)
\snippet doc/src/snippets/code/src_corelib_tools_qlistdata.cpp 0
Qt includes a QStringList class that inherits QList\<QString\>
- and adds a few convenience functions, such as QStringList::join()
- and QStringList::find(). (QString::split() creates QStringLists
+ and adds a convenience function QStringList::join().
+ (QString::split() creates QStringLists
from strings.)
QList stores a list of items. The default constructor creates an
diff --git a/src/corelib/tools/qlocale_tools.cpp b/src/corelib/tools/qlocale_tools.cpp
index df31bf9..750379c 100644
--- a/src/corelib/tools/qlocale_tools.cpp
+++ b/src/corelib/tools/qlocale_tools.cpp
@@ -2253,6 +2253,13 @@ static int quorem(Bigint *b, Bigint *S)
* calculation.
*/
+#if defined(Q_OS_WIN) && defined (Q_CC_GNU) && !defined(_clear87) // See QTBUG-7576
+extern "C" {
+__attribute__ ((dllimport)) unsigned int __cdecl __MINGW_NOTHROW _control87 (unsigned int unNew, unsigned int unMask);
+__attribute__ ((dllimport)) unsigned int __cdecl __MINGW_NOTHROW _clearfp (void); /* Clear the FPU status word */
+}
+# define _clear87 _clearfp
+#endif
/* This actually sometimes returns a pointer to a string literal
cast to a char*. Do NOT try to modify the return value. */
diff --git a/src/corelib/tools/qregexp.cpp b/src/corelib/tools/qregexp.cpp
index ba1609f..e3a771a 100644
--- a/src/corelib/tools/qregexp.cpp
+++ b/src/corelib/tools/qregexp.cpp
@@ -66,6 +66,7 @@ int qFindString(const QChar *haystack, int haystackLen, int from,
#define RXERR_DISABLED QT_TRANSLATE_NOOP("QRegExp", "disabled feature used")
#define RXERR_CHARCLASS QT_TRANSLATE_NOOP("QRegExp", "bad char class syntax")
#define RXERR_LOOKAHEAD QT_TRANSLATE_NOOP("QRegExp", "bad lookahead syntax")
+#define RXERR_LOOKBEHIND QT_TRANSLATE_NOOP("QRegExp", "lookbehinds not supported, see QTBUG-2371")
#define RXERR_REPETITION QT_TRANSLATE_NOOP("QRegExp", "bad repetition syntax")
#define RXERR_OCTAL QT_TRANSLATE_NOOP("QRegExp", "invalid octal value")
#define RXERR_LEFTDELIM QT_TRANSLATE_NOOP("QRegExp", "missing left delim")
@@ -3231,6 +3232,9 @@ int QRegExpEngine::getToken()
#endif
case ':':
return Tok_MagicLeftParen;
+ case '<':
+ error(RXERR_LOOKBEHIND);
+ return Tok_MagicLeftParen;
default:
error(RXERR_LOOKAHEAD);
return Tok_MagicLeftParen;
diff --git a/src/dbus/qdbuspendingcall.cpp b/src/dbus/qdbuspendingcall.cpp
index ea84742..2278db4 100644
--- a/src/dbus/qdbuspendingcall.cpp
+++ b/src/dbus/qdbuspendingcall.cpp
@@ -180,9 +180,12 @@ bool QDBusPendingCallPrivate::setReplyCallback(QObject *target, const char *memb
if (metaTypes.at(count) == QDBusMetaTypeId::message)
--count;
- // QList<int> is actually a vector
- // kids, don't try this at home
- setMetaTypes(count, count ? &metaTypes.at(1) : 0);
+ if (count == 0) {
+ setMetaTypes(count, 0);
+ } else {
+ QVector<int> types = QVector<int>::fromList(metaTypes);
+ setMetaTypes(count, types.constData() + 1);
+ }
return true;
}
diff --git a/src/declarative/util/qdeclarativepixmapcache.cpp b/src/declarative/util/qdeclarativepixmapcache.cpp
index 3557425..b23ac73 100644
--- a/src/declarative/util/qdeclarativepixmapcache.cpp
+++ b/src/declarative/util/qdeclarativepixmapcache.cpp
@@ -90,8 +90,9 @@ public:
~QDeclarativePixmapReply();
QDeclarativePixmapData *data;
- QDeclarativePixmapReader *reader;
+ QDeclarativeEngine *engineForReader; // always access reader inside readerMutex.
QSize requestSize;
+ QUrl url;
bool loading;
int redirectCount;
@@ -147,6 +148,7 @@ public:
void cancel(QDeclarativePixmapReply *rep);
static QDeclarativePixmapReader *instance(QDeclarativeEngine *engine);
+ static QDeclarativePixmapReader *existingInstance(QDeclarativeEngine *engine);
protected:
void run();
@@ -176,6 +178,7 @@ private:
static int downloadProgress;
static int threadNetworkRequestDone;
static QHash<QDeclarativeEngine *,QDeclarativePixmapReader*> readers;
+public:
static QMutex readerMutex;
};
@@ -326,6 +329,22 @@ QDeclarativePixmapReader::~QDeclarativePixmapReader()
readers.remove(engine);
readerMutex.unlock();
+ mutex.lock();
+ // manually cancel all outstanding jobs.
+ foreach (QDeclarativePixmapReply *reply, jobs) {
+ delete reply;
+ }
+ jobs.clear();
+ QList<QDeclarativePixmapReply*> activeJobs = replies.values();
+ foreach (QDeclarativePixmapReply *reply, activeJobs) {
+ if (reply->loading) {
+ cancelled.append(reply);
+ reply->data = 0;
+ }
+ }
+ if (threadObject) threadObject->processJobs();
+ mutex.unlock();
+
eventLoopQuitHack->deleteLater();
wait();
}
@@ -433,9 +452,8 @@ void QDeclarativePixmapReader::processJobs()
if (!jobs.isEmpty() && replies.count() < IMAGEREQUEST_MAX_REQUEST_COUNT) {
QDeclarativePixmapReply *runningJob = jobs.takeLast();
runningJob->loading = true;
-
- QUrl url = runningJob->data->url;
- QSize requestSize = runningJob->data->requestSize;
+ QUrl url = runningJob->url;
+ QSize requestSize = runningJob->requestSize;
locker.unlock();
processJob(runningJob, url, requestSize);
locker.relock();
@@ -459,7 +477,6 @@ void QDeclarativePixmapReader::processJob(QDeclarativePixmapReply *runningJob, c
errorCode = QDeclarativePixmapReply::Loading;
errorStr = QDeclarativePixmap::tr("Failed to get image from provider: %1").arg(url.toString());
}
-
mutex.lock();
if (!cancelled.contains(runningJob)) runningJob->postReply(errorCode, errorStr, readSize, image);
mutex.unlock();
@@ -487,10 +504,8 @@ void QDeclarativePixmapReader::processJob(QDeclarativePixmapReply *runningJob, c
QNetworkRequest req(url);
req.setAttribute(QNetworkRequest::HttpPipeliningAllowedAttribute, true);
QNetworkReply *reply = networkAccessManager()->get(req);
-
QMetaObject::connect(reply, replyDownloadProgress, runningJob, downloadProgress);
QMetaObject::connect(reply, replyFinished, threadObject, threadNetworkRequestDone);
-
replies.insert(reply, runningJob);
}
}
@@ -498,22 +513,27 @@ void QDeclarativePixmapReader::processJob(QDeclarativePixmapReply *runningJob, c
QDeclarativePixmapReader *QDeclarativePixmapReader::instance(QDeclarativeEngine *engine)
{
- readerMutex.lock();
+ // XXX NOTE: must be called within readerMutex locking.
QDeclarativePixmapReader *reader = readers.value(engine);
if (!reader) {
reader = new QDeclarativePixmapReader(engine);
readers.insert(engine, reader);
}
- readerMutex.unlock();
return reader;
}
+QDeclarativePixmapReader *QDeclarativePixmapReader::existingInstance(QDeclarativeEngine *engine)
+{
+ // XXX NOTE: must be called within readerMutex locking.
+ return readers.value(engine, 0);
+}
+
QDeclarativePixmapReply *QDeclarativePixmapReader::getImage(QDeclarativePixmapData *data)
{
mutex.lock();
QDeclarativePixmapReply *reply = new QDeclarativePixmapReply(data);
- reply->reader = this;
+ reply->engineForReader = engine;
jobs.append(reply);
// XXX
if (threadObject) threadObject->processJobs();
@@ -692,7 +712,7 @@ void QDeclarativePixmapStore::flushCache()
}
QDeclarativePixmapReply::QDeclarativePixmapReply(QDeclarativePixmapData *d)
-: data(d), reader(0), requestSize(d->requestSize), loading(false), redirectCount(0)
+: data(d), engineForReader(0), requestSize(d->requestSize), url(d->url), loading(false), redirectCount(0)
{
if (finishedIndex == -1) {
finishedIndex = QDeclarativePixmapReply::staticMetaObject.indexOfSignal("finished()");
@@ -750,8 +770,14 @@ void QDeclarativePixmapData::release()
if (refCount == 0) {
if (reply) {
- reply->reader->cancel(reply);
+ QDeclarativePixmapReply *cancelReply = reply;
+ reply->data = 0;
reply = 0;
+ QDeclarativePixmapReader::readerMutex.lock();
+ QDeclarativePixmapReader *reader = QDeclarativePixmapReader::existingInstance(cancelReply->engineForReader);
+ if (reader)
+ reader->cancel(cancelReply);
+ QDeclarativePixmapReader::readerMutex.unlock();
}
if (pixmapStatus == QDeclarativePixmap::Ready) {
@@ -1013,13 +1039,12 @@ void QDeclarativePixmap::load(QDeclarativeEngine *engine, const QUrl &url, const
if (!engine)
return;
- QDeclarativePixmapReader *reader = QDeclarativePixmapReader::instance(engine);
-
d = new QDeclarativePixmapData(url, requestSize);
if (options & QDeclarativePixmap::Cache)
d->addToCache();
-
- d->reply = reader->getImage(d);
+ QDeclarativePixmapReader::readerMutex.lock();
+ d->reply = QDeclarativePixmapReader::instance(engine)->getImage(d);
+ QDeclarativePixmapReader::readerMutex.unlock();
} else {
d = *iter;
d->addref();
diff --git a/src/gui/dialogs/qfiledialog.cpp b/src/gui/dialogs/qfiledialog.cpp
index 817cd38..970d111 100644
--- a/src/gui/dialogs/qfiledialog.cpp
+++ b/src/gui/dialogs/qfiledialog.cpp
@@ -869,6 +869,7 @@ Q_AUTOTEST_EXPORT QString qt_tildeExpansion(const QString &path, bool *expanded
if (!path.startsWith(QLatin1Char('~')))
return path;
QString ret = path;
+#if !defined(Q_OS_INTEGRITY)
QStringList tokens = ret.split(QDir::separator());
if (tokens.first() == QLatin1String("~")) {
ret.replace(0, 1, QDir::homePath());
@@ -899,6 +900,7 @@ Q_AUTOTEST_EXPORT QString qt_tildeExpansion(const QString &path, bool *expanded
}
if (expanded != 0)
*expanded = true;
+#endif
return ret;
}
#endif
diff --git a/src/gui/dialogs/qmessagebox.cpp b/src/gui/dialogs/qmessagebox.cpp
index 149e267..ba00cd8 100644
--- a/src/gui/dialogs/qmessagebox.cpp
+++ b/src/gui/dialogs/qmessagebox.cpp
@@ -153,7 +153,7 @@ public:
expandedTo(QApplication::globalStrut());
opt.text = label(HideLabel);
sz = fm.size(Qt::TextShowMnemonic, opt.text);
- ret.expandedTo(style()->sizeFromContents(QStyle::CT_PushButton, &opt, sz, this).
+ ret = ret.expandedTo(style()->sizeFromContents(QStyle::CT_PushButton, &opt, sz, this).
expandedTo(QApplication::globalStrut()));
return ret;
}
diff --git a/src/gui/embedded/qscreenintegrityfb_qws.cpp b/src/gui/embedded/qscreenintegrityfb_qws.cpp
index 6f30812..5b1e0d5 100644
--- a/src/gui/embedded/qscreenintegrityfb_qws.cpp
+++ b/src/gui/embedded/qscreenintegrityfb_qws.cpp
@@ -64,7 +64,8 @@ public:
~QIntfbScreenPrivate();
FBHandle handle;
- struct FBInfoStruct fbinfo;
+ FBInfo fbinfo;
+ FBDriver *fbdrv;
QWSMouseHandler *mouse;
#ifndef QT_NO_QWS_KEYBOARD
@@ -172,15 +173,14 @@ static QIntfbScreen *connected = 0;
bool QIntfbScreen::connect(const QString &displaySpec)
{
- FBDriver *fbdev;
-
- CheckSuccess(gh_FB_get_driver(0, &fbdev));
- CheckSuccess(gh_FB_init_device(fbdev, 0, &d_ptr->handle));
+ CheckSuccess(gh_FB_get_driver(0, &d_ptr->fbdrv));
+ CheckSuccess(gh_FB_check_info(d_ptr->fbdrv, &d_ptr->fbinfo));
+ CheckSuccess(gh_FB_open(d_ptr->fbdrv, &d_ptr->fbinfo, &d_ptr->handle));
CheckSuccess(gh_FB_get_info(d_ptr->handle, &d_ptr->fbinfo));
- data = (uchar *)d_ptr->fbinfo.start;
+ data = (uchar *)d_ptr->fbinfo.Start;
- d = d_ptr->fbinfo.bitsperpixel;
+ d = d_ptr->fbinfo.BitsPerPixel;
switch (d) {
case 1:
setPixelFormat(QImage::Format_Mono);
@@ -205,24 +205,24 @@ bool QIntfbScreen::connect(const QString &displaySpec)
#ifdef QT_QWS_DEPTH_GENERIC
#if Q_BYTE_ORDER != Q_BIG_ENDIAN
qt_set_generic_blit(this, 24,
- d_ptr->fbinfo.redbits,
- d_ptr->fbinfo.greenbits,
- d_ptr->fbinfo.bluebits,
- d_ptr->fbinfo.alphabits,
- d_ptr->fbinfo.redoffset,
- d_ptr->fbinfo.greenoffset,
- d_ptr->fbinfo.blueoffset,
- d_ptr->fbinfo.alphaoffset);
+ d_ptr->fbinfo.Red.Bits,
+ d_ptr->fbinfo.Green.Bits,
+ d_ptr->fbinfo.Blue.Bits,
+ d_ptr->fbinfo.Alpha.Bits,
+ d_ptr->fbinfo.Red.Offset,
+ d_ptr->fbinfo.Green.Offset,
+ d_ptr->fbinfo.Blue.Offset,
+ d_ptr->fbinfo.Alpha.Offset);
#else
qt_set_generic_blit(this, 24,
- d_ptr->fbinfo.redbits,
- d_ptr->fbinfo.greenbits,
- d_ptr->fbinfo.bluebits,
- d_ptr->fbinfo.alphabits,
- 16 - d_ptr->fbinfo.redoffset,
- 16 - d_ptr->fbinfo.greenoffset,
- 16 - d_ptr->fbinfo.blueoffset,
- d_ptr->fbinfo.alphaoffset);
+ d_ptr->fbinfo.Red.Bits,
+ d_ptr->fbinfo.Green.Bits,
+ d_ptr->fbinfo.Blue.Bits,
+ d_ptr->fbinfo.Alpha.Bits,
+ 16 - d_ptr->fbinfo.Red.Offset,
+ 16 - d_ptr->fbinfo.Green.Offset,
+ 16 - d_ptr->fbinfo.Blue.Offset,
+ 16 - d_ptr->fbinfo.Alpha.Offset);
#endif
#endif
break;
@@ -231,31 +231,31 @@ bool QIntfbScreen::connect(const QString &displaySpec)
#ifdef QT_QWS_DEPTH_GENERIC
#if Q_BYTE_ORDER != Q_BIG_ENDIAN
qt_set_generic_blit(this, 32,
- d_ptr->fbinfo.redbits,
- d_ptr->fbinfo.greenbits,
- d_ptr->fbinfo.bluebits,
- d_ptr->fbinfo.alphabits,
- d_ptr->fbinfo.redoffset,
- d_ptr->fbinfo.greenoffset,
- d_ptr->fbinfo.blueoffset,
- d_ptr->fbinfo.alphaoffset);
+ d_ptr->fbinfo.Red.Bits,
+ d_ptr->fbinfo.Green.Bits,
+ d_ptr->fbinfo.Blue.Bits,
+ d_ptr->fbinfo.Alpha.Bits,
+ d_ptr->fbinfo.Red.Offset,
+ d_ptr->fbinfo.Green.Offset,
+ d_ptr->fbinfo.Blue.Offset,
+ d_ptr->fbinfo.Alpha.Offset);
#else
qt_set_generic_blit(this, 32,
- d_ptr->fbinfo.redbits,
- d_ptr->fbinfo.greenbits,
- d_ptr->fbinfo.bluebits,
- d_ptr->fbinfo.alphabits,
- 24 - d_ptr->fbinfo.redoffset,
- 24 - d_ptr->fbinfo.greenoffset,
- 24 - d_ptr->fbinfo.blueoffset,
- d_ptr->fbinfo.alphaoffset ? 24 - d_ptr->fbinfo.alphaoffset : 0);
+ d_ptr->fbinfo.Red.Bits,
+ d_ptr->fbinfo.Green.Bits,
+ d_ptr->fbinfo.Blue.Bits,
+ d_ptr->fbinfo.Alpha.Bits,
+ 24 - d_ptr->fbinfo.Red.Offset,
+ 24 - d_ptr->fbinfo.Green.Offset,
+ 24 - d_ptr->fbinfo.Blue.Offset,
+ 24 - d_ptr->fbinfo.Alpha.Offset);
#endif
#endif
break;
}
- dw = w = d_ptr->fbinfo.width;
- dh = h = d_ptr->fbinfo.height;
+ dw = w = d_ptr->fbinfo.Width;
+ dh = h = d_ptr->fbinfo.Height;
/* assumes no padding */
lstep = w * ((d + 7) >> 3);
@@ -286,72 +286,6 @@ void QIntfbScreen::disconnect()
bool QIntfbScreen::initDevice()
{
-
- CheckSuccess(gh_FB_set_info(d_ptr->handle, &d_ptr->fbinfo, false));
- CheckSuccess(gh_FB_get_info(d_ptr->handle, &d_ptr->fbinfo));
- data = (uchar *)d_ptr->fbinfo.start;
- d = d_ptr->fbinfo.bitsperpixel;
- dw = w = d_ptr->fbinfo.width;
- dh = h = d_ptr->fbinfo.height;
- mapsize = d_ptr->fbinfo.length;
- /* assumes no padding */
- lstep = w * ((d + 7) >> 3);
-
- mapsize = size = h * lstep;
-
- data = (uchar *)d_ptr->fbinfo.start;
-
- d = d_ptr->fbinfo.bitsperpixel;
- switch (d) {
- case 1:
- setPixelFormat(QImage::Format_Mono);
- break;
- case 8:
- setPixelFormat(QImage::Format_Indexed8);
- break;
- case 12:
- setPixelFormat(QImage::Format_RGB444);
- break;
- case 15:
- setPixelFormat(QImage::Format_RGB555);
- break;
- case 16:
- setPixelFormat(QImage::Format_RGB16);
- break;
- case 18:
- setPixelFormat(QImage::Format_RGB666);
- break;
- case 24:
- setPixelFormat(QImage::Format_RGB888);
- break;
- case 32:
- setPixelFormat(QImage::Format_ARGB32_Premultiplied);
- break;
- }
-#ifdef QT_QWS_DEPTH_GENERIC
-#if defined(__BIG_ENDIAN__)
- qt_set_generic_blit(this, d,
- d_ptr->fbinfo.redbits,
- d_ptr->fbinfo.greenbits,
- d_ptr->fbinfo.bluebits,
- d_ptr->fbinfo.alphabits,
- 24 - d_ptr->fbinfo.redoffset,
- 24 - d_ptr->fbinfo.greenoffset,
- 24 - d_ptr->fbinfo.blueoffset,
- d_ptr->fbinfo.alphaoffset ? 24 - d_ptr->fbinfo.alphaoffset : 0);
-#else
- qt_set_generic_blit(this, d,
- d_ptr->fbinfo.redbits,
- d_ptr->fbinfo.greenbits,
- d_ptr->fbinfo.bluebits,
- d_ptr->fbinfo.alphabits,
- d_ptr->fbinfo.redoffset,
- d_ptr->fbinfo.greenoffset,
- d_ptr->fbinfo.blueoffset,
- d_ptr->fbinfo.alphaoffset);
-#endif
-#endif
-
#ifndef QT_NO_QWS_CURSOR
QScreenCursor::initSoftwareCursor();
#endif
@@ -384,9 +318,9 @@ void QIntfbScreen::setDirty(const QRect& rect)
FBRect fbrect;
fbrect.dx = rect.x();
fbrect.dy = rect.y();
- fbrect.width = rect.width();
- fbrect.height = rect.height();
- gh_FB_expose(d_ptr->handle, &fbrect);
+ fbrect.Width = rect.width();
+ fbrect.Height = rect.height();
+ gh_FB_expose(d_ptr->handle, &fbrect, 0);
}
void QIntfbScreen::setBrightness(int b)
diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp
index 73e8eed..9ea0b83 100644
--- a/src/gui/graphicsview/qgraphicsitem.cpp
+++ b/src/gui/graphicsview/qgraphicsitem.cpp
@@ -1157,7 +1157,6 @@ void QGraphicsItemPrivate::setParentItemHelper(QGraphicsItem *newParent, const Q
if (q_ptr == fsi || q_ptr->isAncestorOf(fsi)) {
parentFocusScopeItem = fsi;
p->d_ptr->focusScopeItem = 0;
- fsi->d_ptr->focusScopeItemChange(false);
}
break;
}
@@ -1261,6 +1260,10 @@ void QGraphicsItemPrivate::setParentItemHelper(QGraphicsItem *newParent, const Q
if (!inDestructor && (transformData || (newParent && newParent->d_ptr->transformData)))
transformChanged();
+ // Reparenting is finished, now safe to notify the previous focusScopeItem about changes
+ if (parentFocusScopeItem)
+ parentFocusScopeItem->d_ptr->focusScopeItemChange(false);
+
// Restore the sub focus chain.
if (subFocusItem) {
subFocusItem->d_ptr->setSubFocus(newParent);
diff --git a/src/gui/kernel/qwidget_x11.cpp b/src/gui/kernel/qwidget_x11.cpp
index f99cc2c..52e3046 100644
--- a/src/gui/kernel/qwidget_x11.cpp
+++ b/src/gui/kernel/qwidget_x11.cpp
@@ -1336,40 +1336,12 @@ QPoint QWidgetPrivate::mapFromGlobal(const QPoint &pos) const
QPoint QWidget::mapToGlobal(const QPoint &pos) const
{
Q_D(const QWidget);
- QPoint offset = data->crect.topLeft();
- const QWidget *w = this;
- const QWidget *p = w->parentWidget();
- while (!w->isWindow() && p) {
- w = p;
- p = p->parentWidget();
- offset += w->data->crect.topLeft();
- }
-
- const QWidgetPrivate *wd = w->d_func();
- QTLWExtra *tlw = wd->topData();
- if (!tlw->embedded)
- return pos + offset;
-
return d->mapToGlobal(pos);
}
QPoint QWidget::mapFromGlobal(const QPoint &pos) const
{
Q_D(const QWidget);
- QPoint offset = data->crect.topLeft();
- const QWidget *w = this;
- const QWidget *p = w->parentWidget();
- while (!w->isWindow() && p) {
- w = p;
- p = p->parentWidget();
- offset += w->data->crect.topLeft();
- }
-
- const QWidgetPrivate *wd = w->d_func();
- QTLWExtra *tlw = wd->topData();
- if (!tlw->embedded)
- return pos - offset;
-
return d->mapFromGlobal(pos);
}
diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp
index fb5ce96..72357a6 100644
--- a/src/gui/painting/qpainter.cpp
+++ b/src/gui/painting/qpainter.cpp
@@ -9509,7 +9509,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
void *visual = QPaintDevice::x11AppVisual(screen);
\newcode
- void *visual = qApp->x11Info(screen).visual();
+ void *visual = widget->x11Info().appVisual(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9521,7 +9521,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
unsigned long colormap = QPaintDevice::x11AppColormap(screen);
\newcode
- unsigned long colormap = qApp->x11Info(screen).colormap();
+ unsigned long colormap = widget->x11Info().appColormap(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9533,7 +9533,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
Display *display = QPaintDevice::x11AppDisplay();
\newcode
- Display *display = qApp->x11Info().display();
+ Display *display = widget->x11Info().display();
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9545,7 +9545,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
int screen = QPaintDevice::x11AppScreen();
\newcode
- int screen = qApp->x11Info().screen();
+ int screen = widget->x11Info().appScreen();
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9557,7 +9557,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
int depth = QPaintDevice::x11AppDepth(screen);
\newcode
- int depth = qApp->x11Info(screen).depth();
+ int depth = widget->x11Info().appDepth(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9569,7 +9569,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
int cells = QPaintDevice::x11AppCells(screen);
\newcode
- int cells = qApp->x11Info(screen).cells();
+ int cells = widget->x11Info().appCells(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9581,7 +9581,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
unsigned long window = QPaintDevice::x11AppRootWindow(screen);
\newcode
- unsigned long window = qApp->x11Info(screen).appRootWindow();
+ unsigned long window = widget->x11Info().appRootWindow(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9593,7 +9593,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
bool isDefault = QPaintDevice::x11AppDefaultColormap(screen);
\newcode
- bool isDefault = qApp->x11Info(screen).defaultColormap();
+ bool isDefault = widget->x11Info().appDefaultColormap(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9605,7 +9605,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
bool isDefault = QPaintDevice::x11AppDefaultVisual(screen);
\newcode
- bool isDefault = qApp->x11Info(screen).defaultVisual();
+ bool isDefault = widget->x11Info().appDefaultVisual(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9625,7 +9625,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
bool isDefault = QPaintDevice::x11AppDpiX(screen);
\newcode
- bool isDefault = qApp->x11Info(screen).appDpiX();
+ bool isDefault = widget->x11Info().appDpiX(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
@@ -9637,7 +9637,7 @@ void qt_draw_helper(QPainterPrivate *p, const QPainterPath &path, QPainterPrivat
\oldcode
bool isDefault = QPaintDevice::x11AppDpiY(screen);
\newcode
- bool isDefault = qApp->x11Info(screen).appDpiY();
+ bool isDefault = widget->x11Info().appDpiY(screen);
\endcode
\sa QWidget::x11Info(), QPixmap::x11Info()
diff --git a/src/gui/styles/qmacstyle_mac.mm b/src/gui/styles/qmacstyle_mac.mm
index 1c1713c..4d6252f 100644
--- a/src/gui/styles/qmacstyle_mac.mm
+++ b/src/gui/styles/qmacstyle_mac.mm
@@ -2920,10 +2920,14 @@ void QMacStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPai
QVector<QLineF> a(2);
a << QLineF(x1, y1, x2, y2);
a << QLineF(x2, y2, x3, y3);
- if (opt->palette.currentColorGroup() == QPalette::Active)
- p->setPen(QPen(Qt::white, 3));
- else
+ if (opt->palette.currentColorGroup() == QPalette::Active) {
+ if (opt->state & State_On)
+ p->setPen(QPen(opt->palette.highlightedText().color(), 3));
+ else
+ p->setPen(QPen(opt->palette.text().color(), 3));
+ } else {
p->setPen(QPen(QColor(100, 100, 100), 3));
+ }
p->save();
p->setRenderHint(QPainter::Antialiasing);
p->drawLines(a);
@@ -4548,6 +4552,107 @@ QRect QMacStyle::subElementRect(SubElement sr, const QStyleOption *opt,
rect.setTop(rect.top() + SIZE(6 /* AHIG */, 3 /* guess */, 2 /* AHIG */));
}
break;
+#ifndef QT_NO_DOCKWIDGET
+ case SE_DockWidgetCloseButton:
+ case SE_DockWidgetFloatButton:
+ case SE_DockWidgetTitleBarText:
+ case SE_DockWidgetIcon: {
+ int iconSize = proxy()->pixelMetric(PM_SmallIconSize, opt, widget);
+ int buttonMargin = proxy()->pixelMetric(PM_DockWidgetTitleBarButtonMargin, opt, widget);
+ QRect srect = opt->rect;
+
+ const QStyleOptionDockWidget *dwOpt
+ = qstyleoption_cast<const QStyleOptionDockWidget*>(opt);
+ bool canClose = dwOpt == 0 ? true : dwOpt->closable;
+ bool canFloat = dwOpt == 0 ? false : dwOpt->floatable;
+ const QStyleOptionDockWidgetV2 *v2
+ = qstyleoption_cast<const QStyleOptionDockWidgetV2*>(opt);
+ bool verticalTitleBar = v2 == 0 ? false : v2->verticalTitleBar;
+
+ // If this is a vertical titlebar, we transpose and work as if it was
+ // horizontal, then transpose again.
+ if (verticalTitleBar) {
+ QSize size = srect.size();
+ size.transpose();
+ srect.setSize(size);
+ }
+
+ do {
+ int right = srect.right();
+ int left = srect.left();
+
+ QRect closeRect;
+ if (canClose) {
+ QSize sz = standardIcon(QStyle::SP_TitleBarCloseButton,
+ opt, widget).actualSize(QSize(iconSize, iconSize));
+ sz += QSize(buttonMargin, buttonMargin);
+ if (verticalTitleBar)
+ sz.transpose();
+ closeRect = QRect(left,
+ srect.center().y() - sz.height()/2,
+ sz.width(), sz.height());
+ left = closeRect.right() + 1;
+ }
+ if (sr == SE_DockWidgetCloseButton) {
+ rect = closeRect;
+ break;
+ }
+
+ QRect floatRect;
+ if (canFloat) {
+ QSize sz = standardIcon(QStyle::SP_TitleBarNormalButton,
+ opt, widget).actualSize(QSize(iconSize, iconSize));
+ sz += QSize(buttonMargin, buttonMargin);
+ if (verticalTitleBar)
+ sz.transpose();
+ floatRect = QRect(left,
+ srect.center().y() - sz.height()/2,
+ sz.width(), sz.height());
+ left = floatRect.right() + 1;
+ }
+ if (sr == SE_DockWidgetFloatButton) {
+ rect = floatRect;
+ break;
+ }
+
+ QRect iconRect;
+ if (const QDockWidget *dw = qobject_cast<const QDockWidget*>(widget)) {
+ QIcon icon;
+ if (dw->isFloating())
+ icon = dw->windowIcon();
+ if (!icon.isNull()
+ && icon.cacheKey() != QApplication::windowIcon().cacheKey()) {
+ QSize sz = icon.actualSize(QSize(rect.height(), rect.height()));
+ if (verticalTitleBar)
+ sz.transpose();
+ iconRect = QRect(right - sz.width(), srect.center().y() - sz.height()/2,
+ sz.width(), sz.height());
+ right = iconRect.left() - 1;
+ }
+ }
+ if (sr == SE_DockWidgetIcon) {
+ rect = iconRect;
+ break;
+ }
+
+ QRect textRect = QRect(left, srect.top(),
+ right - left, srect.height());
+ if (sr == SE_DockWidgetTitleBarText) {
+ rect = textRect;
+ break;
+ }
+ } while (false);
+
+ if (verticalTitleBar) {
+ rect = QRect(srect.left() + rect.top() - srect.top(),
+ srect.top() + srect.right() - rect.right(),
+ rect.height(), rect.width());
+ } else {
+ rect = visualRect(opt->direction, srect, rect);
+ }
+ break;
+ }
+#endif
default:
rect = QWindowsStyle::subElementRect(sr, opt, widget);
break;
diff --git a/src/gui/styles/qwindowsstyle.cpp b/src/gui/styles/qwindowsstyle.cpp
index 2244c11..6ab29b9 100644
--- a/src/gui/styles/qwindowsstyle.cpp
+++ b/src/gui/styles/qwindowsstyle.cpp
@@ -133,6 +133,26 @@ QWindowsStylePrivate::QWindowsStylePrivate()
startTime.start();
}
+void QWindowsStylePrivate::startAnimation(QObject *o, QProgressBar *bar)
+{
+ if (!animatedProgressBars.contains(bar)) {
+ animatedProgressBars << bar;
+ if (!animateTimer) {
+ Q_ASSERT(animationFps > 0);
+ animateTimer = o->startTimer(1000 / animationFps);
+ }
+ }
+}
+
+void QWindowsStylePrivate::stopAnimation(QObject *o, QProgressBar *bar)
+{
+ animatedProgressBars.removeAll(bar);
+ if (animatedProgressBars.isEmpty() && animateTimer) {
+ o->killTimer(animateTimer);
+ animateTimer = 0;
+ }
+}
+
// Returns true if the toplevel parent of \a widget has seen the Alt-key
bool QWindowsStylePrivate::hasSeenAlt(const QWidget *widget) const
{
@@ -150,10 +170,8 @@ void QWindowsStyle::timerEvent(QTimerEvent *event)
if (event->timerId() == d->animateTimer) {
Q_ASSERT(d->animationFps> 0);
d->animateStep = d->startTime.elapsed() / (1000 / d->animationFps);
- foreach (QProgressBar *bar, d->bars) {
- if ((bar->minimum() == 0 && bar->maximum() == 0))
- bar->update();
- }
+ foreach (QProgressBar *bar, d->animatedProgressBars)
+ bar->update();
}
#endif // QT_NO_PROGRESSBAR
event->ignore();
@@ -215,29 +233,23 @@ bool QWindowsStyle::eventFilter(QObject *o, QEvent *e)
break;
#ifndef QT_NO_PROGRESSBAR
case QEvent::StyleChange:
+ case QEvent::Paint:
case QEvent::Show:
if (QProgressBar *bar = qobject_cast<QProgressBar *>(o)) {
- if (!d->bars.contains(bar)) {
- d->bars << bar;
- if (d->bars.size() == 1) {
- Q_ASSERT(d->animationFps> 0);
- if (d->animateTimer == 0)
- d->animateTimer = startTimer(1000 / d->animationFps);
- }
- }
+ // Animation by timer for progress bars that have their min and
+ // max values the same
+ if (bar->minimum() == bar->maximum())
+ d->startAnimation(this, bar);
+ else
+ d->stopAnimation(this, bar);
}
break;
case QEvent::Destroy:
case QEvent::Hide:
- // reinterpret_cast because there is no type info when getting
- // the destroy event. We know that it is a QProgressBar.
- if (QProgressBar *bar = reinterpret_cast<QProgressBar *>(o)) {
- d->bars.removeAll(bar);
- if (d->bars.isEmpty() && d->animateTimer) {
- killTimer(d->animateTimer);
- d->animateTimer = 0;
- }
- }
+ // Do static_cast because there is no type info when getting
+ // the destroy event. We know that it is a QProgressBar, since
+ // we only install a widget event filter for QScrollBars.
+ d->stopAnimation(this, static_cast<QProgressBar *>(o));
break;
#endif // QT_NO_PROGRESSBAR
default:
@@ -343,7 +355,7 @@ void QWindowsStyle::unpolish(QWidget *widget)
if (QProgressBar *bar=qobject_cast<QProgressBar *>(widget)) {
Q_D(QWindowsStyle);
widget->removeEventFilter(this);
- d->bars.removeAll(bar);
+ d->stopAnimation(this, bar);
}
#endif
}
diff --git a/src/gui/styles/qwindowsstyle_p.h b/src/gui/styles/qwindowsstyle_p.h
index b9f39a0..1e517e9 100644
--- a/src/gui/styles/qwindowsstyle_p.h
+++ b/src/gui/styles/qwindowsstyle_p.h
@@ -71,13 +71,15 @@ class QWindowsStylePrivate : public QCommonStylePrivate
Q_DECLARE_PUBLIC(QWindowsStyle)
public:
QWindowsStylePrivate();
+ void startAnimation(QObject *o, QProgressBar *bar);
+ void stopAnimation(QObject *o, QProgressBar *bar);
bool hasSeenAlt(const QWidget *widget) const;
bool altDown() const { return alt_down; }
bool alt_down;
QList<const QWidget *> seenAlt;
int menuBarTimer;
- QList<QProgressBar *> bars;
+ QList<QProgressBar *> animatedProgressBars;
int animationFps;
int animateTimer;
QElapsedTimer startTime;
diff --git a/src/gui/styles/qwindowsvistastyle.cpp b/src/gui/styles/qwindowsvistastyle.cpp
index 5525468..8051014 100644
--- a/src/gui/styles/qwindowsvistastyle.cpp
+++ b/src/gui/styles/qwindowsvistastyle.cpp
@@ -2508,6 +2508,7 @@ QWindowsVistaStylePrivate::QWindowsVistaStylePrivate() :
QWindowsVistaStylePrivate::~QWindowsVistaStylePrivate()
{
+ qDeleteAll(animations);
delete m_treeViewHelper;
}
diff --git a/src/gui/text/qfontdatabase.cpp b/src/gui/text/qfontdatabase.cpp
index 796c455..d5d8a12 100644
--- a/src/gui/text/qfontdatabase.cpp
+++ b/src/gui/text/qfontdatabase.cpp
@@ -91,6 +91,8 @@ QT_BEGIN_NAMESPACE
bool qt_enable_test_font = false;
+static QString styleStringHelper(int weight, QFont::Style style);
+
Q_AUTOTEST_EXPORT void qt_setQtEnableTestFont(bool value)
{
qt_enable_test_font = value;
@@ -358,32 +360,20 @@ struct QtFontFoundry
QtFontStyle *QtFontFoundry::style(const QtFontStyle::Key &key, const QString &styleName, bool create)
{
int pos = 0;
- if (count) {
- // if styleName for searching first if possible
- if (!styleName.isEmpty()) {
- for (; pos < count; pos++) {
- if (styles[pos]->styleName == styleName)
- return styles[pos];
- }
- }
- int low = 0;
- int high = count;
- pos = count / 2;
- while (high > low) {
+ for (; pos < count; pos++) {
+ bool hasStyleName = !styleName.isEmpty(); // search styleName first if available
+ if (hasStyleName && !styles[pos]->styleName.isEmpty()) {
+ if (styles[pos]->styleName == styleName)
+ return styles[pos];
+ } else {
if (styles[pos]->key == key)
return styles[pos];
- if (styles[pos]->key < key)
- low = pos + 1;
- else
- high = pos;
- pos = (high + low) / 2;
}
- pos = low;
}
if (!create)
return 0;
-// qDebug("adding key (weight=%d, style=%d, oblique=%d stretch=%d) at %d", key.weight, key.style, key.oblique, key.stretch, pos);
+ // qDebug("adding key (weight=%d, style=%d, stretch=%d) at %d", key.weight, key.style, key.stretch, pos);
if (!(count % 8)) {
QtFontStyle **newStyles = (QtFontStyle **)
realloc(styles, (((count+8) >> 3) << 3) * sizeof(QtFontStyle *));
@@ -393,13 +383,11 @@ QtFontStyle *QtFontFoundry::style(const QtFontStyle::Key &key, const QString &st
QtFontStyle *style = new QtFontStyle(key);
style->styleName = styleName;
- memmove(styles + pos + 1, styles + pos, (count-pos)*sizeof(QtFontStyle *));
styles[pos] = style;
count++;
return styles[pos];
}
-
struct QtFontFamily
{
enum WritingSystemStatus {
@@ -1132,7 +1120,7 @@ QT_BEGIN_INCLUDE_NAMESPACE
#endif
QT_END_INCLUDE_NAMESPACE
-#if !defined(Q_WS_X11)
+#if !defined(Q_WS_X11) && !defined(Q_WS_MAC)
QString QFontDatabase::resolveFontFamilyAlias(const QString &family)
{
return family;
diff --git a/src/gui/text/qfontdatabase_mac.cpp b/src/gui/text/qfontdatabase_mac.cpp
index fc8247d..81500c7 100644
--- a/src/gui/text/qfontdatabase_mac.cpp
+++ b/src/gui/text/qfontdatabase_mac.cpp
@@ -104,9 +104,8 @@ if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_5) {
const int numFonts = CFArrayGetCount(fonts);
for(int i = 0; i < numFonts; ++i) {
CTFontDescriptorRef font = (CTFontDescriptorRef)CFArrayGetValueAtIndex(fonts, i);
-
- QCFString family_name = (CFStringRef)CTFontDescriptorCopyAttribute(font, kCTFontFamilyNameAttribute);
- QCFString style_name = (CFStringRef)CTFontDescriptorCopyAttribute(font, kCTFontStyleNameAttribute);
+ QCFString family_name = (CFStringRef)CTFontDescriptorCopyLocalizedAttribute(font, kCTFontFamilyNameAttribute, NULL);
+ QCFString style_name = (CFStringRef)CTFontDescriptorCopyLocalizedAttribute(font, kCTFontStyleNameAttribute, NULL);
QtFontFamily *family = db->family(family_name, true);
for(int ws = 1; ws < QFontDatabase::WritingSystemsCount; ++ws)
family->writingSystems[ws] = QtFontFamily::Supported;
@@ -251,7 +250,7 @@ static inline float weightToFloat(unsigned int weight)
return (weight - 50) / 100.0;
}
-static QFontEngine *loadFromDatabase(const QFontDef &req, const QFontPrivate *d)
+static QFontEngine *loadFromDatabase(QFontDef &req, const QFontPrivate *d)
{
#if defined(QT_MAC_USE_COCOA)
QCFString fontName = NULL;
@@ -302,7 +301,7 @@ found:
QCFString actualName;
if (ATSFontFamilyGetName(familyRef, kATSOptionFlagsDefault, &actualName) == noErr)
req.family = actualName;
- return new QFontEngineMacMulti(familyRef, req, fontDef, d->kerning);
+ return new QFontEngineMacMulti(familyRef, fontRef, req, d->kerning);
}
#endif
return NULL;
@@ -489,4 +488,25 @@ bool QFontDatabase::supportsThreadedFontRendering()
return true;
}
+QString QFontDatabase::resolveFontFamilyAlias(const QString &family)
+{
+ QCFString expectedFamily = QCFString(family);
+
+ QCFType<CFMutableDictionaryRef> attributes = CFDictionaryCreateMutable(NULL, 0,
+ &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks);
+ CFDictionaryAddValue(attributes, kCTFontFamilyNameAttribute, expectedFamily);
+ QCFType<CTFontDescriptorRef> descriptor = CTFontDescriptorCreateWithAttributes(attributes);
+
+ QCFType<CFMutableSetRef> mandatoryAttributes = CFSetCreateMutable(NULL, 0, &kCFTypeSetCallBacks);
+ CFSetAddValue(mandatoryAttributes, kCTFontFamilyNameAttribute);
+
+ QCFType<CTFontRef> font = CTFontCreateWithFontDescriptor(descriptor, 0.0, NULL);
+ QCFType<CTFontDescriptorRef> matched = CTFontDescriptorCreateMatchingFontDescriptor(descriptor, mandatoryAttributes);
+ if (!matched)
+ return family;
+
+ QCFString familyName = (CFStringRef) CTFontDescriptorCopyLocalizedAttribute(matched, kCTFontFamilyNameAttribute, NULL);
+ return familyName;
+}
+
QT_END_NAMESPACE
diff --git a/src/gui/text/qfontdatabase_x11.cpp b/src/gui/text/qfontdatabase_x11.cpp
index 922a97f..df25aa6 100644
--- a/src/gui/text/qfontdatabase_x11.cpp
+++ b/src/gui/text/qfontdatabase_x11.cpp
@@ -1361,6 +1361,7 @@ static void initializeDb()
// let's fake one...
equiv = foundry->style(key, QString(), true);
+ equiv->styleName = styleStringHelper(key.weight, QFont::Style(key.style));
equiv->smoothScalable = true;
QtFontSize *equiv_size = equiv->pixelSize(SMOOTH_SCALABLE, true);
diff --git a/src/gui/text/qfontengine_mac.mm b/src/gui/text/qfontengine_mac.mm
index 6186b2f..14ded69 100644
--- a/src/gui/text/qfontengine_mac.mm
+++ b/src/gui/text/qfontengine_mac.mm
@@ -369,7 +369,7 @@ int QFontEngineMacMulti::fontIndexForFontID(ATSUFontID id) const
bool QFontEngineMacMulti::stringToCMap(const QChar *str, int len, QGlyphLayout *glyphs, int *nglyphs, QTextEngine::ShaperFlags flags) const
{
- return stringToCMap(str, len, glyphs, nglyphs, flags, /*logClusters=*/0, /*charAttributes=*/0);
+ return stringToCMap(str, len, glyphs, nglyphs, flags, /*logClusters=*/0, /*charAttributes=*/0, /*si=*/0);
}
bool QFontEngineMacMulti::stringToCMap(const QChar *str, int len, QGlyphLayout *glyphs, int *nglyphs, QTextEngine::ShaperFlags flags,
diff --git a/src/gui/text/qtextcontrol.cpp b/src/gui/text/qtextcontrol.cpp
index 5babbc2..ffcd90b 100644
--- a/src/gui/text/qtextcontrol.cpp
+++ b/src/gui/text/qtextcontrol.cpp
@@ -2029,10 +2029,7 @@ void QTextControlPrivate::focusEvent(QFocusEvent *e)
#endif
))) {
#endif
- cursorOn = (interactionFlags & Qt::TextSelectableByKeyboard);
- if (interactionFlags & Qt::TextEditable) {
- setBlinkingCursorEnabled(true);
- }
+ setBlinkingCursorEnabled(interactionFlags & (Qt::TextEditable | Qt::TextSelectableByKeyboard));
#ifdef QT_KEYPAD_NAVIGATION
}
#endif
@@ -2808,7 +2805,7 @@ void QTextControl::setTextInteractionFlags(Qt::TextInteractionFlags flags)
d->interactionFlags = flags;
if (d->hasFocus)
- d->setBlinkingCursorEnabled(flags & Qt::TextEditable);
+ d->setBlinkingCursorEnabled(flags & (Qt::TextEditable | Qt::TextSelectableByKeyboard));
}
Qt::TextInteractionFlags QTextControl::textInteractionFlags() const
diff --git a/src/gui/widgets/qdatetimeedit.cpp b/src/gui/widgets/qdatetimeedit.cpp
index d9ff8a6..62c6e20 100644
--- a/src/gui/widgets/qdatetimeedit.cpp
+++ b/src/gui/widgets/qdatetimeedit.cpp
@@ -2532,8 +2532,10 @@ void QDateTimeEditPrivate::syncCalendarWidget()
{
Q_Q(QDateTimeEdit);
if (monthCalendar) {
+ const bool sb = monthCalendar->blockSignals(true);
monthCalendar->setDateRange(q->minimumDate(), q->maximumDate());
monthCalendar->setDate(q->date());
+ monthCalendar->blockSignals(sb);
}
}
diff --git a/src/gui/widgets/qgroupbox.cpp b/src/gui/widgets/qgroupbox.cpp
index 56fb2dd..db068cf 100644
--- a/src/gui/widgets/qgroupbox.cpp
+++ b/src/gui/widgets/qgroupbox.cpp
@@ -733,6 +733,10 @@ void QGroupBox::mouseReleaseEvent(QMouseEvent *event)
}
Q_D(QGroupBox);
+ if (!d->overCheckBox) {
+ event->ignore();
+ return;
+ }
QStyleOptionGroupBox box;
initStyleOption(&box);
QStyle::SubControl released = style()->hitTestComplexControl(QStyle::CC_GroupBox, &box,
diff --git a/src/gui/widgets/qplaintextedit.cpp b/src/gui/widgets/qplaintextedit.cpp
index f2fca8f..3b2c8fd 100644
--- a/src/gui/widgets/qplaintextedit.cpp
+++ b/src/gui/widgets/qplaintextedit.cpp
@@ -1900,7 +1900,7 @@ void QPlainTextEdit::paintEvent(QPaintEvent *e)
}
}
- bool drawCursor = (editable
+ bool drawCursor = ((editable || (textInteractionFlags() & Qt::TextSelectableByKeyboard))
&& context.cursorPosition >= blpos
&& context.cursorPosition < blpos + bllen);
diff --git a/src/gui/widgets/qprogressbar.cpp b/src/gui/widgets/qprogressbar.cpp
index 1b0a1a1..c583a78 100644
--- a/src/gui/widgets/qprogressbar.cpp
+++ b/src/gui/widgets/qprogressbar.cpp
@@ -341,11 +341,17 @@ int QProgressBar::value() const
void QProgressBar::setRange(int minimum, int maximum)
{
Q_D(QProgressBar);
- d->minimum = minimum;
- d->maximum = qMax(minimum, maximum);
- if ( d->value <(d->minimum-1) || d->value > d->maximum)
- reset();
+ if (minimum != d->minimum || maximum != d->maximum) {
+ d->minimum = minimum;
+ d->maximum = qMax(minimum, maximum);
+
+ if (d->value < (d->minimum - 1) || d->value > d->maximum)
+ reset();
+ else
+ update();
+ }
}
+
/*!
\property QProgressBar::textVisible
\brief whether the current completed percentage should be displayed
diff --git a/src/gui/widgets/qvalidator.cpp b/src/gui/widgets/qvalidator.cpp
index b32bea8..4362f2b 100644
--- a/src/gui/widgets/qvalidator.cpp
+++ b/src/gui/widgets/qvalidator.cpp
@@ -400,8 +400,9 @@ QValidator::State QIntValidator::validate(QString & input, int&) const
qlonglong entered = QLocalePrivate::bytearrayToLongLong(buff.constData(), 10, &ok, &overflow);
if (overflow || !ok)
return Invalid;
+
if (entered >= b && entered <= t) {
- locale().toInt(input, &ok);
+ locale().toInt(input, &ok, 10);
return ok ? Acceptable : Intermediate;
}
diff --git a/src/imports/shaders/shadereffect.cpp b/src/imports/shaders/shadereffect.cpp
index f40d6b8..a5164e2 100644
--- a/src/imports/shaders/shadereffect.cpp
+++ b/src/imports/shaders/shadereffect.cpp
@@ -61,6 +61,7 @@ ShaderEffect::~ShaderEffect()
void ShaderEffect::prepareBufferedDraw(QPainter *painter)
{
+#ifndef QT_NO_DYNAMIC_CAST
// This workaround needed because QGraphicsEffect seems to always utilize default painters worldtransform
// instead of the active painters worldtransform.
const ShaderEffectBuffer *effectBuffer = dynamic_cast<ShaderEffectBuffer*> (painter->device());
@@ -70,6 +71,9 @@ void ShaderEffect::prepareBufferedDraw(QPainter *painter)
} else {
savedWorldTransform = painter->worldTransform();
}
+#else
+ Q_UNUSED(painter);
+#endif
}
void ShaderEffect::draw (QPainter *painter)
diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp
index 4f2145e..0365703 100644
--- a/src/network/access/qhttpnetworkconnection.cpp
+++ b/src/network/access/qhttpnetworkconnection.cpp
@@ -387,6 +387,11 @@ bool QHttpNetworkConnectionPrivate::handleAuthenticateChallenge(QAbstractSocket
// send any pending requests
copyCredentials(i, auth, isProxy);
}
+ } else if (priv->phase == QAuthenticatorPrivate::Start) {
+ // If the url's authenticator has a 'user' set we will end up here (phase is only set to 'Done' by
+ // parseHttpResponse above if 'user' is empty). So if credentials were supplied with the request,
+ // such as in the case of an XMLHttpRequest, this is our only opportunity to cache them.
+ emit reply->cacheCredentials(reply->request(), auth);
}
// - Changing values in QAuthenticator will reset the 'phase'. Therefore if it is still "Done"
// then nothing was filled in by the user or the cache
diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp
index 9b2a6e8..b9db7fe 100644
--- a/src/network/access/qhttpnetworkconnectionchannel.cpp
+++ b/src/network/access/qhttpnetworkconnectionchannel.cpp
@@ -201,7 +201,6 @@ bool QHttpNetworkConnectionChannel::sendRequest()
|| (!url.password().isEmpty() && url.password() != auth.password())) {
auth.setUser(url.userName());
auth.setPassword(url.password());
- emit reply->cacheCredentials(request, &auth);
connection->d_func()->copyCredentials(connection->d_func()->indexOf(socket), &auth, false);
}
// clear the userinfo, since we use the same request for resending
@@ -789,6 +788,7 @@ void QHttpNetworkConnectionChannel::detectPipeliningSupport()
&& (!serverHeaderField.contains("Netscape-Enterprise/3."))
// this is adpoted from the knowledge of the Nokia 7.x browser team (DEF143319)
&& (!serverHeaderField.contains("WebLogic"))
+ && (!serverHeaderField.startsWith("Rocket")) // a Python Web Server, see Web2py.com
) {
pipeliningSupported = QHttpNetworkConnectionChannel::PipeliningProbablySupported;
} else {
diff --git a/src/network/access/qhttpnetworkreply.cpp b/src/network/access/qhttpnetworkreply.cpp
index 6173b39..3dc8b2f 100644
--- a/src/network/access/qhttpnetworkreply.cpp
+++ b/src/network/access/qhttpnetworkreply.cpp
@@ -472,8 +472,10 @@ int QHttpNetworkReplyPrivate::gunzipBodyPartially(QByteArray &compressed, QByteA
void QHttpNetworkReplyPrivate::gunzipBodyPartiallyEnd()
{
- inflateEnd(&inflateStrm);
- initInflate = false;
+ if (initInflate) {
+ inflateEnd(&inflateStrm);
+ initInflate = false;
+ }
}
#endif
diff --git a/src/network/access/qhttpthreaddelegate.cpp b/src/network/access/qhttpthreaddelegate.cpp
index 092fa7d..68c2292 100644
--- a/src/network/access/qhttpthreaddelegate.cpp
+++ b/src/network/access/qhttpthreaddelegate.cpp
@@ -312,8 +312,6 @@ void QHttpThreadDelegate::startRequest()
// some signals are only interesting when normal asynchronous style is used
connect(httpReply,SIGNAL(readyRead()), this, SLOT(readyReadSlot()));
connect(httpReply,SIGNAL(dataReadProgress(int, int)), this, SLOT(dataReadProgressSlot(int,int)));
- connect(httpReply, SIGNAL(cacheCredentials(QHttpNetworkRequest,QAuthenticator*)),
- this, SLOT(cacheCredentialsSlot(QHttpNetworkRequest,QAuthenticator*)));
#ifndef QT_NO_OPENSSL
connect(httpReply,SIGNAL(sslErrors(const QList<QSslError>)), this, SLOT(sslErrorsSlot(QList<QSslError>)));
#endif
@@ -325,6 +323,9 @@ void QHttpThreadDelegate::startRequest()
connect(httpReply, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)),
this, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)));
}
+
+ connect(httpReply, SIGNAL(cacheCredentials(QHttpNetworkRequest,QAuthenticator*)),
+ this, SLOT(cacheCredentialsSlot(QHttpNetworkRequest,QAuthenticator*)));
}
// This gets called from the user thread or by the synchronous HTTP timeout timer
diff --git a/src/network/access/qnetworkdiskcache.cpp b/src/network/access/qnetworkdiskcache.cpp
index af6ba1d..a567c2d 100644
--- a/src/network/access/qnetworkdiskcache.cpp
+++ b/src/network/access/qnetworkdiskcache.cpp
@@ -478,7 +478,7 @@ void QNetworkDiskCache::updateMetaData(const QNetworkCacheMetaData &metaData)
}
/*!
- Returns the current maximum size for the disk cache.
+ Returns the current maximum size in bytes for the disk cache.
\sa setMaximumCacheSize()
*/
@@ -489,7 +489,7 @@ qint64 QNetworkDiskCache::maximumCacheSize() const
}
/*!
- Sets the maximum size of the disk cache to be \a size.
+ Sets the maximum size of the disk cache to be \a size in bytes.
If the new size is smaller then the current cache size then the cache will call expire().
diff --git a/src/network/socket/qhttpsocketengine.cpp b/src/network/socket/qhttpsocketengine.cpp
index 5c672ec..b62bc05 100644
--- a/src/network/socket/qhttpsocketengine.cpp
+++ b/src/network/socket/qhttpsocketengine.cpp
@@ -614,6 +614,10 @@ void QHttpSocketEngine::slotSocketReadNotification()
bool willClose;
QString proxyConnectionHeader = responseHeader.value(QLatin1String("Proxy-Connection"));
+ // Although most proxies use the unofficial Proxy-Connection header, the Connection header
+ // from http spec is also allowed.
+ if (proxyConnectionHeader.isEmpty())
+ proxyConnectionHeader = responseHeader.value(QLatin1String("Connection"));
proxyConnectionHeader = proxyConnectionHeader.toLower();
if (proxyConnectionHeader == QLatin1String("close")) {
willClose = true;
diff --git a/src/network/ssl/qssl.cpp b/src/network/ssl/qssl.cpp
index b556328..01297c9 100644
--- a/src/network/ssl/qssl.cpp
+++ b/src/network/ssl/qssl.cpp
@@ -141,9 +141,15 @@ QT_BEGIN_NAMESPACE
\value SslOptionDisableServerNameIndication Disables the SSL server
name indication extension. When enabled, this tells the server the virtual
host being accessed allowing it to respond with the correct certificate.
+ \value SslOptionDisableLegacyRenegotiation Disables the older insecure
+ mechanism for renegotiating the connection parameters. When enabled, this
+ option can allow connections for legacy servers, but it introduces the
+ possibility that an attacker could inject plaintext into the SSL session.
By default, SslOptionDisableEmptyFragments is turned on since this causes
- problems with a large number of servers, but the other options are disabled.
+ problems with a large number of servers. SslOptionDisableLegacyRenegotiation
+ is also turned on, since it introduces a security risk. The other options
+ are turned off.
Note: Availability of above options depends on the version of the SSL
backend in use.
diff --git a/src/network/ssl/qssl.h b/src/network/ssl/qssl.h
index 453d4da..571aa1f 100644
--- a/src/network/ssl/qssl.h
+++ b/src/network/ssl/qssl.h
@@ -87,7 +87,8 @@ namespace QSsl {
SslOptionDisableEmptyFragments = 0x01,
SslOptionDisableSessionTickets = 0x02,
SslOptionDisableCompression = 0x04,
- SslOptionDisableServerNameIndication = 0x08
+ SslOptionDisableServerNameIndication = 0x08,
+ SslOptionDisableLegacyRenegotiation = 0x10
};
Q_DECLARE_FLAGS(SslOptions, SslOption)
}
diff --git a/src/network/ssl/qsslcertificate.cpp b/src/network/ssl/qsslcertificate.cpp
index 2a2ad55..85cd06c 100644
--- a/src/network/ssl/qsslcertificate.cpp
+++ b/src/network/ssl/qsslcertificate.cpp
@@ -814,6 +814,9 @@ static const char *certificate_blacklist[] = {
// "(has not been seen in the wild so far)", "Stichting TTP Infos CA," // compromised during DigiNotar breach
"1184640175", "DigiNotar Root CA", // DigiNotar intermediate cross-signed by Entrust
"1184644297", "DigiNotar Root CA", // DigiNotar intermediate cross-signed by Entrust
+
+ "120001705", "Digisign Server ID (Enrich)", // (Malaysian) Digicert Sdn. Bhd. cross-signed by Verizon CyberTrust
+ "1276011370", "Digisign Server ID - (Enrich)", // (Malaysian) Digicert Sdn. Bhd. cross-signed by Entrust
0
};
diff --git a/src/network/ssl/qsslconfiguration.cpp b/src/network/ssl/qsslconfiguration.cpp
index e24076e..727130b 100644
--- a/src/network/ssl/qsslconfiguration.cpp
+++ b/src/network/ssl/qsslconfiguration.cpp
@@ -201,7 +201,7 @@ bool QSslConfiguration::isNull() const
d->privateKey.isNull() &&
d->peerCertificate.isNull() &&
d->peerCertificateChain.count() == 0 &&
- d->sslOptions == 0);
+ d->sslOptions == QSsl::SslOptionDisableEmptyFragments|QSsl::SslOptionDisableLegacyRenegotiation);
}
/*!
diff --git a/src/network/ssl/qsslconfiguration_p.h b/src/network/ssl/qsslconfiguration_p.h
index b83edb9..a711eeb 100644
--- a/src/network/ssl/qsslconfiguration_p.h
+++ b/src/network/ssl/qsslconfiguration_p.h
@@ -82,7 +82,8 @@ public:
QSslConfigurationPrivate()
: protocol(QSsl::SecureProtocols),
peerVerifyMode(QSslSocket::AutoVerifyPeer),
- peerVerifyDepth(0)
+ peerVerifyDepth(0),
+ sslOptions(QSsl::SslOptionDisableEmptyFragments|QSsl::SslOptionDisableLegacyRenegotiation)
{ }
QSslCertificate peerCertificate;
diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp
index 3942209..5f520f7 100644
--- a/src/network/ssl/qsslsocket_openssl.cpp
+++ b/src/network/ssl/qsslsocket_openssl.cpp
@@ -298,6 +298,14 @@ init_context:
else
options &= ~SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS;
+#ifdef SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION
+ // This option is disabled by default, so we need to be able to clear it
+ if (configuration.sslOptions & QSsl::SslOptionDisableLegacyRenegotiation)
+ options &= ~SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION;
+ else
+ options |= SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION;
+#endif
+
#ifdef SSL_OP_NO_TICKET
if (configuration.sslOptions & QSsl::SslOptionDisableSessionTickets)
options |= SSL_OP_NO_TICKET;
diff --git a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
index f5fe739..2db5b79 100644
--- a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
+++ b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
@@ -2108,6 +2108,10 @@ bool QGL2PaintEngineEx::begin(QPaintDevice *pdev)
return false;
d->ctx = d->device->context();
+#ifdef Q_OS_SYMBIAN
+ if (!d->ctx)
+ return false;
+#endif
d->ctx->d_ptr->active_engine = this;
const QSize sz = d->device->size();
diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp
index 08b9ca3..2fc3dea 100644
--- a/src/opengl/qgl.cpp
+++ b/src/opengl/qgl.cpp
@@ -5499,7 +5499,8 @@ QGLExtensions::Extensions QGLExtensions::currentContextExtensions()
glExtensions |= NVFloatBuffer;
if (extensions.match("GL_ARB_pixel_buffer_object"))
glExtensions |= PixelBufferObject;
- if (extensions.match("GL_IMG_texture_format_BGRA8888"))
+ if (extensions.match("GL_IMG_texture_format_BGRA8888")
+ || extensions.match("GL_EXT_texture_format_BGRA8888"))
glExtensions |= BGRATextureFormat;
#if defined(QT_OPENGL_ES_2)
glExtensions |= FramebufferObject;
@@ -5540,6 +5541,9 @@ QGLExtensions::Extensions QGLExtensions::currentContextExtensions()
glGetBooleanv(FRAMEBUFFER_SRGB_CAPABLE_EXT, &srgbCapableFramebuffers);
if (srgbCapableFramebuffers)
glExtensions |= SRGBFrameBuffer;
+ // Clear possible error which is generated if
+ // FRAMEBUFFER_SRGB_CAPABLE_EXT isn't supported.
+ glGetError();
}
return glExtensions;
diff --git a/src/opengl/qwindowsurface_gl.cpp b/src/opengl/qwindowsurface_gl.cpp
index d93efb4..e963f8c 100644
--- a/src/opengl/qwindowsurface_gl.cpp
+++ b/src/opengl/qwindowsurface_gl.cpp
@@ -192,6 +192,14 @@ public:
if (!initializing && !widget && !cleanedUp) {
initializing = true;
widget = new QGLWidget(QGLFormat(QGL::SingleBuffer | QGL::NoDepthBuffer | QGL::NoStencilBuffer));
+#ifdef Q_OS_SYMBIAN
+ if (!widget->context()->isValid()) {
+ delete widget;
+ widget = 0;
+ initializing = false;
+ return 0;
+ }
+#endif
widget->resize(1, 1);
// We don't need this internal widget to appear in QApplication::topLevelWidgets()
@@ -369,7 +377,7 @@ QGLWindowSurface::~QGLWindowSurface()
#ifdef Q_OS_SYMBIAN
// Destroy the context if necessary.
- if (!qt_gl_share_widget()->context()->isSharing())
+ if (qt_gl_share_widget() && !qt_gl_share_context()->isSharing())
qt_destroy_gl_share_widget();
#endif
}
@@ -420,7 +428,12 @@ void QGLWindowSurface::hijackWindow(QWidget *widget)
ctx = new QGLContext(surfaceFormat, widget);
ctx->create(qt_gl_share_context());
-
+#ifdef Q_OS_SYMBIAN
+ if (!ctx->isValid()) {
+ delete ctx;
+ return;
+ }
+#endif
#ifndef QT_NO_EGL
static bool checkedForNOKSwapRegion = false;
static bool haveNOKSwapRegion = false;
@@ -468,6 +481,10 @@ QPaintDevice *QGLWindowSurface::paintDevice()
{
updateGeometry();
+#ifdef Q_OS_SYMBIAN
+ // On symbian we always return glDevice, even if it's invalid
+ return &d_ptr->glDevice;
+#else
if (d_ptr->pb)
return d_ptr->pb;
@@ -479,6 +496,7 @@ QPaintDevice *QGLWindowSurface::paintDevice()
Q_ASSERT(d_ptr->fbo);
return d_ptr->fbo;
+#endif
}
static void drawTexture(const QRectF &rect, GLuint tex_id, const QSize &texSize, const QRectF &src = QRectF());
@@ -693,6 +711,10 @@ void QGLWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoint &
QGLContext *previous_ctx = const_cast<QGLContext *>(QGLContext::currentContext());
QGLContext *ctx = reinterpret_cast<QGLContext *>(parent->d_func()->extraData()->glContext);
+#ifdef Q_OS_SYMBIAN
+ if (!ctx)
+ return;
+#endif
// QPainter::end() should have unbound the fbo, otherwise something is very wrong...
Q_ASSERT(!d_ptr->fbo || !d_ptr->fbo->isBound());
@@ -892,7 +914,10 @@ void QGLWindowSurface::updateGeometry() {
hijackWindow(window());
QGLContext *ctx = reinterpret_cast<QGLContext *>(wd->extraData()->glContext);
-
+#ifdef Q_OS_SYMBIAN
+ if (!ctx)
+ return;
+#endif
#ifdef Q_WS_MAC
ctx->updatePaintDevice();
#endif
diff --git a/src/src.pro b/src/src.pro
index 9314fbd..c51683b 100644
--- a/src/src.pro
+++ b/src/src.pro
@@ -8,7 +8,7 @@ SRC_SUBDIRS += src_corelib src_xml src_network src_sql src_testlib
nacl: SRC_SUBDIRS -= src_network src_testlib
!symbian:contains(QT_CONFIG, dbus):SRC_SUBDIRS += src_dbus
!contains(QT_CONFIG, no-gui): SRC_SUBDIRS += src_gui
-!wince*:!symbian:!vxworks:contains(QT_CONFIG, qt3support): SRC_SUBDIRS += src_qt3support
+!wince*:!symbian:!vxworks:!integrity:contains(QT_CONFIG, qt3support): SRC_SUBDIRS += src_qt3support
!wince*:!symbian-abld:!symbian-sbsv2:include(tools/tools.pro)
win32:!win32-g++*:SRC_SUBDIRS += src_activeqt
diff --git a/src/xml/sax/qxml.cpp b/src/xml/sax/qxml.cpp
index 0c7f2ab..c4c5f0c 100644
--- a/src/xml/sax/qxml.cpp
+++ b/src/xml/sax/qxml.cpp
@@ -1321,7 +1321,8 @@ QXmlInputSource::QXmlInputSource(QIODevice *dev)
{
init();
d->inputDevice = dev;
- d->inputDevice->setTextModeEnabled(false);
+ if (dev->isOpen())
+ d->inputDevice->setTextModeEnabled(false);
}
#ifdef QT3_SUPPORT